@import url('https://fonts.googleapis.com/css2?family=Montserrat&family=Montserrat:ital,wght@0,300..900;1,300..900&display=swap');
/**
 * Regras estruturais discretas. O layout continua sob controle do Elementor.
 */
:where(a, button, input, select, textarea):focus-visible {
	outline: 2px solid var(--aboi-color-iris-blue);
	outline-offset: 2px;
}

::selection {
	background: var(--aboi-color-primary);
	color: var(--aboi-color-white);
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	border-color: var(--aboi-color-primary);
	border-radius: var(--aboi-radius-md);
}

.woocommerce-error {
	border-color: var(--aboi-color-magenta);
}

/* Catálogos ABOI criados no Elementor. */
.aboi-catalog-hero {
	background: var(--aboi-color-primary-mist);
	border-bottom: 1px solid var(--aboi-color-border);
}

.aboi-catalog-hero .elementor-widget-text-editor {
	max-width: 900px;
}

.aboi-products-section {
	background: var(--aboi-color-white);
}

.aboi-products-section > .e-con-inner,
.aboi-features-section > .e-con-inner {
	gap: var(--aboi-space-6);
}

.aboi-features-section {
	border-top: 1px solid var(--aboi-color-border);
	border-bottom: 1px solid var(--aboi-color-border);
}

.aboi-feature-grid > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--aboi-space-4) !important;
}

.aboi-feature-card.elementor-widget-icon-box {
	min-width: 0;
	margin: 0;
	padding: var(--aboi-space-6);
	background: var(--aboi-color-paper);
	border: 1px solid var(--aboi-color-border);
	border-top: 3px solid var(--aboi-color-iris-blue);
	border-radius: var(--aboi-radius-md);
}

.aboi-feature-card .elementor-icon {
	font-size: 22px;
}

.aboi-feature-card .elementor-icon-box-icon {
	margin-bottom: var(--aboi-space-3) !important;
}

.aboi-feature-card .elementor-icon-box-title {
	margin: 0 !important;
	font-size: 16px;
	line-height: 1.35;
}

.aboi-product-card {
	height: 100%;
	overflow: hidden;
	background: var(--aboi-color-white);
	border: 1px solid var(--aboi-color-border);
	border-radius: var(--aboi-radius-md);
	box-shadow: var(--aboi-shadow-overlay);
	transition: transform 180ms ease, box-shadow 180ms ease;
}

.aboi-product-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 24px rgb(28 68 99 / 14%);
}

.aboi-product-card__image {
	display: flex;
	min-height: 220px;
	align-items: center;
	justify-content: center;
	padding: var(--aboi-space-6);
	background: var(--aboi-color-primary-mist);
}

.aboi-product-card__image img {
	width: 100% !important;
	height: 172px !important;
	object-fit: contain !important;
}

.aboi-product-card .elementor-button {
	min-height: 44px;
	justify-content: center;
	transition: background-color 180ms ease, transform 180ms ease;
}

.aboi-product-card .elementor-button:hover {
	background: var(--aboi-color-primary-deep) !important;
}

.aboi-products-section .elementor-loop-container {
	align-items: stretch;
}

.aboi-catalog-filters {
	margin: 0 0 var(--aboi-space-8);
	padding: var(--aboi-space-6);
	background: var(--aboi-color-paper);
	border: 1px solid var(--aboi-color-border);
	border-radius: var(--aboi-radius-md);
}

.aboi-filter-heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--aboi-space-4);
	margin-bottom: var(--aboi-space-4);
}

.aboi-filter-heading strong,
.aboi-filter-heading span {
	display: block;
}

.aboi-filter-heading strong {
	color: var(--aboi-color-primary);
	font-size: 18px;
}

.aboi-filter-heading span {
	margin-top: var(--aboi-space-1);
	color: var(--aboi-color-graphite);
	font-size: 14px;
}

.aboi-filter-heading a {
	color: var(--aboi-color-iris-blue);
	font-size: 14px;
	font-weight: 600;
}

.aboi-filter-controls {
	display: grid;
	grid-template-columns: minmax(200px, 1.5fr) repeat(4, minmax(140px, 1fr)) auto;
	align-items: end;
	gap: var(--aboi-space-3);
}

.aboi-filter-field span {
	display: block;
	margin-bottom: 6px;
	color: var(--aboi-color-primary);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.aboi-filter-field :is(input, select) {
	width: 100%;
	min-height: 44px;
	padding: 9px 12px;
	color: var(--aboi-color-ink);
	background: var(--aboi-color-white);
	border: 1px solid var(--aboi-color-border);
	border-radius: var(--aboi-radius-md);
}

.aboi-filter-controls button {
	min-height: 44px;
	padding: 10px 18px;
	color: var(--aboi-color-white);
	background: var(--aboi-color-primary);
	border: 1px solid var(--aboi-color-primary);
	border-radius: var(--aboi-radius-md);
	font-weight: 600;
}

.aboi-filter-controls button:hover {
	background: var(--aboi-color-primary-deep);
}

/* Home refinada. Blocos demonstrativos permanecem no Elementor, mas ocultos. */
.aboi-home-section-pending,
.aboi-home-data-pending {
	display: none !important;
}

.aboi-home-categories,
.aboi-home-courses,
.aboi-home-about,
.aboi-home-faq,
.aboi-home-blog {
	overflow: hidden;
}

.aboi-home-categories,
.aboi-home-about,
.aboi-home-blog {
	background: var(--aboi-color-paper);
}

.aboi-home-cta {
	background-color: var(--aboi-color-primary);
}

/* Single Product ABOI. */
.aboi-single-breadcrumb {
	border-bottom: 1px solid var(--aboi-color-border);
}

.aboi-single-hero {
	background: var(--aboi-color-paper);
	border-bottom: 1px solid var(--aboi-color-border);
}

.aboi-single-image {
	overflow: hidden;
	padding: var(--aboi-space-8);
	background: var(--aboi-color-primary-mist);
	border: 1px solid var(--aboi-color-border);
	border-radius: var(--aboi-radius-md);
}

.aboi-single-image :is(.woocommerce-product-gallery, .woocommerce-product-gallery__wrapper) {
	margin: 0 !important;
}

.aboi-single-image img {
	max-height: 430px;
	object-fit: contain;
}

.aboi-product-category-badge {
	display: inline-flex;
	padding: 6px 10px;
	color: var(--aboi-color-primary);
	background: var(--aboi-color-primary-mist);
	border-left: 3px solid var(--aboi-color-iris-blue);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aboi-single-summary .woocommerce-product-details__short-description {
	color: var(--aboi-color-graphite);
	font-size: 18px;
	line-height: 1.65;
}

.aboi-single-content-grid {
	align-items: flex-start;
}

.aboi-single-main-copy > .e-con-inner,
.aboi-single-main-copy {
	gap: var(--aboi-space-8);
}

.aboi-single-main-copy .woocommerce-product-details__short-description,
.aboi-single-main-copy .woocommerce-product-content {
	color: var(--aboi-color-graphite);
	font-size: 16px;
	line-height: 1.7;
}

.aboi-product-detail-sections section {
	padding: var(--aboi-space-8) 0;
	border-top: 1px solid var(--aboi-color-border);
}

.aboi-product-detail-sections h2 {
	margin: 0 0 var(--aboi-space-3);
	font-size: 26px;
	line-height: 1.25;
}

.aboi-product-detail-sections p {
	margin: 0;
	color: var(--aboi-color-graphite);
	line-height: 1.7;
}

.aboi-information-pending {
	font-style: italic;
}

.aboi-single-purchase-card {
	position: sticky;
	top: 32px;
	padding: var(--aboi-space-8);
	background: var(--aboi-color-primary);
	border-radius: var(--aboi-radius-md);
	box-shadow: var(--aboi-shadow-overlay);
}

.aboi-single-purchase-card :is(h2, h3, p, .price, label) {
	color: var(--aboi-color-white);
}

.aboi-product-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	margin: 0;
}

.aboi-product-facts div {
	padding: var(--aboi-space-4) 0;
	border-bottom: 1px solid rgb(255 255 255 / 18%);
}

.aboi-product-facts div:nth-child(odd) {
	padding-right: var(--aboi-space-4);
}

.aboi-product-facts dt {
	margin-bottom: 4px;
	color: rgb(255 255 255 / 70%);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aboi-product-facts dd {
	margin: 0;
	color: var(--aboi-color-white);
	font-size: 15px;
	font-weight: 600;
}

.aboi-single-purchase-card .elementor-widget-woocommerce-product-price {
	margin-top: var(--aboi-space-6);
}

.aboi-single-purchase-card .cart :is(button, .button),
.aboi-single-purchase-card .elementor-button {
	width: 100%;
	min-height: 48px;
	justify-content: center;
	color: var(--aboi-color-primary);
	background: var(--aboi-color-white) !important;
	border-radius: var(--aboi-radius-md) !important;
	font-weight: 700;
}

.aboi-enrollment-pending {
	margin-top: var(--aboi-space-6);
	padding: var(--aboi-space-4);
	background: rgb(255 255 255 / 10%);
	border-left: 3px solid var(--aboi-color-lime);
}

.aboi-enrollment-pending strong,
.aboi-enrollment-pending span {
	display: block;
	color: var(--aboi-color-white);
}

.aboi-enrollment-pending span {
	margin-top: 4px;
	font-size: 13px;
	line-height: 1.5;
	opacity: 0.82;
}

@media (max-width: 900px) {
	.aboi-single-content-grid {
		flex-direction: column !important;
	}

	.aboi-single-main-copy,
	.aboi-single-aside {
		width: 100% !important;
	}

	.aboi-single-purchase-card {
		position: static;
	}
}

@media (max-width: 767px) {
	.aboi-catalog-hero,
	.aboi-products-section,
	.aboi-features-section {
		padding-right: 20px !important;
		padding-left: 20px !important;
	}

	.aboi-product-facts {
		grid-template-columns: 1fr;
	}

	.aboi-product-facts div:nth-child(odd) {
		padding-right: 0;
	}
}

@media (max-width: 1024px) {
	.aboi-feature-grid > .e-con-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aboi-filter-controls {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.aboi-feature-grid > .e-con-inner {
		grid-template-columns: 1fr;
	}

	.aboi-feature-card.elementor-widget-icon-box {
		padding: var(--aboi-space-4);
	}

	.aboi-filter-heading {
		flex-direction: column;
	}

	.aboi-filter-controls {
		grid-template-columns: 1fr;
	}
}

/* Home ABOI nativa no Elementor — referência visual da aplicação IA. */

body.elementor-page-106{margin:0;background:#fff;color:#334155;font-family:'Montserrat',sans-serif;}
body.elementor-page-106 .elementor-widget-text-editor,body.elementor-page-106 .elementor-widget-button,body.elementor-page-106 .elementor-icon-list-text{font-family:'Montserrat',sans-serif}
body.elementor-page-106 .e-con{--padding-top:0;--padding-right:0;--padding-bottom:0;--padding-left:0;--gap:0px}
body.elementor-page-106 .e-con>.e-con-inner{padding:0;gap:0;max-width:none}
.aboi-native-wrap>.e-con-inner{width:min(1180px,calc(100% - 48px))!important;max-width:1180px!important;margin:auto!important}
.aboi-native-header{position:fixed;top:0;left:0;right:0;z-index:50;background:#1e3a5f;box-shadow:0 5px 15px rgba(15,23,42,.18);min-height:64px}
.logged-in.admin-bar .aboi-native-header{top:32px}
.aboi-native-header>.e-con-inner{width:100%!important;max-width:none!important}
.aboi-native-header-inner>.e-con-inner{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;min-height:64px}
.aboi-native-header-logo{width:100px!important;flex:0 0 100px}.aboi-native-header-logo img{width:100px!important;height:56px!important;object-fit:contain;background:#fff;border-radius:14px;padding:6px}
.aboi-native-menu{flex:1}.aboi-native-menu .elementor-nav-menu{display:flex;justify-content:center;gap:27px}.aboi-native-menu .elementor-item{color:#fff;font-size:14px;font-weight:400;padding:0!important;font-family:'Montserrat',sans-serif;}.aboi-native-menu .elementor-item:hover,.aboi-native-menu .elementor-item.elementor-item-active{color:#22a6c7;}
.aboi-native-header-actions>.e-con-inner,.aboi-native-actions>.e-con-inner{display:flex!important;flex-direction:row!important;align-items:center!important;gap:14px!important}.aboi-native-header-actions{width:auto!important}
.aboi-native-header-actions .elementor-widget,.aboi-native-actions .elementor-widget{width:auto!important;max-width:max-content!important}
.aboi-native-login .elementor-button{background:transparent!important;color:#fff;border:0!important;padding:8px 16px!important;font-size:14px;box-shadow:none!important}
.aboi-native-register .elementor-button{background:#0891b2!important;color:#fff;border:0!important;border-radius:10px!important;padding:10px 20px!important;font-size:14px;box-shadow:none!important}
.aboi-native-hero{background:#f8fafc;padding:128px 0 96px!important;margin:0!important}
.aboi-native-hero>.e-con-inner{width:100%!important;max-width:none!important}
.aboi-native-hero-inner>.e-con-inner{display:grid!important;grid-template-columns:1fr 1fr!important;gap:64px!important;align-items:center!important}
.aboi-native-hero-media>.e-con-inner{background:#fff;border-radius:16px;box-shadow:0 12px 26px rgba(15,23,42,.12);height:370px;display:flex!important;align-items:center!important;justify-content:center!important;padding:60px!important}
.aboi-native-hero-logo img{max-width:290px!important;width:100%!important;height:auto!important}
.aboi-native-hero-copy>.e-con-inner{display:flex!important;flex-direction:column!important;gap:20px!important}
.aboi-native-display .elementor-heading-title{font-family:'Montserrat', sans-serif;font-size:60px;line-height:1;letter-spacing:-.025em;}
.aboi-native-body{font-size:16px;line-height:1.65;color:#475569;}.aboi-native-body p{margin:0 0 16px}.aboi-native-body p:last-child{margin-bottom:0}
.aboi-native-btn .elementor-button,.aboi-native-actions .aboi-native-btn .elementor-button{background:#1e3a5f!important;color:#fff;border:0!important;border-radius:10px!important;padding:13px 28px!important;font-size:14px;font-weight:600;box-shadow:none!important}
.aboi-native-btn-secondary .elementor-button{background:#fff!important;color:#0f172a;border:1px solid #e2e8f0!important;border-radius:10px!important;padding:12px 28px!important;font-size:14px;font-weight:600;box-shadow:none!important}
.aboi-native-section{padding:88px 0!important;background:#fff}.aboi-native-section.aboi-native-alt{background:#f8fafc}
.aboi-native-section>.e-con-inner,.aboi-native-cta>.e-con-inner,.aboi-native-footer>.e-con-inner{width:100%!important;max-width:none!important}
.aboi-native-intro>.e-con-inner{display:grid!important;grid-template-columns:1fr 1fr!important;gap:70px!important;align-items:start!important}
.aboi-native-intro-copy>.e-con-inner{display:flex!important;flex-direction:column!important;gap:20px!important}
.aboi-native-section-title .elementor-heading-title{font-family:'Montserrat', sans-serif;font-size:42px;line-height:1.15;letter-spacing:-.02em;}
.aboi-native-center .elementor-heading-title,.aboi-native-center{text-align:center!important}
.aboi-native-lead{max-width:760px!important;margin:14px auto 0!important;text-align:center!important;color:#64748b;font-size:16px;line-height:1.7;}
.aboi-native-feature-grid>.e-con-inner{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}
.aboi-native-feature>.e-con-inner{display:flex!important;flex-direction:column!important;gap:8px!important;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px!important;box-shadow:0 6px 18px rgba(15,23,42,.05)}
.aboi-native-card-title .elementor-heading-title{font-size:17px;line-height:1.35;}.aboi-native-card-copy{font-size:14px;line-height:1.6;color:#64748b;}
.aboi-native-journey-grid>.e-con-inner{display:grid!important;grid-template-columns:1fr 1fr!important;gap:24px!important;margin-top:42px!important}
.aboi-native-journey-card>.e-con-inner{display:flex!important;flex-direction:column!important;gap:16px!important;background:#fff;border:1px solid #dbe3ec;border-radius:18px;padding:34px!important;box-shadow:0 10px 26px rgba(15,23,42,.06)}
.aboi-native-journey-card.is-recommended>.e-con-inner{border:2px solid #0891b2}.aboi-native-badge{width:max-content!important;background:#0891b2;color:#fff;border-radius:999px;padding:7px 13px!important;font-size:11px;font-weight:700;letter-spacing:.08em;}
.aboi-native-journey-title .elementor-heading-title{font-size:21px;line-height:1.3;}.aboi-native-list .elementor-icon-list-item{padding:5px 0!important}.aboi-native-list .elementor-icon-list-icon{color:#0891b2;}.aboi-native-list .elementor-icon-list-text{color:#475569;font-size:14px;}
.aboi-native-products{margin-top:38px!important}.aboi-native-products ul.products{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:20px!important;margin:0!important}.aboi-native-products ul.products:before,.aboi-native-products ul.products:after{display:none!important}
.aboi-native-products li.product{width:auto!important;margin:0!important;background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 8px 20px rgba(15,23,42,.06);padding-bottom:20px!important}.aboi-native-products li.product img{width:100%!important;height:210px!important;object-fit:cover;margin:0 0 18px!important}.aboi-native-products li.product .woocommerce-loop-product__title{font-family:'Montserrat',sans-serif;font-size:18px;line-height:1.35;padding:0 20px!important}.aboi-native-products li.product .price{display:block;color:#0891b2;font-weight:700;padding:0 20px!important}.aboi-native-products li.product .button{margin:12px 20px 0!important;background:#1e3a5f!important;color:#fff;border-radius:9px!important;padding:11px 16px!important;font-size:13px;}
.aboi-native-media-grid>.e-con-inner{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:22px!important;margin-top:38px!important}.aboi-native-media-card>.e-con-inner{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 6px 16px rgba(15,23,42,.04)}
.aboi-native-card-image img{width:100%!important;height:210px!important;object-fit:cover!important}.aboi-native-card-body>.e-con-inner{display:flex!important;flex-direction:column!important;gap:8px!important;padding:20px!important}.aboi-native-label{color:#0891b2;font-size:11px;font-weight:700;letter-spacing:.08em;}.aboi-native-media-title .elementor-heading-title{font-family:'Montserrat',sans-serif;font-size:18px;line-height:1.35;color:#0f172a;}
.aboi-native-center-actions>.e-con-inner{justify-content:center!important;margin-top:30px!important}
.aboi-native-posts{margin-top:38px!important}.aboi-native-posts .elementor-posts-container{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:22px!important}.aboi-native-posts article{border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;background:#fff}.aboi-native-posts .elementor-post__title{font-family:'Montserrat',sans-serif;font-size:18px;line-height:1.35;padding:0 20px 20px!important}
.aboi-native-faq-wrap>.e-con-inner{max-width:900px!important}.aboi-native-faq{margin-top:34px!important}.aboi-native-faq .elementor-accordion-item{border:0!important;border-bottom:1px solid #e2e8f0!important}.aboi-native-faq .elementor-tab-title{padding:21px 4px!important;font-family:'Montserrat',sans-serif;}.aboi-native-faq .elementor-tab-content{padding:0 4px 20px!important;color:#64748b;line-height:1.7;}
.aboi-native-cta{background:#1e3a5f;padding:72px 0!important}.aboi-native-cta .elementor-heading-title{color:#fff;}.aboi-native-cta .aboi-native-lead{color:#cbd5e1;}.aboi-native-btn-secondary-light .elementor-button{background:#fff!important;color:#0f172a;border:1px solid #fff!important;border-radius:10px!important;padding:12px 28px!important;font-size:14px;font-weight:600;}
.aboi-native-footer{background:#0f172a;color:#cbd5e1;padding:62px 0 24px!important}.aboi-native-footer-grid>.e-con-inner{display:grid!important;grid-template-columns:1.5fr 1fr 1fr 1fr!important;gap:42px!important}.aboi-native-footer-title .elementor-heading-title{font-family:'Montserrat',sans-serif;color:#fff;font-size:17px;}.aboi-native-footer-text,.aboi-native-footer-text a{color:#cbd5e1;font-size:14px;line-height:1.8;text-decoration:none!important}.aboi-native-footer-text p{margin:0 0 8px!important}.aboi-native-footer-bottom>.e-con-inner{display:flex!important;flex-direction:row!important;justify-content:space-between!important;gap:20px!important;border-top:1px solid rgba(255,255,255,.1);margin-top:40px!important;padding-top:22px!important}.aboi-native-footer-bottom .elementor-widget-text-editor{color:#94a3b8;font-size:12px;}
@media(max-width:1024px){.aboi-native-menu{display:none}.aboi-native-display .elementor-heading-title{font-size:48px;}.aboi-native-products ul.products{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:767px){.logged-in.admin-bar .aboi-native-header{top:46px}.aboi-native-wrap>.e-con-inner{width:calc(100% - 28px)!important}.aboi-native-header-actions .aboi-native-login{display:none}.aboi-native-hero{padding:104px 0 64px!important}.aboi-native-hero-inner>.e-con-inner,.aboi-native-intro>.e-con-inner{grid-template-columns:1fr!important;gap:34px!important}.aboi-native-hero-media>.e-con-inner{height:280px;padding:40px!important}.aboi-native-display .elementor-heading-title{font-size:40px;}.aboi-native-section{padding:64px 0!important}.aboi-native-section-title .elementor-heading-title{font-size:34px;}.aboi-native-feature-grid>.e-con-inner,.aboi-native-journey-grid>.e-con-inner,.aboi-native-media-grid>.e-con-inner,.aboi-native-posts .elementor-posts-container,.aboi-native-products ul.products,.aboi-native-footer-grid>.e-con-inner{grid-template-columns:1fr!important}.aboi-native-footer-bottom>.e-con-inner{flex-direction:column!important}}

.aboi-native-cart{width:auto!important;max-width:48px!important}.aboi-native-cart .elementor-menu-cart__toggle .elementor-button{background:transparent!important;border:0!important;color:#fff;padding:8px!important;min-width:40px!important;height:40px!important;box-shadow:none!important}.aboi-native-cart .elementor-button-icon{color:#fff;}.aboi-native-cart .elementor-button-icon-qty{background:#0891b2!important;color:#fff;border:0!important;font-family:'Montserrat',sans-serif;}.aboi-native-cart .elementor-button-text{display:none!important}

/* Ajuste de precisão do cabeçalho — referência Hostinger */
.aboi-native-header-inner{width:100%!important;max-width:none!important}
.aboi-native-header-inner>.e-con-inner{display:grid!important;grid-template-columns:100px 716.8px 244.1px!important;align-items:center!important;justify-content:space-between!important;width:100%!important;max-width:1280px!important;min-height:64px!important;margin:0 auto!important;padding:0 32px!important;box-sizing:border-box!important;gap:0!important}
.aboi-native-header-logo{grid-column:1;grid-row:1;width:100px!important;max-width:100px!important}
.aboi-native-menu{grid-column:2;grid-row:1;flex:0 0 auto!important;width:716.8px!important;max-width:716.8px!important}
.aboi-native-menu .elementor-nav-menu{gap:32px!important}
.aboi-native-menu>.elementor-widget-container{display:flex!important;align-items:center!important;height:64px!important}
.aboi-native-menu{align-self:stretch!important;height:64px!important;display:flex!important;align-items:center!important}
.aboi-native-menu .elementor-nav-menu--main{position:absolute!important;top:22px!important;left:0!important;width:716.8px!important;height:20px!important}.aboi-native-menu .elementor-nav-menu{height:20px!important}
.aboi-native-menu .elementor-item{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:500;line-height:20px;}
.aboi-native-cart{grid-column:3;grid-row:1;justify-self:start!important;width:44px!important;max-width:44px!important}
.aboi-native-cart .elementor-menu-cart__toggle .elementor-button{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;padding:8px!important;border-radius:12px!important}
.aboi-native-header-actions{grid-column:3;grid-row:1;justify-self:end!important;width:auto!important;max-width:none!important}
.aboi-native-header-actions>.e-con-inner{gap:16px!important}
.aboi-native-header-actions .elementor-button{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:500;line-height:20px;padding:8px 16px!important;border-radius:10px!important}
.aboi-native-login .elementor-button,.aboi-native-register .elementor-button{height:36px!important;min-height:36px!important}
@media(max-width:1024px){.aboi-native-header-inner>.e-con-inner{display:flex!important;grid-template-columns:none!important;justify-content:flex-start!important;padding:0 24px!important;gap:16px!important}.aboi-native-menu{display:none!important}.aboi-native-cart{margin-left:auto!important}.aboi-native-header-actions{justify-self:auto!important}}
@media(max-width:767px){.aboi-native-header-inner>.e-con-inner{padding:0 16px!important;gap:10px!important}.aboi-native-header-actions>.e-con-inner{gap:10px!important}}

/* Seção Educação — paridade visual com a referência */
.elementor-page-106 .elementor-element-aaaaa23{background:#fff!important;padding:96px 0!important}
.elementor-page-106 .elementor-element-aaaaa23>.e-con-inner{width:100%!important;max-width:none!important}
.elementor-page-106 .aboi-native-intro{width:100%!important;max-width:none!important}
.elementor-page-106 .aboi-native-intro>.e-con-inner{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;max-width:1280px!important;margin:0 auto!important;padding:0 32px!important;box-sizing:border-box!important;gap:0!important}
.elementor-page-106 .aboi-native-intro-copy{width:768px!important;max-width:100%!important;height:262.25px!important;margin:0 auto 56px!important}
.elementor-page-106 .aboi-native-intro-copy>.e-con-inner{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:0!important}
.elementor-page-106 .aboi-native-intro-copy>.e-con-inner>*{width:100%!important;margin-left:0!important;margin-right:0!important}
.elementor-page-106 .aboi-native-intro .aboi-native-section-title{margin:0 0 20px!important}
.elementor-page-106 .aboi-native-intro .aboi-native-section-title .elementor-heading-title{font-family:'Montserrat', sans-serif;font-size:36px;line-height:40px;text-align:center!important;margin:0!important}
.elementor-page-106 .aboi-native-intro-copy .elementor-widget-text-editor{font-family:'Montserrat',sans-serif;font-size:18px;font-weight:400;line-height:29.25px;color:#475569;text-align:center!important;margin:0!important}
.elementor-page-106 .aboi-native-intro-copy .elementor-widget-text-editor:nth-child(2){margin-bottom:16px!important}
.elementor-page-106 .aboi-native-intro-copy .elementor-widget-text-editor p{margin:0!important}
.elementor-page-106 .aboi-native-intro-copy .elementor-widget-text-editor p+p{margin-top:16px!important}
.elementor-page-106 .aboi-native-feature-grid{width:100%!important;max-width:none!important;margin:0!important}
.elementor-page-106 .aboi-native-feature-grid>.e-con-inner{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:32px!important;width:100%!important;margin:0!important}
.elementor-page-106 .aboi-native-feature{width:100%!important;height:298px!important;min-height:298px!important;margin:0!important}
.elementor-page-106 .aboi-native-feature>.e-con-inner{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;height:298px!important;min-height:298px!important;gap:0!important;padding:32px!important;box-sizing:border-box!important;background:#f8fafc!important;border:1px solid #f1f5f9!important;border-radius:16px!important;box-shadow:none!important;text-align:center!important;transition:transform .3s ease,box-shadow .3s ease!important}
.elementor-page-106 .aboi-native-feature:hover>.e-con-inner{transform:translateY(-4px);box-shadow:0 10px 24px rgba(15,23,42,.10)!important}
.elementor-page-106 .aboi-native-feature-icon{flex:0 0 64px!important;width:64px!important;height:64px!important;max-width:64px!important;margin:0 0 24px!important}
.elementor-page-106 .aboi-native-feature-icon .elementor-icon-wrapper{width:64px!important;height:64px!important;line-height:0;}
.elementor-page-106 .aboi-native-feature-icon .elementor-icon{display:flex!important;align-items:center!important;justify-content:center!important;width:64px!important;height:64px!important;padding:0!important;background:#e2e8f0!important;border:0!important;border-radius:9999px!important;color:#334155;font-size:30px;}
.elementor-page-106 .aboi-native-feature-icon .elementor-icon i{font-size:30px;color:#334155;}
.elementor-page-106 .aboi-native-feature .aboi-native-card-title{width:100%!important;margin:0 0 12px!important}
.elementor-page-106 .aboi-native-feature .aboi-native-card-title .elementor-heading-title{font-family:'Montserrat', sans-serif;font-size:20px;line-height:28px;text-align:center!important;margin:0!important}
.elementor-page-106 .aboi-native-feature .aboi-native-card-copy{width:100%!important;margin:0!important;font-family:'Montserrat',sans-serif;font-size:16px;font-weight:400;line-height:26px;color:#475569;text-align:center!important}
.elementor-page-106 .aboi-native-feature .aboi-native-card-copy p{margin:0!important}
@media(max-width:1024px){.elementor-page-106 .aboi-native-intro>.e-con-inner{padding:0 24px!important}.elementor-page-106 .aboi-native-feature-grid>.e-con-inner{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:767px){.elementor-page-106 .aboi-native-intro-copy{height:auto!important}.elementor-page-106 .elementor-element-aaaaa23{padding:64px 0!important}.elementor-page-106 .aboi-native-intro>.e-con-inner{padding:0 16px!important}.elementor-page-106 .aboi-native-intro .aboi-native-section-title .elementor-heading-title{font-size:30px;line-height:36px;}.elementor-page-106 .aboi-native-intro-copy .elementor-widget-text-editor{font-size:16px;line-height:26px;}.elementor-page-106 .aboi-native-feature-grid>.e-con-inner{grid-template-columns:1fr!important;gap:20px!important}}

/* Grade WooCommerce em destaque — paridade visual com a referência */
.elementor-page-106 .elementor-element-aaaaa44{background:#fff!important;padding:96px 0!important}
.elementor-page-106 .elementor-element-aaaaa44>.e-con-inner{width:100%!important;max-width:none!important}
.elementor-page-106 .elementor-element-aaaaa43{width:100%!important;max-width:none!important}
.elementor-page-106 .elementor-element-aaaaa43>.e-con-inner{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;max-width:1280px!important;margin:0 auto!important;padding:0 32px!important;box-sizing:border-box!important;gap:0!important}
.elementor-page-106 .elementor-element-aaaaa40{width:100%!important;margin:0 0 56px!important}
.elementor-page-106 .elementor-element-aaaaa40 .elementor-heading-title{font-family:'Montserrat', sans-serif;font-size:36px;line-height:40px;text-align:center!important;margin:0!important}
.elementor-page-106 .elementor-element-aaaaa41{display:none!important}
.elementor-page-106 .aboi-native-products{width:100%!important;margin:0!important}
.elementor-page-106 .aboi-native-products>.elementor-widget-container{width:100%!important}
.elementor-page-106 .aboi-product-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:32px!important;width:100%!important;margin:0!important}
.elementor-page-106 .aboi-product-card{display:flex!important;flex-direction:column!important;width:100%!important;height:573.125px!important;min-height:573.125px!important;box-sizing:border-box!important;overflow:hidden!important;background:#fff!important;border:1px solid #f1f5f9!important;border-radius:16px!important;box-shadow:0 4px 6px -1px rgba(15,23,42,.10),0 2px 4px -2px rgba(15,23,42,.08)!important;transition:transform .3s ease,box-shadow .3s ease!important}
.elementor-page-106 .aboi-product-card.is-available:hover{transform:translateY(-4px);box-shadow:0 18px 28px -8px rgba(15,23,42,.18)!important}
.elementor-page-106 .aboi-product-card-media{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;width:100%!important;aspect-ratio:3/2!important;overflow:hidden!important;background:#f1f5f9!important}
.elementor-page-106 .aboi-product-card-image{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .5s ease!important}
.elementor-page-106 .aboi-product-card.is-available:hover .aboi-product-card-image{transform:scale(1.05)}
.elementor-page-106 .aboi-product-card-placeholder{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:500;line-height:20px;color:#cbd5e1;}
.elementor-page-106 .aboi-product-card-body{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:stretch!important;min-height:0!important;padding:24px!important;box-sizing:border-box!important}
.elementor-page-106 .aboi-product-card-badge{display:inline-block!important;align-self:flex-start!important;width:auto!important;margin:0 0 12px!important;padding:4px 12px!important;border-radius:9999px!important;background:rgba(8,145,178,.1)!important;color:#0891b2;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:600;line-height:16px;letter-spacing:.05em;text-transform:uppercase;}
.elementor-page-106 .aboi-product-card-title{margin:0 0 8px!important;font-family:'Montserrat', sans-serif;font-size:18px;line-height:28px;}
.elementor-page-106 .aboi-product-card-description{flex:1 1 auto!important;margin:0 0 16px!important;color:#64748b;font-family:'Montserrat',sans-serif;font-size:14px;font-weight:400;line-height:22.75px;}
.elementor-page-106 .aboi-product-card.is-available .aboi-product-card-description{color:#475569;}
.elementor-page-106 .aboi-product-card-description p{margin:0!important}
.elementor-page-106 .aboi-product-card-soon{display:inline-block!important;align-self:flex-start!important;width:auto!important;margin:0!important;padding:3px 12px!important;border:1px solid #0891b2!important;border-radius:9999px!important;color:#0891b2;background:#fff!important;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:600;line-height:16px;letter-spacing:.05em;text-transform:uppercase;}
.elementor-page-106 .aboi-product-card-actions{display:flex!important;flex-direction:column!important;gap:8px!important;width:100%!important;margin-top:auto!important}
.elementor-page-106 .aboi-product-card-details,.elementor-page-106 .aboi-product-card-cart{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%!important;height:36px!important;min-height:36px!important;margin:0!important;padding:8px 16px!important;box-sizing:border-box!important;border-radius:8px!important;font-family:'Montserrat',sans-serif;font-size:14px;font-weight:600;line-height:20px;text-decoration:none!important;box-shadow:none!important}
.elementor-page-106 .aboi-product-card-details{justify-content:space-between!important;border:1px solid #e2e8f0!important;background:#fff!important;color:#1e3a5f;}
.elementor-page-106 .aboi-product-card-details:hover{background:#f8fafc!important;color:#1e3a5f;}
.elementor-page-106 .aboi-product-card-cart{border:0!important;background:#0891b2!important;color:#fff;}
.elementor-page-106 .aboi-product-card-cart:hover{background:#0e7490!important;color:#fff;}
.elementor-page-106 .aboi-product-card-cart-icon{display:block!important;flex:0 0 16px!important;width:16px!important;height:16px!important}
@media(max-width:1024px){.elementor-page-106 .elementor-element-aaaaa43>.e-con-inner{padding:0 24px!important}.elementor-page-106 .aboi-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.elementor-page-106 .aboi-product-card{height:573.125px!important}}
@media(max-width:767px){.elementor-page-106 .elementor-element-aaaaa44{padding:64px 0!important}.elementor-page-106 .elementor-element-aaaaa43>.e-con-inner{padding:0 16px!important}.elementor-page-106 .elementor-element-aaaaa40{margin-bottom:40px!important}.elementor-page-106 .elementor-element-aaaaa40 .elementor-heading-title{font-size:30px;line-height:36px;}.elementor-page-106 .aboi-product-grid{grid-template-columns:1fr!important;gap:20px!important}.elementor-page-106 .aboi-product-card{height:auto!important;min-height:540px!important}}


/* === ABOI GLOBAL ARCHITECTURE v1.0.22 === */
body,
.elementor-widget-text-editor,
.elementor-widget-icon-list,
.elementor-button {
  font-family: 'Montserrat', sans-serif;
}
h1, h2, h3, h4, h5, h6,
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-woocommerce-product-title .product_title {
  font-family: 'Montserrat', sans-serif;
}
.elementor-location-header + .site-main {
  padding-top: 64px;
}
body.home .elementor-location-header + .site-main {
  padding-top: 0;
}

/* Header global responsivo. */
.aboi-native-header {
  background: #1f416a !important;
}
@media (max-width: 1024px) {
  .aboi-native-menu {
    display: block !important;
    flex: 0 0 auto !important;
    width: auto !important;
    margin-left: auto;
  }
  .aboi-native-menu .elementor-nav-menu--main {
    display: none !important;
  }
  .aboi-native-menu .elementor-menu-toggle {
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 8px !important;
    color: #fff;
    background: transparent !important;
    border: 0 !important;
  }
  .aboi-native-header-inner > .e-con-inner {
    gap: 12px !important;
  }
  .aboi-native-header-logo {
    width: 88px !important;
    flex-basis: 88px !important;
  }
  .aboi-native-header-logo img {
    width: 88px !important;
  }
  .aboi-native-register .elementor-button {
    padding: 9px 14px !important;
  }
}
@media (max-width: 767px) {
  .aboi-native-cart {
    display: none !important;
  }
  .aboi-native-register {
    display: none !important;
  }
}

/* E-books: Loop Grid nativo do Elementor Pro + produtos WooCommerce. */
.aboi-reusable-ebooks .aboi-native-section {
  padding: 84px 0 72px !important;
  background: #f7f9fc !important;
}
.aboi-reusable-ebooks .aboi-native-section-title {
  width: min(620px, 100%) !important;
  max-width: 620px !important;
  margin: 0 auto 14px !important;
  text-align: center !important;
}
.aboi-reusable-ebooks .aboi-native-section-title .elementor-heading-title {
  font-size: 38px;
  line-height: 1.08;
}
.aboi-reusable-ebooks .aboi-native-lead {
  width: min(760px, 100%) !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  color: #53627a;
  font-size: 17px;
  line-height: 1.65;
  text-align: center !important;
}
.aboi-native-ebook-loop {
  width: 100% !important;
  margin-top: 48px !important;
}
.aboi-native-ebook-loop .elementor-loop-container {
  align-items: stretch;
}
.aboi-native-ebook-loop .e-loop-item {
  min-width: 0;
}
.aboi-ebook-card {
  height: 100% !important;
  overflow: hidden !important;
  border: 1px solid #e7edf4 !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .10) !important;
}
.aboi-ebook-card > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  padding: 0 !important;
}
.aboi-ebook-card__image,
.aboi-ebook-card__image a {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}
.aboi-ebook-card__image img {
  display: block !important;
  width: 100% !important;
  height: 254px !important;
  object-fit: cover !important;
}
.aboi-ebook-card__body {
  width: 100% !important;
  flex: 1 1 auto !important;
}
.aboi-ebook-card__body > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 78px !important;
  padding: 18px 24px !important;
}
.aboi-ebook-card__icon {
  width: 22px !important;
  flex: 0 0 22px !important;
  margin: 0 !important;
}
.aboi-ebook-card__icon .elementor-icon {
  color: #0099c2;
  font-size: 19px;
}
.aboi-ebook-card__title {
  width: auto !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
}
.aboi-ebook-card__title .product_title {
  margin: 0 !important;
  font-size: 20px;
  line-height: 1.28;
}
.aboi-ebook-card__title a {
  color: inherit;
  text-decoration: none !important;
}
.aboi-reusable-ebooks .aboi-native-center-actions {
  margin-top: 40px !important;
}

/* FAQ reutilizável. */
.aboi-reusable-faq .aboi-native-section,
.aboi-page-faq-template .aboi-native-section {
  padding: 80px 0 !important;
  background: #f7f9fc !important;
}
.aboi-reusable-faq .aboi-native-faq-wrap > .e-con-inner,
.aboi-page-faq-template .aboi-native-faq-wrap > .e-con-inner {
  width: min(830px, calc(100% - 48px)) !important;
  max-width: 830px !important;
}
.aboi-reusable-faq .aboi-native-section-title,
.aboi-page-faq-template .aboi-native-section-title {
  margin: 0 0 36px !important;
  text-align: left !important;
}
.aboi-reusable-faq .aboi-native-section-title .elementor-heading-title,
.aboi-page-faq-template .aboi-native-section-title .elementor-heading-title {
  font-size: 36px;
  line-height: 1.18;
}
.aboi-native-faq {
  margin: 0 !important;
}
.aboi-native-faq .elementor-accordion-item {
  overflow: hidden !important;
  margin: 0 0 16px !important;
  border: 1px solid #e7edf4 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 2px 4px rgba(15, 23, 42, .05) !important;
}
.aboi-native-faq .elementor-tab-title {
  padding: 22px 24px !important;
  border: 0 !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 18px;
  line-height: 1.35;
}
.aboi-native-faq .elementor-tab-title .elementor-accordion-icon {
  color: #68778d;
}
.aboi-native-faq .elementor-tab-content {
  padding: 0 24px 22px !important;
  border: 0 !important;
  color: #53627a;
  font-size: 15px;
  line-height: 1.7;
}

/* Footer global. */
.aboi-native-footer {
  padding: 78px 0 26px !important;
  background: #1f416a !important;
  color: #d7e1ee;
}
.aboi-native-footer-grid > .e-con-inner {
  gap: 52px !important;
}
.aboi-native-footer-title .elementor-heading-title {
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-size: 18px;
  line-height: 1.3;
}
.aboi-native-footer-text,
.aboi-native-footer-text a,
.aboi-native-footer-contact .elementor-icon-list-text {
  color: #d7e1ee;
  font-size: 14px;
  line-height: 1.65;
}
.aboi-native-footer-contact .elementor-icon-list-items {
  gap: 12px !important;
}
.aboi-native-footer-contact .elementor-icon-list-icon i {
  color: #00a4cc;
}
.aboi-native-footer-social .elementor-social-icon {
  width: 34px !important;
  height: 34px !important;
  margin-right: 6px !important;
  color: #fff;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,.28) !important;
}
.aboi-native-footer-social .elementor-social-icon:hover {
  color: #1f416a;
  background: #fff !important;
}
.aboi-native-footer-bottom > .e-con-inner {
  border-top-color: rgba(255,255,255,.18) !important;
}
.aboi-native-footer-bottom .elementor-widget-text-editor,
.aboi-native-footer-bottom a {
  color: #b9c9dc;
}

@media (max-width: 1024px) {
  .aboi-native-ebook-loop .elementor-loop-container {
    gap: 24px !important;
  }
  .aboi-native-footer-grid > .e-con-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767px) {
  .elementor-location-header + .site-main {
    padding-top: 64px;
  }
  body.home .elementor-location-header + .site-main {
    padding-top: 0;
  }
  .aboi-reusable-ebooks .aboi-native-section,
  .aboi-reusable-faq .aboi-native-section,
  .aboi-page-faq-template .aboi-native-section {
    padding: 60px 0 !important;
  }
  .aboi-reusable-ebooks .aboi-native-section-title .elementor-heading-title,
  .aboi-reusable-faq .aboi-native-section-title .elementor-heading-title,
  .aboi-page-faq-template .aboi-native-section-title .elementor-heading-title {
    font-size: 30px;
  }
  .aboi-native-ebook-loop {
    margin-top: 34px !important;
  }
  .aboi-ebook-card__image img {
    height: 220px !important;
  }
  .aboi-reusable-faq .aboi-native-faq-wrap > .e-con-inner,
  .aboi-page-faq-template .aboi-native-faq-wrap > .e-con-inner {
    width: calc(100% - 28px) !important;
  }
  .aboi-native-faq .elementor-tab-title {
    padding: 18px !important;
    font-size: 17px;
  }
  .aboi-native-faq .elementor-tab-content {
    padding: 0 18px 18px !important;
  }
  .aboi-native-footer-grid > .e-con-inner {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }
  .aboi-native-footer-bottom > .e-con-inner {
    flex-direction: column !important;
  }
}


/* === ABOI INTERNAL PAGES v1.0.24 === */
.aboi-inner-hero {
  padding: 92px 0 72px !important;
  background: #f7f9fc !important;
}
.aboi-inner-section {
  padding: 78px 0 !important;
  background: #fff !important;
}
.aboi-inner-hero-center > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
.aboi-inner-title {
  width: 100% !important;
  margin: 0 0 18px !important;
}
.aboi-inner-title .elementor-heading-title {
  font-size: 50px;
  line-height: 1.08;
}
.aboi-inner-subtitle {
  margin: 0 0 18px !important;
}
.aboi-inner-subtitle .elementor-heading-title {
  font-size: 30px;
  line-height: 1.2;
}
.aboi-inner-lead {
  width: min(760px, 100%) !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  color: #53627a;
  font-size: 18px;
  line-height: 1.65;
  text-align: center !important;
}
.aboi-inner-copy,
.aboi-inner-copy p {
  color: #53627a;
  font-size: 16px;
  line-height: 1.75;
}
.aboi-inner-copy p {
  margin: 0 0 16px !important;
}
.aboi-inner-section-title {
  margin: 0 0 38px !important;
  text-align: center !important;
}
.aboi-inner-section-title .elementor-heading-title {
  font-size: 38px;
  line-height: 1.15;
}

/* Sobre a ABOI. */
.aboi-about-hero-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important;
  align-items: center !important;
  gap: 64px !important;
}
.aboi-about-logo-panel {
  min-height: 390px !important;
  border: 1px solid #e7edf4 !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 14px 34px rgba(15,23,42,.09) !important;
}
.aboi-about-logo-panel > .e-con-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 390px !important;
  padding: 52px !important;
}
.aboi-about-logo,
.aboi-about-logo img {
  width: min(300px, 100%) !important;
}
.aboi-about-values {
  background: #fff !important;
}
.aboi-about-values-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 24px !important;
}
.aboi-about-card {
  height: 100% !important;
  border: 1px solid #e7edf4 !important;
  border-radius: 16px !important;
  background: #f7f9fc !important;
}
.aboi-about-card > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  height: 100% !important;
  padding: 30px !important;
}
.aboi-about-card-title {
  margin: 0 !important;
}
.aboi-about-card-title .elementor-heading-title {
  font-size: 24px;
}
.aboi-about-card-text,
.aboi-about-card-text p {
  margin: 0 !important;
  color: #53627a;
  font-size: 15px;
  line-height: 1.7;
}
.aboi-about-values-list .elementor-icon-list-items {
  display: grid !important;
  gap: 10px !important;
}
.aboi-about-values-list .elementor-icon-list-icon i {
  color: #0099c2;
}
.aboi-about-values-list .elementor-icon-list-text {
  color: #53627a;
  font-size: 14px;
}
.aboi-leadership {
  background: #f7f9fc !important;
}
.aboi-leadership-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr) !important;
  align-items: stretch !important;
  gap: 34px !important;
}
.aboi-leadership-photo,
.aboi-leadership-copy {
  min-height: 290px !important;
  border: 1px solid #e7edf4 !important;
  border-radius: 16px !important;
  background: #fff !important;
}
.aboi-leadership-photo > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 34px !important;
  text-align: center !important;
}
.aboi-leadership-copy > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 16px !important;
  padding: 42px !important;
}
.aboi-leadership-placeholder-title .elementor-heading-title {
  color: #53627a;
  font-size: 22px;
}
.aboi-leadership-placeholder-text {
  color: #8290a3;
}

/* Contato. */
.aboi-contact-section {
  background: #fff !important;
}
.aboi-contact-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr) !important;
  align-items: stretch !important;
  gap: 30px !important;
}
.aboi-contact-card {
  height: 100% !important;
  border: 1px solid #e7edf4 !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(15,23,42,.08) !important;
}
.aboi-contact-card > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  height: 100% !important;
  padding: 34px !important;
}
.aboi-contact-info {
  background: #1f416a !important;
}
.aboi-contact-info .aboi-contact-card-title .elementor-heading-title,
.aboi-contact-info .aboi-contact-hours-title .elementor-heading-title {
  color: #fff;
}
.aboi-contact-card-title .elementor-heading-title {
  font-size: 28px;
}
.aboi-contact-card-lead,
.aboi-contact-card-lead p {
  margin: 0 !important;
  color: #708096;
  font-size: 15px;
  line-height: 1.6;
}
.aboi-contact-info .aboi-contact-card-lead,
.aboi-contact-info .aboi-contact-card-lead p,
.aboi-contact-hours,
.aboi-contact-hours p {
  color: #d7e1ee;
}
.aboi-contact-list {
  margin: 18px 0 20px !important;
}
.aboi-contact-list .elementor-icon-list-items {
  display: grid !important;
  gap: 17px !important;
}
.aboi-contact-list .elementor-icon-list-icon i {
  color: #00a4cc;
  font-size: 18px;
}
.aboi-contact-list .elementor-icon-list-text {
  color: #fff;
  font-size: 15px;
}
.aboi-contact-hours-title {
  margin-top: 8px !important;
}
.aboi-contact-hours-title .elementor-heading-title {
  font-size: 21px;
}
.aboi-contact-form .elementor-form-fields-wrapper {
  row-gap: 14px !important;
}
.aboi-contact-form .elementor-field-label {
  margin-bottom: 7px !important;
  color: #34435a;
  font-size: 13px;
  font-weight: 600;
}
.aboi-contact-form .elementor-field {
  min-height: 48px !important;
  padding: 12px 14px !important;
  border: 1px solid #dfe6ef !important;
  border-radius: 9px !important;
  background: #f9fbfd !important;
  color: #1f2937;
  font-family: 'Montserrat', sans-serif;
}
.aboi-contact-form textarea.elementor-field {
  min-height: 124px !important;
}
.aboi-contact-form .elementor-button {
  min-height: 48px !important;
  padding: 13px 24px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: #0099c2 !important;
  color: #fff;
  box-shadow: none !important;
}

/* Notícias dinâmicas. */
.aboi-news-section {
  background: #f7f9fc !important;
}
.aboi-news-grid .elementor-posts-container {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;
}
.aboi-news-grid .elementor-post {
  overflow: hidden !important;
  margin: 0 !important;
  border: 1px solid #e7edf4 !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.07) !important;
}
.aboi-news-grid .elementor-post__thumbnail__link {
  margin: 0 !important;
}
.aboi-news-grid .elementor-post__thumbnail {
  padding-bottom: 54% !important;
}
.aboi-news-grid .elementor-post__thumbnail img {
  object-fit: cover !important;
}
.aboi-news-grid .elementor-post__text {
  display: flex !important;
  flex-direction: column !important;
  padding: 24px !important;
}
.aboi-news-grid .elementor-post__meta-data {
  order: -1 !important;
  margin: 0 0 10px !important;
  color: #0099c2;
  font-size: 12px;
  font-weight: 600;
}
.aboi-news-grid .elementor-post__title {
  margin: 0 0 12px !important;
}
.aboi-news-grid .elementor-post__title a {
  font-family: 'Montserrat', sans-serif;
  font-size: 23px;
  line-height: 1.3;
}
.aboi-news-grid .elementor-post__excerpt,
.aboi-news-grid .elementor-post__excerpt p {
  color: #53627a;
  font-size: 14px;
  line-height: 1.65;
}
.aboi-news-grid .elementor-post__read-more {
  align-self: flex-start !important;
  margin-top: 14px !important;
  color: #1f416a;
  font-size: 14px;
  font-weight: 700;
}
.aboi-news-grid .elementor-pagination {
  margin-top: 38px !important;
}
@media (max-width: 1024px) {
  .aboi-about-hero-grid > .e-con-inner,
  .aboi-contact-grid > .e-con-inner {
    gap: 28px !important;
  }
  .aboi-about-values-grid > .e-con-inner {
    grid-template-columns: 1fr 1fr !important;
  }
  .aboi-about-card-values {
    grid-column: 1 / -1 !important;
  }
}
@media (max-width: 767px) {
  .aboi-inner-hero {
    padding: 62px 0 52px !important;
  }
  .aboi-inner-section {
    padding: 58px 0 !important;
  }
  .aboi-inner-title .elementor-heading-title {
    font-size: 38px;
  }
  .aboi-inner-lead {
    font-size: 16px;
  }
  .aboi-about-hero-grid > .e-con-inner,
  .aboi-about-values-grid > .e-con-inner,
  .aboi-leadership-grid > .e-con-inner,
  .aboi-contact-grid > .e-con-inner,
  .aboi-news-grid .elementor-posts-container {
    grid-template-columns: 1fr !important;
  }
  .aboi-about-card-values {
    grid-column: auto !important;
  }
  .aboi-about-logo-panel,
  .aboi-about-logo-panel > .e-con-inner {
    min-height: 280px !important;
  }
  .aboi-contact-card > .e-con-inner {
    padding: 26px !important;
  }
}


/* === ABOI fidelity pass 1: Header global + Jornada de Formação === */
.aboi-native-header {
  padding: 0 !important;
  background: #1e3a5f !important;
}
.aboi-native-header > .e-con-inner {
  width: 100% !important;
  min-height: 64px !important;
  padding: 0 !important;
  gap: 0 !important;
}
.aboi-native-header-inner,
.aboi-native-header-inner > .e-con-inner {
  min-height: 64px !important;
}
.aboi-native-section:has(.aboi-native-journey-grid) {
  padding: 96px 0 !important;
  background: #f8fafc !important;
}
.aboi-native-section:has(.aboi-native-journey-grid) .aboi-native-wrap > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}
.aboi-native-section:has(.aboi-native-journey-grid) .aboi-native-section-title .elementor-heading-title {
  font-size: 36px;
  line-height: 40px;
}
.aboi-native-section:has(.aboi-native-journey-grid) .aboi-native-lead {
  width: 100% !important;
  max-width: 672px !important;
  margin: 16px auto 0 !important;
  color: #475569;
  font-size: 18px;
  line-height: 28px;
}
.aboi-native-journey-grid {
  width: 100% !important;
  max-width: 768px !important;
  margin: 64px auto 0 !important;
}
.aboi-native-journey-grid > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 768px !important;
  gap: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.aboi-native-journey-card {
  width: 100% !important;
  height: 500px !important;
}
.aboi-native-journey-card > .e-con-inner {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 500px !important;
  gap: 0 !important;
  padding: 32px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 10px 15px -3px rgba(0,0,0,.10), 0 4px 6px -4px rgba(0,0,0,.10) !important;
}
.aboi-native-journey-card.is-recommended {
  z-index: 10 !important;
  transform: scale(1.03) !important;
}
.aboi-native-journey-card.is-recommended > .e-con-inner {
  border: 1px solid #0891b2 !important;
}
.aboi-native-journey-card .aboi-native-badge {
  position: absolute !important;
  z-index: 3 !important;
  top: 0 !important;
  left: 50% !important;
  width: max-content !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 4px 12px !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 9999px !important;
  background: #0891b2 !important;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 16px;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.aboi-native-journey-card .aboi-native-journey-title {
  margin: 0 0 12px !important;
}
.aboi-native-journey-card .aboi-native-journey-title .elementor-heading-title {
  font-size: 20px;
  line-height: 28px;
}
.aboi-native-journey-card .aboi-native-card-copy {
  margin: 0 0 24px !important;
  color: #475569;
  font-size: 16px;
  line-height: 26px;
}
.aboi-native-journey-card .aboi-native-list {
  margin: 0 0 32px !important;
}
.aboi-native-journey-card .aboi-native-list .elementor-icon-list-items {
  display: grid !important;
  gap: 8px !important;
}
.aboi-native-journey-card .aboi-native-list .elementor-icon-list-item {
  align-items: flex-start !important;
  padding: 0 !important;
}
.aboi-native-journey-card .aboi-native-list .elementor-icon-list-icon {
  display: block !important;
  flex: 0 0 6px !important;
  width: 6px !important;
  height: 6px !important;
  margin: 7px 12px 0 0 !important;
  border-radius: 9999px !important;
  background: #0891b2 !important;
}
.aboi-native-journey-card .aboi-native-list .elementor-icon-list-icon svg,
.aboi-native-journey-card .aboi-native-list .elementor-icon-list-icon i {
  display: none !important;
}
.aboi-native-journey-card .aboi-native-list .elementor-icon-list-text {
  color: #475569;
  font-size: 14px;
  line-height: 20px;
}
.aboi-native-journey-card .aboi-native-btn {
  width: 100% !important;
  margin-top: auto !important;
}
.aboi-native-journey-card .aboi-native-btn .elementor-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: 12px 16px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #0891b2 !important;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
  box-shadow: 0 1px 2px rgba(15,23,42,.10) !important;
}
.aboi-native-journey-card .aboi-native-btn .elementor-button:hover {
  background: #087f9c !important;
}
@media (max-width: 767px) {
  .aboi-native-section:has(.aboi-native-journey-grid) {
    padding: 64px 0 !important;
  }
  .aboi-native-section:has(.aboi-native-journey-grid) .aboi-native-section-title .elementor-heading-title {
    font-size: 30px;
    line-height: 36px;
  }
  .aboi-native-section:has(.aboi-native-journey-grid) .aboi-native-lead {
    font-size: 16px;
    line-height: 26px;
  }
  .aboi-native-journey-grid {
    max-width: 100% !important;
    margin-top: 48px !important;
  }
  .aboi-native-journey-grid > .e-con-inner {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
    gap: 28px !important;
  }
  .aboi-native-journey-card,
  .aboi-native-journey-card > .e-con-inner {
    height: auto !important;
    min-height: 500px !important;
  }
  .aboi-native-journey-card.is-recommended {
    transform: none !important;
  }
  .aboi-native-journey-card > .e-con-inner {
    padding: 28px 24px !important;
  }
}


/* Jornada: uma única variante de ação, como na referência. */
.aboi-native-journey-card .elementor-widget-button {
  width: 100% !important;
  margin-top: auto !important;
}
.aboi-native-journey-card .elementor-widget-button .elementor-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: 12px 16px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #0891b2 !important;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
}


/* === ABOI design system + Single Product fidelity v1.0.28 === */
:root {
  --aboi-container-max: 1216px;
  --aboi-gutter: 32px;
  --aboi-section-space: 96px;
  --aboi-navy: #1e3a5f;
  --aboi-ink: #0f172a;
  --aboi-copy: #475569;
  --aboi-muted: #64748b;
  --aboi-cyan: #0891b2;
  --aboi-paper: #f8fafc;
  --aboi-line: #e2e8f0;
  --aboi-radius-sm: 8px;
  --aboi-radius-md: 16px;
  --aboi-radius-lg: 24px;
  --aboi-shadow-card: 0 10px 15px -3px rgba(0,0,0,.10), 0 4px 6px -4px rgba(0,0,0,.10);
  --aboi-shadow-float: 0 20px 25px -5px rgba(0,0,0,.10), 0 8px 10px -6px rgba(0,0,0,.10);
}
.aboi-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  min-height: 48px;
  padding: 12px 20px;
  border: 0;
  border-radius: var(--aboi-radius-sm);
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.aboi-btn--primary {
  background: var(--aboi-cyan);
  color: #fff;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.aboi-btn--primary:hover {
  background: #087f9c;
  color: #fff;
}
.aboi-btn--secondary { background: var(--aboi-navy); color: #fff; }
.aboi-btn--outline { border: 1px solid var(--aboi-line); background: #fff; color: var(--aboi-navy); }
.aboi-btn--text { min-height: auto; padding: 0; background: transparent; color: var(--aboi-navy); }
.aboi-btn--small { min-height: 36px; padding: 6px 14px; font-size: 13px; }
.aboi-btn--large { min-height: 52px; padding: 14px 24px; }
:is(.woocommerce, .elementor-form) :is(input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],input[type="search"],textarea,select) {
  min-height: 48px;
  padding: 11px 14px;
  border: 1px solid #d8e0e9;
  border-radius: 8px;
  background: #fff;
  color: var(--aboi-ink);
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  line-height: 24px;
  box-shadow: none;
}
:is(.woocommerce, .elementor-form) :is(input,textarea,select):focus {
  border-color: var(--aboi-cyan);
  outline: 2px solid rgba(8,145,178,.16);
  outline-offset: 0;
}
.woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) {
  padding: 18px 22px 18px 54px;
  border: 1px solid var(--aboi-line);
  border-top: 3px solid var(--aboi-cyan);
  border-radius: 12px;
  background: #fff;
  color: var(--aboi-copy);
}
.elementor-location-single.elementor-226 {
  display: grid !important;
  grid-template-columns: minmax(0, 2.105fr) minmax(340px, 1fr) !important;
  column-gap: 40px !important;
  row-gap: 0 !important;
  width: min(var(--aboi-container-max), calc(100% - (2 * var(--aboi-gutter)))) !important;
  max-width: var(--aboi-container-max) !important;
  margin: 0 auto !important;
  padding: 32px 0 96px !important;
  background: var(--aboi-paper) !important;
}
.single-product .site-main {
  background: var(--aboi-paper) !important;
}
.elementor-226 .aboi-single-hero,
.elementor-226 .aboi-single-hero > .e-con-inner,
.elementor-226 .aboi-single-content-grid,
.elementor-226 .aboi-single-content-grid > .e-con-inner {
  display: contents !important;
}
.elementor-226 .aboi-single-breadcrumb {
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  margin: 0 0 32px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.elementor-226 .aboi-single-breadcrumb > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  min-height: 20px !important;
  padding: 0 !important;
}
.elementor-226 .aboi-single-breadcrumb .woocommerce-breadcrumb {
  margin: 0 !important;
  color: var(--aboi-muted);
  font-size: 14px;
  line-height: 20px;
}
.elementor-226 .aboi-single-breadcrumb .woocommerce-breadcrumb a {
  color: var(--aboi-muted);
}
.elementor-226 .aboi-single-image {
  grid-column: 1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  height: 422px !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: var(--aboi-shadow-card) !important;
}
.elementor-226 .aboi-single-image > .e-con-inner {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}
.elementor-226 .aboi-single-image .woocommerce-product-gallery,
.elementor-226 .aboi-single-image .woocommerce-product-gallery__wrapper,
.elementor-226 .aboi-single-image .woocommerce-product-gallery__image,
.elementor-226 .aboi-single-image .woocommerce-product-gallery__image a {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}
.elementor-226 .aboi-single-image .woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 420px !important;
  max-height: none !important;
  object-fit: cover !important;
}
.elementor-226 .aboi-single-summary {
  grid-column: 1 !important;
  grid-row: 3 !important;
  width: 100% !important;
  margin: 28px 0 0 !important;
  padding: 0 !important;
}
.elementor-226 .aboi-single-summary > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: none !important;
  gap: 0 !important;
  padding: 0 !important;
}
.elementor-226 .aboi-product-category-badge {
  margin: 0 0 16px !important;
  padding: 4px 12px !important;
  border: 0 !important;
  border-radius: 9999px !important;
  background: #e8f5f7 !important;
  color: #27849a;
  font-size: 12px;
  line-height: 16px;
}
.elementor-226 .product_title {
  margin: 0 0 20px !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 36px;
  line-height: 40px;
  letter-spacing: -.02em;
}
.elementor-226 .aboi-single-summary .woocommerce-product-details__short-description {
  margin: 0 !important;
  color: var(--aboi-copy);
  font-size: 18px;
  line-height: 28px;
}
.elementor-226 .aboi-single-main-copy {
  grid-column: 1 !important;
  grid-row: 4 !important;
  width: 100% !important;
  margin: 20px 0 0 !important;
  padding: 0 !important;
}
.elementor-226 .aboi-single-main-copy > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: none !important;
  gap: 0 !important;
  padding: 0 !important;
}
.elementor-226 .aboi-single-main-copy > .e-con-inner > .elementor-widget-heading:first-child {
  display: none !important;
}
.elementor-226 .aboi-single-main-copy .woocommerce-product-content {
  margin: 0 0 36px !important;
  color: var(--aboi-copy);
  font-size: 16px;
  line-height: 27px;
}
.elementor-226 .aboi-product-detail-sections section {
  padding: 28px 0 !important;
  border-top: 1px solid var(--aboi-line) !important;
}
.elementor-226 .aboi-product-detail-sections h2 {
  margin: 0 0 10px !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 24px;
  line-height: 32px;
}
.elementor-226 .aboi-product-detail-sections p {
  color: var(--aboi-copy);
  line-height: 27px;
}
.elementor-226 .aboi-product-faq {
  margin-top: 42px !important;
}
.elementor-226 .aboi-product-faq::before {
  display: block;
  margin: 0 0 22px;
  color: var(--aboi-ink);
  content: 'Perguntas Frequentes';
  font-family: 'Montserrat', sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 38px;
}
.elementor-226 .aboi-single-aside {
  grid-column: 2 !important;
  grid-row: 2 / span 3 !important;
  align-self: start !important;
  width: 100% !important;
  padding: 0 !important;
}
.elementor-226 .aboi-single-aside > .e-con-inner {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}
.elementor-226 .aboi-single-purchase-card {
  position: sticky !important;
  top: 96px !important;
  width: 100% !important;
  padding: 0 !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: var(--aboi-shadow-float) !important;
}
.logged-in.admin-bar .elementor-226 .aboi-single-purchase-card {
  top: 128px !important;
}
.elementor-226 .aboi-single-purchase-card > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: none !important;
  gap: 0 !important;
  padding: 32px !important;
}
.elementor-226 .aboi-single-purchase-card > .e-con-inner > .elementor-widget-heading,
.elementor-226 .aboi-single-purchase-card .elementor-widget-woocommerce-product-price {
  display: none !important;
}
.elementor-226 .aboi-product-facts {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 16px !important;
  margin: 0 0 32px !important;
}
.elementor-226 .aboi-product-fact {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 0 !important;
  border: 0 !important;
}
.elementor-226 .aboi-product-fact-icon {
  display: flex !important;
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 12px !important;
  background: #eff7f9 !important;
  color: var(--aboi-cyan);
}
.elementor-226 .aboi-product-fact-icon svg {
  width: 20px !important;
  height: 20px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.elementor-226 .aboi-product-fact-copy {
  display: block !important;
}
.elementor-226 .aboi-product-fact dt {
  margin: 0 0 2px !important;
  color: var(--aboi-muted);
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
  letter-spacing: 0;
  text-transform: none;
}
.elementor-226 .aboi-product-fact dd {
  margin: 0 !important;
  color: var(--aboi-ink);
  font-size: 16px;
  font-weight: 600;
  line-height: 22px;
}
.elementor-226 .aboi-single-purchase-card .quantity {
  display: none !important;
}
.elementor-226 .aboi-single-purchase-card form.cart,
.elementor-226 .aboi-single-purchase-card .single_add_to_cart_button {
  width: 100% !important;
  margin: 0 !important;
}
.elementor-226 .aboi-single-purchase-card .single_add_to_cart_button {
  min-height: 48px !important;
  padding: 12px 18px !important;
  border-radius: 10px !important;
  background: var(--aboi-cyan) !important;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
}
.elementor-226 .aboi-single-contact {
  width: 100% !important;
  margin: 12px 0 0 !important;
}
.elementor-226 .aboi-single-contact .elementor-button {
  display: flex !important;
  width: 100% !important;
  min-height: 50px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 18px !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--aboi-navy);
  font-size: 14px;
  font-weight: 600;
}
@media (max-width: 1024px) {
  :root { --aboi-gutter: 24px; }
  .elementor-location-single.elementor-226 {
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 1fr) !important;
    column-gap: 28px !important;
  }
}
@media (max-width: 767px) {
  :root { --aboi-gutter: 16px; --aboi-section-space: 64px; }
  .elementor-location-single.elementor-226 {
    grid-template-columns: 1fr !important;
    width: calc(100% - (2 * var(--aboi-gutter))) !important;
    padding: 24px 0 64px !important;
  }
  .elementor-226 .aboi-single-breadcrumb { grid-column: 1 !important; grid-row: 1 !important; margin-bottom: 24px !important; }
  .elementor-226 .aboi-single-image { grid-column: 1 !important; grid-row: 2 !important; height: 260px !important; }
  .elementor-226 .aboi-single-image .woocommerce-product-gallery__image img { height: 258px !important; }
  .elementor-226 .aboi-single-summary { grid-column: 1 !important; grid-row: 3 !important; margin-top: 24px !important; }
  .elementor-226 .aboi-single-aside { grid-column: 1 !important; grid-row: 4 !important; margin-top: 28px !important; }
  .elementor-226 .aboi-single-main-copy { grid-column: 1 !important; grid-row: 5 !important; margin-top: 40px !important; }
  .elementor-226 .product_title { font-size: 32px; line-height: 38px; }
  .elementor-226 .aboi-single-purchase-card { position: static !important; }
  .elementor-226 .aboi-single-purchase-card > .e-con-inner { padding: 24px !important; }
}


/* Single Product: compensação do Header fixo e widgets adicionados ao Theme Builder. */
body.single-product { padding-top: 64px !important; }
.elementor-226 .aboi-product-facts { gap: 20px !important; }
.elementor-226 .elementor-element-abcontact1 {
  width: 100% !important;
  margin: 12px 0 0 !important;
}
.elementor-226 .elementor-element-abcontact1 .elementor-button {
  display: flex !important;
  width: 100% !important;
  min-height: 50px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 18px !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--aboi-navy);
  font-size: 14px;
  font-weight: 600;
}
.elementor-226 .elementor-element-abfaq001 {
  margin-top: 42px !important;
}
.elementor-226 .elementor-element-abfaq001::before {
  display: block;
  margin: 0 0 22px;
  color: var(--aboi-ink);
  content: 'Perguntas Frequentes';
  font-family: 'Montserrat', sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 38px;
}
@media (max-width: 767px) {
  body.single-product { padding-top: 64px !important; }
}


/* === Product Card global (Loop Item 221) === */
.elementor-loop-container:has(.elementor-221) {
  grid-template-columns: 1fr !important;
  width: 100% !important;
  max-width: 1088px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  gap: 32px !important;
}
.elementor-221 .aboi-product-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, .9fr) minmax(0, 1.1fr) !important;
  grid-template-rows: auto auto auto 1fr auto !important;
  width: 100% !important;
  height: 525px !important;
  min-height: 525px !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: var(--aboi-shadow-card) !important;
  transform: none !important;
}
.elementor-221 .aboi-product-card__image {
  grid-column: 1 !important;
  grid-row: 1 / 6 !important;
  width: 100% !important;
  height: 525px !important;
  min-height: 0 !important;
  padding: 0 !important;
  background: var(--aboi-paper) !important;
}
.elementor-221 .aboi-product-card__image a,
.elementor-221 .aboi-product-card__image img {
  display: block !important;
  width: 100% !important;
  height: 525px !important;
}
.elementor-221 .aboi-product-card__image img {
  object-fit: cover !important;
}
.elementor-221 .aboi-loop-badge {
  grid-column: 2 / 4 !important;
  grid-row: 1 !important;
  align-self: end !important;
  margin: 40px 40px 12px !important;
}
.elementor-221 .aboi-product-category-badge {
  padding: 4px 12px !important;
  border: 0 !important;
  border-radius: 9999px !important;
  background: #e8f5f7 !important;
  color: #27849a;
  font-size: 12px;
  line-height: 16px;
}
.elementor-221 .elementor-widget-woocommerce-product-title {
  grid-column: 2 / 4 !important;
  grid-row: 2 !important;
  margin: 0 40px 14px !important;
}
.elementor-221 .elementor-widget-woocommerce-product-title .product_title,
.elementor-221 .elementor-widget-woocommerce-product-title .product_title a {
  margin: 0 !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 30px;
  line-height: 36px;
}
.elementor-221 .aboi-loop-description {
  grid-column: 2 / 4 !important;
  grid-row: 3 !important;
  margin: 0 40px 20px !important;
  color: var(--aboi-copy);
  font-size: 16px;
  line-height: 26px;
}
.elementor-221 .aboi-loop-facts {
  grid-column: 2 / 4 !important;
  grid-row: 4 !important;
  align-self: start !important;
  margin: 0 40px 24px !important;
}
.elementor-221 .aboi-loop-facts .aboi-product-facts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px 24px !important;
  margin: 0 !important;
}
.elementor-221 .aboi-loop-facts .aboi-product-fact {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}
.elementor-221 .aboi-loop-facts .aboi-product-fact-icon {
  display: flex !important;
  flex: 0 0 22px !important;
  width: 22px !important;
  height: 22px !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--aboi-cyan);
}
.elementor-221 .aboi-loop-facts .aboi-product-fact-icon svg {
  width: 20px !important;
  height: 20px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
}
.elementor-221 .aboi-loop-facts dt {
  margin: 0 0 2px !important;
  color: var(--aboi-muted);
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  text-transform: none;
}
.elementor-221 .aboi-loop-facts dd {
  margin: 0 !important;
  color: var(--aboi-ink);
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
}
.elementor-221 .elementor-widget-woocommerce-product-price {
  display: none !important;
}
.elementor-221 .aboi-loop-details {
  grid-column: 2 !important;
  grid-row: 5 !important;
  align-self: end !important;
  margin: 0 6px 40px 40px !important;
}
.elementor-221 .aboi-loop-details .elementor-button {
  display: flex !important;
  width: 100% !important;
  min-height: 48px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 16px !important;
  border-radius: 10px !important;
  background: var(--aboi-navy) !important;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
}
.elementor-221 .aboi-loop-cart {
  grid-column: 3 !important;
  grid-row: 5 !important;
  align-self: end !important;
  margin: 0 40px 40px 6px !important;
}
.elementor-221 .aboi-loop-cart .quantity { display: none !important; }
.elementor-221 .aboi-loop-cart form.cart,
.elementor-221 .aboi-loop-cart .single_add_to_cart_button {
  width: 100% !important;
  margin: 0 !important;
}
.elementor-221 .aboi-loop-cart .single_add_to_cart_button {
  min-height: 48px !important;
  border-radius: 10px !important;
  background: var(--aboi-cyan) !important;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
}
@media (max-width: 767px) {
  .elementor-loop-container:has(.elementor-221) { max-width: 100% !important; }
  .elementor-221 .aboi-product-card {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: 0 !important;
  }
  .elementor-221 .aboi-product-card__image,
  .elementor-221 .aboi-product-card__image a,
  .elementor-221 .aboi-product-card__image img {
    width: 100% !important;
    height: 260px !important;
  }
  .elementor-221 .aboi-loop-badge { margin: 24px 24px 10px !important; }
  .elementor-221 .elementor-widget-woocommerce-product-title,
  .elementor-221 .aboi-loop-description,
  .elementor-221 .aboi-loop-facts { margin-right: 24px !important; margin-left: 24px !important; }
  .elementor-221 .aboi-loop-facts .aboi-product-facts { grid-template-columns: 1fr !important; }
  .elementor-221 .aboi-loop-details { margin: 0 24px 10px !important; }
  .elementor-221 .aboi-loop-cart { margin: 0 24px 24px !important; }
}

.elementor-221 .aboi-product-card { grid-template-columns: minmax(0, 2fr) minmax(0, .9fr) minmax(0, 1.1fr) !important; }


/* === WooCommerce system pages: Cart, Checkout, Account, Search === */
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .site-main,
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) {
  background: var(--aboi-paper) !important;
}
.elementor-11 > .e-con:first-child,
.elementor-12 > .e-con:first-child,
.elementor-13 > .e-con:first-child {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 40px 0 28px !important;
  background: transparent !important;
  background-image: none !important;
}
.elementor-11 > .e-con:first-child > .e-con-inner,
.elementor-12 > .e-con:first-child > .e-con-inner,
.elementor-13 > .e-con:first-child > .e-con-inner {
  width: min(960px, calc(100% - 64px)) !important;
  max-width: 960px !important;
  min-height: 0 !important;
  margin: auto !important;
  padding: 0 !important;
}
.elementor-11 > .e-con:first-child .elementor-background-overlay,
.elementor-12 > .e-con:first-child .elementor-background-overlay,
.elementor-13 > .e-con:first-child .elementor-background-overlay,
.elementor-11 > .e-con:first-child .elementor-widget-woocommerce-breadcrumb,
.elementor-12 > .e-con:first-child .elementor-widget-woocommerce-breadcrumb,
.elementor-13 > .e-con:first-child .elementor-widget-woocommerce-breadcrumb {
  display: none !important;
}
.elementor-11 > .e-con:first-child h1,
.elementor-12 > .e-con:first-child h1,
.elementor-13 > .e-con:first-child h1 {
  margin: 0 !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 38px;
  line-height: 46px;
  text-align: left !important;
  text-shadow: none !important;
}
.elementor-11 > .e-con:nth-child(2),
.elementor-12 > .e-con:nth-child(2),
.elementor-13 > .e-con:nth-child(2) {
  padding: 0 0 80px !important;
  background: transparent !important;
}
.elementor-11 > .e-con:nth-child(2) > .e-con-inner,
.elementor-12 > .e-con:nth-child(2) > .e-con-inner,
.elementor-13 > .e-con:nth-child(2) > .e-con-inner {
  width: min(960px, calc(100% - 64px)) !important;
  max-width: 960px !important;
  margin: auto !important;
  padding: 0 !important;
}
.woocommerce-cart .woocommerce {
  display: flow-root !important;
}
.woocommerce-cart .woocommerce-cart-form {
  float: left !important;
  width: calc(66% - 16px) !important;
}
.woocommerce-cart .cart-collaterals {
  float: right !important;
  width: calc(34% - 16px) !important;
}
.woocommerce-cart table.shop_table {
  overflow: hidden !important;
  margin: 0 0 18px !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 2px 4px rgba(15,23,42,.04) !important;
  border-collapse: separate !important;
}
.woocommerce-cart table.shop_table thead {
  display: none !important;
}
.woocommerce-cart tr.woocommerce-cart-form__cart-item {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 96px minmax(0, 1fr) 84px !important;
  align-items: center !important;
  min-height: 142px !important;
  padding: 20px 24px !important;
}
.woocommerce-cart tr.woocommerce-cart-form__cart-item td {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.woocommerce-cart td.product-remove {
  position: absolute !important;
  z-index: 2 !important;
  top: 20px !important;
  right: 20px !important;
}
.woocommerce-cart td.product-remove a,
.woocommerce-cart td.product-remove button {
  width: 28px !important;
  height: 28px !important;
  border-radius: 8px !important;
  color: #94a3b8;
  background: transparent !important;
  font-size: 20px;
}
.woocommerce-cart td.product-thumbnail {
  grid-column: 1 !important;
}
.woocommerce-cart td.product-thumbnail img {
  width: 80px !important;
  height: 80px !important;
  border-radius: 10px !important;
  object-fit: cover !important;
}
.woocommerce-cart td.product-name {
  grid-column: 2 !important;
  align-self: start !important;
  padding: 10px 20px 0 0 !important;
}
.woocommerce-cart td.product-name a {
  color: var(--aboi-ink);
  font-family: 'Montserrat', sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 23px;
}
.woocommerce-cart td.product-price {
  grid-column: 2 !important;
  align-self: end !important;
  padding: 0 20px 10px 0 !important;
  color: var(--aboi-navy);
  font-weight: 600;
}
.woocommerce-cart td.product-quantity {
  grid-column: 3 !important;
  grid-row: 1 / span 2 !important;
}
.woocommerce-cart td.product-subtotal {
  display: none !important;
}
.woocommerce-cart .quantity .qty {
  width: 64px !important;
  min-height: 40px !important;
  padding: 7px !important;
  text-align: center !important;
}
.woocommerce-cart td.actions {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 18px 0 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.woocommerce-cart td.actions .coupon {
  display: flex !important;
  flex: 1 !important;
  gap: 8px !important;
}
.woocommerce-cart td.actions .coupon input {
  flex: 1 !important;
  width: auto !important;
}
.woocommerce-cart td.actions > .button {
  margin-left: auto !important;
}
.woocommerce-cart .cart-collaterals .cart_totals {
  float: none !important;
  width: 100% !important;
  padding: 28px 24px !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: var(--aboi-shadow-card) !important;
}
.woocommerce-cart .cart_totals h2 {
  margin: 0 0 18px !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 24px;
  line-height: 32px;
}
.woocommerce-cart .cart_totals table {
  margin: 0 0 20px !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.woocommerce-cart .cart_totals th,
.woocommerce-cart .cart_totals td {
  padding: 14px 0 !important;
  border-top: 1px solid #edf1f5 !important;
  color: var(--aboi-copy);
}
.woocommerce-cart .cart_totals td {
  text-align: right !important;
}
.woocommerce-cart .order-total strong {
  color: var(--aboi-navy);
  font-size: 22px;
}
.woocommerce-cart .wc-proceed-to-checkout {
  padding: 0 !important;
}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  display: flex !important;
  width: 100% !important;
  min-height: 48px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  border-radius: 10px !important;
  background: var(--aboi-cyan) !important;
  font-size: 14px;
}
.woocommerce-cart .cart-empty {
  padding: 38px !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  text-align: center !important;
}
.woocommerce-checkout form.checkout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr) !important;
  gap: 28px 32px !important;
  align-items: start !important;
}
.woocommerce-checkout form.checkout > .col2-set {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  width: 100% !important;
}
.woocommerce-checkout #order_review_heading {
  grid-column: 2 !important;
  grid-row: 1 !important;
  margin: 0 !important;
  padding: 28px 28px 0 !important;
  border: 1px solid var(--aboi-line) !important;
  border-bottom: 0 !important;
  border-radius: 16px 16px 0 0 !important;
  background: #fff !important;
  color: var(--aboi-ink);
  font-family: 'Montserrat', sans-serif;
  font-size: 24px;
}
.woocommerce-checkout #order_review {
  grid-column: 2 !important;
  grid-row: 2 !important;
  margin-top: -28px !important;
  padding: 52px 28px 28px !important;
  border: 1px solid var(--aboi-line) !important;
  border-top: 0 !important;
  border-radius: 0 0 16px 16px !important;
  background: #fff !important;
  box-shadow: var(--aboi-shadow-card) !important;
}
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
  margin: 0 0 24px !important;
  padding: 28px !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
}
.woocommerce-checkout h3 {
  font-family: 'Montserrat', sans-serif;
  font-size: 24px;
}
.woocommerce-checkout .form-row {
  margin: 0 0 16px !important;
}
.woocommerce-checkout .form-row label {
  margin: 0 0 7px !important;
  color: #34435a;
  font-size: 13px;
  font-weight: 600;
}
.woocommerce-checkout #payment {
  border-radius: 12px !important;
  background: var(--aboi-paper) !important;
}
.woocommerce-checkout #place_order {
  width: 100% !important;
  min-height: 50px !important;
  border-radius: 10px !important;
  background: var(--aboi-cyan) !important;
}
.woocommerce-account .woocommerce {
  display: grid !important;
  grid-template-columns: 240px minmax(0, 1fr) !important;
  gap: 32px !important;
  align-items: start !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
  float: none !important;
  width: 100% !important;
  overflow: hidden !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 14px !important;
  background: #fff !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  margin: 0 !important;
  padding: 8px !important;
  list-style: none !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: block !important;
  padding: 11px 13px !important;
  border-radius: 8px !important;
  color: var(--aboi-copy);
  font-size: 14px;
  font-weight: 600;
}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: #e8f5f7 !important;
  color: var(--aboi-cyan);
}
.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  width: 100% !important;
  min-height: 300px !important;
  padding: 28px !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 14px !important;
  background: #fff !important;
}
.elementor-menu-cart__container {
  background: rgba(15,23,42,.45) !important;
}
.elementor-menu-cart__main {
  width: min(390px, 92vw) !important;
  padding: 24px !important;
  background: #fff !important;
  box-shadow: -16px 0 40px rgba(15,23,42,.18) !important;
}
.elementor-menu-cart__product {
  padding: 16px 0 !important;
  border-bottom: 1px solid var(--aboi-line) !important;
}
.elementor-menu-cart__product-image img {
  border-radius: 8px !important;
}
.elementor-menu-cart__product-name a {
  color: var(--aboi-ink);
  font-family: 'Montserrat', sans-serif;
}
.elementor-menu-cart__footer-buttons {
  gap: 10px !important;
}
.elementor-menu-cart__footer-buttons a {
  min-height: 46px !important;
  border-radius: 8px !important;
}
@media (max-width: 767px) {
  .elementor-11 > .e-con:first-child > .e-con-inner,
  .elementor-12 > .e-con:first-child > .e-con-inner,
  .elementor-13 > .e-con:first-child > .e-con-inner,
  .elementor-11 > .e-con:nth-child(2) > .e-con-inner,
  .elementor-12 > .e-con:nth-child(2) > .e-con-inner,
  .elementor-13 > .e-con:nth-child(2) > .e-con-inner {
    width: calc(100% - 32px) !important;
  }
  .woocommerce-cart .woocommerce-cart-form,
  .woocommerce-cart .cart-collaterals {
    float: none !important;
    width: 100% !important;
  }
  .woocommerce-cart .cart-collaterals { margin-top: 28px !important; }
  .woocommerce-cart tr.woocommerce-cart-form__cart-item {
    grid-template-columns: 76px minmax(0, 1fr) !important;
    padding: 18px !important;
  }
  .woocommerce-cart td.product-thumbnail img { width: 64px !important; height: 64px !important; }
  .woocommerce-cart td.product-quantity { grid-column: 2 !important; grid-row: auto !important; margin-top: 12px !important; }
  .woocommerce-cart td.actions { flex-direction: column !important; align-items: stretch !important; }
  .woocommerce-cart td.actions .coupon { width: 100% !important; }
  .woocommerce-cart td.actions > .button { width: 100% !important; margin-left: 0 !important; }
  .woocommerce-checkout form.checkout { grid-template-columns: 1fr !important; }
  .woocommerce-checkout form.checkout > .col2-set,
  .woocommerce-checkout #order_review_heading,
  .woocommerce-checkout #order_review { grid-column: 1 !important; grid-row: auto !important; }
  .woocommerce-checkout #order_review { margin-top: -28px !important; }
  .woocommerce-account .woocommerce { grid-template-columns: 1fr !important; }
}


/* Remove o hero individual legado; o título permanece como widget Elementor editável. */
.elementor-11 > .e-con:first-child > .e-con:first-child,
.elementor-12 > .e-con:first-child > .e-con:first-child,
.elementor-13 > .e-con:first-child > .e-con:first-child {
  width: min(960px, calc(100% - 64px)) !important;
  max-width: 960px !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  background-image: none !important;
  border-radius: 0 !important;
}
.elementor-11 > .e-con:first-child > .e-con:first-child .elementor-background-overlay,
.elementor-12 > .e-con:first-child > .e-con:first-child .elementor-background-overlay,
.elementor-13 > .e-con:first-child > .e-con:first-child .elementor-background-overlay {
  display: none !important;
}
@media (max-width: 767px) {
  .elementor-11 > .e-con:first-child > .e-con:first-child,
  .elementor-12 > .e-con:first-child > .e-con:first-child,
  .elementor-13 > .e-con:first-child > .e-con:first-child {
    width: calc(100% - 32px) !important;
  }
}


/* Elementor Pro Cart: preserva as duas colunas do widget e estiliza o conteúdo interno. */
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account { padding-top: 64px !important; }
.elementor-widget-woocommerce-cart .e-cart__container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.7fr) minmax(280px, .9fr) !important;
  gap: 32px !important;
  align-items: start !important;
}
.elementor-widget-woocommerce-cart .e-cart__column {
  width: 100% !important;
  min-width: 0 !important;
}
.elementor-widget-woocommerce-cart .woocommerce-cart-form,
.elementor-widget-woocommerce-cart .cart-collaterals,
.elementor-widget-woocommerce-cart .cart_totals {
  float: none !important;
  width: 100% !important;
}
.elementor-widget-woocommerce-cart .e-cart-totals {
  width: 100% !important;
  min-height: 0 !important;
}
.elementor-widget-woocommerce-cart .e-shop-table,
.elementor-widget-woocommerce-cart .e-cart-totals,
.elementor-widget-woocommerce-cart .e-cart__column-start > .e-cart-section {
  border: 0 !important;
  background: transparent !important;
}
@media (max-width: 767px) {
  .elementor-widget-woocommerce-cart .e-cart__container { grid-template-columns: 1fr !important; }
}


/* Ajustes finais dos widgets WooCommerce do Elementor Pro. */
.elementor-11 > .e-con:first-child > .e-con:first-child > .e-con,
.elementor-12 > .e-con:first-child > .e-con:first-child > .e-con,
.elementor-13 > .e-con:first-child > .e-con:first-child > .e-con {
  width: 100% !important;
  max-width: none !important;
}
.elementor-11 > .e-con:first-child .elementor-widget-heading,
.elementor-12 > .e-con:first-child .elementor-widget-heading,
.elementor-13 > .e-con:first-child .elementor-widget-heading {
  width: 100% !important;
}
.woocommerce-cart .cart_totals h2,
.woocommerce-cart .checkout-button,
.woocommerce-cart button[name="update_cart"],
.woocommerce-cart button[name="apply_coupon"] {
  font-size: 0;
}
.woocommerce-cart .cart_totals h2::after {
  content: 'Resumo';
  font-size: 24px;
}
.woocommerce-cart .checkout-button::after {
  content: 'Finalizar Compra';
  font-size: 14px;
}
.woocommerce-cart button[name="update_cart"]::after {
  content: 'Atualizar carrinho';
  font-size: 14px;
}
.woocommerce-cart button[name="apply_coupon"]::after {
  content: 'Aplicar';
  font-size: 14px;
}
.woocommerce-checkout form.checkout {
  display: block !important;
  width: 100% !important;
}
.elementor-widget-woocommerce-checkout .e-checkout__container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr) !important;
  width: 100% !important;
  gap: 32px !important;
  align-items: start !important;
}
.elementor-widget-woocommerce-checkout .e-checkout__column {
  width: 100% !important;
  min-width: 0 !important;
}
.elementor-widget-woocommerce-checkout .e-checkout__column-inner {
  width: 100% !important;
}
.elementor-widget-woocommerce-checkout .e-checkout__order_review,
.elementor-widget-woocommerce-checkout .e-coupon-box,
.elementor-widget-woocommerce-checkout .e-checkout__order_review-2 {
  margin: 0 0 20px !important;
  padding: 28px !important;
  border: 1px solid var(--aboi-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 2px 4px rgba(15,23,42,.04) !important;
}
.elementor-widget-woocommerce-checkout #order_review_heading,
.elementor-widget-woocommerce-checkout #order_review {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.elementor-widget-woocommerce-checkout #order_review_heading {
  margin: 0 0 18px !important;
}
@media (max-width: 767px) {
  .elementor-widget-woocommerce-checkout .e-checkout__container {
    grid-template-columns: 1fr !important;
  }
}


.woocommerce-cart .wc-proceed-to-checkout .checkout-button { font-size: 0; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button::after { content: 'Finalizar Compra'; font-size: 14px; }
.elementor-widget-woocommerce-checkout :is(input.input-text, textarea, select) {
  border: 1px solid #d8e0e9 !important;
  background: #fff !important;
  color: var(--aboi-ink);
  box-shadow: none !important;
}
.elementor-widget-woocommerce-checkout :is(input.input-text, textarea, select):focus {
  border-color: var(--aboi-cyan) !important;
  outline: 2px solid rgba(8,145,178,.16) !important;
}


/* === Minha Conta + Busca === */
.woocommerce-account .woocommerce-MyAccount-navigation {
  grid-column: 1 !important;
  grid-row: 1 !important;
}
.woocommerce-account .woocommerce-MyAccount-content {
  grid-column: 2 !important;
  grid-row: 1 !important;
}
body.search { padding-top: 64px !important; background: var(--aboi-paper) !important; }
body.search .elementor-location-archive {
  min-height: 520px !important;
  padding-bottom: 80px !important;
  background: var(--aboi-paper) !important;
}
body.search .elementor-location-archive > .e-con:first-child {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 48px 0 32px !important;
  background: transparent !important;
  background-image: none !important;
}
body.search .elementor-location-archive > .e-con:first-child .elementor-background-overlay {
  display: none !important;
}
body.search .elementor-location-archive > .e-con:first-child > .e-con,
body.search .elementor-location-archive > .e-con:first-child > .e-con-inner {
  width: min(1088px, calc(100% - 64px)) !important;
  max-width: 1088px !important;
  min-height: 0 !important;
  margin: auto !important;
  padding: 0 !important;
  background: transparent !important;
  background-image: none !important;
}
body.search .elementor-location-archive h1 {
  margin: 0 !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 40px;
  line-height: 48px;
  text-align: left !important;
  text-shadow: none !important;
}
body.search .elementor-location-archive .elementor-widget-woocommerce-breadcrumb {
  display: none !important;
}
body.search .elementor-location-archive:not(:has(.elementor-loop-container))::after {
  display: block;
  width: min(1088px, calc(100% - 64px));
  margin: 0 auto;
  padding: 42px;
  border: 1px solid var(--aboi-line);
  border-radius: 16px;
  background: #fff;
  color: var(--aboi-copy);
  content: 'Nenhum resultado encontrado. Tente buscar por outro termo ou navegue pelas formações disponíveis.';
  font-size: 16px;
  line-height: 26px;
  text-align: center;
}
@media (max-width: 767px) {
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  body.search .elementor-location-archive > .e-con:first-child > .e-con,
  body.search .elementor-location-archive > .e-con:first-child > .e-con-inner,
  body.search .elementor-location-archive:not(:has(.elementor-loop-container))::after {
    width: calc(100% - 32px) !important;
  }
  body.search .elementor-location-archive h1 { font-size: 32px; line-height: 40px; }
}

body.tax-product_cat { padding-top: 64px !important; }


.elementor-location-archive.elementor-57 > .e-con:first-child > .e-con:first-child {
  width: min(1088px, calc(100% - 64px)) !important;
  max-width: 1088px !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  background-image: none !important;
  border-radius: 0 !important;
}
.elementor-location-archive.elementor-57 > .e-con:first-child > .e-con:first-child .elementor-background-overlay {
  display: none !important;
}
.elementor-location-archive.elementor-57 > .e-con:first-child > .e-con:first-child > .e-con {
  width: 100% !important;
  max-width: none !important;
}
@media (max-width: 767px) {
  .elementor-location-archive.elementor-57 > .e-con:first-child > .e-con:first-child {
    width: calc(100% - 32px) !important;
  }
}

.elementor-57 .elementor-element-6ffd44a5 { min-height: 0 !important; padding: 48px 40px 36px !important; background: #fff !important; background-image: none !important; }


/* ========================================================================== */
/* Programas de Formação — réplica fiel, componentes nativos + Loop Woo      */
/* ========================================================================== */
body.elementor-page-223 {
  overflow-x: clip;
}
body.elementor-page-223 .elementor-element-abpg1000,
body.elementor-page-223 .elementor-element-abpg2000,
body.elementor-page-223 .elementor-element-abpg3000,
body.elementor-page-223 .elementor-element-abpg4000 {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg1000 > .e-con-inner,
body.elementor-page-223 .elementor-element-abpg2000 > .e-con-inner,
body.elementor-page-223 .elementor-element-abpg3000 > .e-con-inner,
body.elementor-page-223 .elementor-element-abpg4000 > .e-con-inner {
  width: 100% !important;
  margin-inline: auto !important;
}

/* Hero */
body.elementor-page-223 .elementor-element-abpg1000 {
  min-height: 579px !important;
  padding: 80px 32px 72px !important;
  background: #fff !important;
}
body.elementor-page-223 .elementor-element-abpg1000 > .e-con-inner {
  max-width: 960px !important;
  align-items: center !important;
  gap: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg1001 {
  width: auto !important;
  margin: 0 0 24px !important;
}
body.elementor-page-223 .elementor-element-abpg1001 .elementor-heading-title {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 5px 16px !important;
  border-radius: 999px !important;
  background: #edf6f8 !important;
  color: #3a8194;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: .04em;
}
body.elementor-page-223 .elementor-element-abpg1002 {
  margin: 0 0 16px !important;
}
body.elementor-page-223 .elementor-element-abpg1002 .elementor-heading-title {
  font-family: "Montserrat", sans-serif;
  font-size: 48px;
  line-height: 1;
  letter-spacing: -.025em;
  text-align: center !important;
}
body.elementor-page-223 .elementor-element-abpg1003 {
  width: 100% !important;
  max-width: 768px !important;
  margin: 0 auto !important;
}
body.elementor-page-223 .elementor-element-abpg1003,
body.elementor-page-223 .elementor-element-abpg1003 p {
  color: #475569;
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.625;
  text-align: center !important;
}
body.elementor-page-223 .elementor-element-abpg1003 p {
  margin: 0 0 16px !important;
}
body.elementor-page-223 .elementor-element-abpg1003 p:last-child {
  margin-bottom: 0 !important;
}

/* Características */
body.elementor-page-223 .elementor-element-abpg2000 {
  min-height: 520px !important;
  padding: 56px 32px !important;
  background: #f8fafc !important;
}
body.elementor-page-223 .elementor-element-abpg2000 > .e-con-inner {
  max-width: 960px !important;
  gap: 28px !important;
}
body.elementor-page-223 .elementor-element-abpg2001 {
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg2001 .elementor-heading-title {
  font-family: "Montserrat", sans-serif;
  font-size: 24px;
  line-height: 32px;
  text-align: center !important;
}
body.elementor-page-223 .elementor-element-abpg2002 {
  width: 100% !important;
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg2002 .elementor-icon-list-items {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg2002 .elementor-icon-list-item {
  min-height: 74px !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid #edf0f4 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 1px 3px rgba(15,23,42,.04) !important;
}
body.elementor-page-223 .elementor-element-abpg2002 .elementor-icon-list-icon {
  flex: 0 0 18px !important;
  width: 18px !important;
  margin-right: 12px !important;
}
body.elementor-page-223 .elementor-element-abpg2002 .elementor-icon-list-icon svg {
  width: 18px !important;
  height: 18px !important;
  fill: none !important;
  color: #4e9ab0;
}
body.elementor-page-223 .elementor-element-abpg2002 .elementor-icon-list-text {
  padding: 0 !important;
  color: #475569;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

/* Catálogo dinâmico */
body.elementor-page-223 .elementor-element-abpg3000 {
  padding: 64px 32px 80px !important;
  background: #fff !important;
}
body.elementor-page-223 .elementor-element-abpg3000 > .e-con-inner {
  max-width: 1201px !important;
  gap: 40px !important;
}
body.elementor-page-223 .elementor-element-abpg3010 {
  width: 100% !important;
  max-width: 768px !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 8px !important;
}
body.elementor-page-223 .elementor-element-abpg3011 {
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg3011 .elementor-heading-title {
  font-family: "Montserrat", sans-serif;
  font-size: 30px;
  line-height: 36px;
  letter-spacing: -.015em;
}
body.elementor-page-223 .elementor-element-abpg3012,
body.elementor-page-223 .elementor-element-abpg3012 p {
  color: #475569;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
}
body.elementor-page-223 .elementor-element-abpg3012 p {
  margin: 0 0 8px !important;
}
body.elementor-page-223 .elementor-element-abpg3012 p:last-child {
  margin-bottom: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg3001 {
  width: 100% !important;
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .elementor-loop-container {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 32px !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .e-loop-item {
  min-width: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-product-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 483px !important;
  margin: 0 !important;
  padding: 0 24px 24px !important;
  overflow: hidden !important;
  border: 1px solid #eef1f5 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 5px 13px rgba(15,23,42,.13) !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-product-card::before {
  content: "" !important;
  display: block !important;
  flex: 0 0 253px !important;
  width: calc(100% + 48px) !important;
  margin: 0 -24px 24px !important;
  background-color: #f1f5f9 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' fill='none' stroke='%23cbd5e1' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E") !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-badge {
  width: auto !important;
  margin: 0 0 12px !important;
  align-self: flex-start !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-product-category-badge {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 24px !important;
  padding: 3px 12px !important;
  border-radius: 999px !important;
  background: #eaf5f8 !important;
  color: #087d9b;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 18px;
  letter-spacing: .035em;
  text-transform: uppercase;
}
body.elementor-page-223 .elementor-element-abpg3001 .elementor-widget-woocommerce-product-title {
  margin: 0 0 4px !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .product_title,
body.elementor-page-223 .elementor-element-abpg3001 .product_title a {
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  line-height: 28px;
  text-decoration: none !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-description {
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-description,
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-description p {
  color: #64748b;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 22.75px;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-description p {
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-facts,
body.elementor-page-223 .elementor-element-abpg3001 .elementor-widget-woocommerce-product-price,
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-details {
  display: none !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-cart {
  width: auto !important;
  margin: auto 0 0 !important;
  align-self: flex-start !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-cart .elementor-add-to-cart,
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-cart form {
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-cart a.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 88px !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 4px 12px !important;
  border: 1px solid #0798bd !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: transparent;
  font-family: "Montserrat", sans-serif;
  font-size: 0;
  font-weight: 500;
  line-height: 18px;
  box-shadow: none !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-cart a.button::after {
  content: "EM BREVE" !important;
  color: #087d9b;
  font-size: 12px;
  letter-spacing: .03em;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-loop-cart a.button:hover {
  background: #edf8fa !important;
}

/* CTA */
body.elementor-page-223 .elementor-element-abpg4000 {
  min-height: 398px !important;
  padding: 72px 32px !important;
  background: #1e3a5f !important;
}
body.elementor-page-223 .elementor-element-abpg4000 > .e-con-inner {
  max-width: 704px !important;
  justify-content: center !important;
}
body.elementor-page-223 .elementor-element-abpg4010 {
  width: 100% !important;
  padding: 0 !important;
  gap: 20px !important;
}
body.elementor-page-223 .elementor-element-abpg4011 {
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg4011 .elementor-heading-title {
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: 36px;
  line-height: 40px;
  text-align: center !important;
}
body.elementor-page-223 .elementor-element-abpg4012,
body.elementor-page-223 .elementor-element-abpg4012 p {
  color: #e2e8f0;
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 29.25px;
  text-align: center !important;
}
body.elementor-page-223 .elementor-element-abpg4012 p {
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg4020 {
  width: 100% !important;
  padding: 4px 0 0 !important;
  flex-direction: row !important;
  justify-content: center !important;
  gap: 16px !important;
}
body.elementor-page-223 .elementor-element-abpg4020 .elementor-widget-button {
  width: auto !important;
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg4020 .elementor-button {
  min-height: 48px !important;
  padding: 13px 24px !important;
  border-radius: 8px !important;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
}
body.elementor-page-223 .elementor-element-abpg4021 .elementor-button {
  border: 1px solid #0798bd !important;
  background: #0798bd !important;
  color: #fff;
}
body.elementor-page-223 .elementor-element-abpg4022 .elementor-button {
  border: 1px solid rgba(255,255,255,.72) !important;
  background: transparent !important;
  color: #fff;
}
body.elementor-page-223 .elementor-element-abpg4021 .elementor-button:hover {
  background: #087f9d !important;
}
body.elementor-page-223 .elementor-element-abpg4022 .elementor-button:hover {
  background: rgba(255,255,255,.09) !important;
}

@media (max-width: 1024px) {
  body.elementor-page-223 .elementor-element-abpg1000 {
    min-height: 0 !important;
    padding: 72px 32px !important;
  }
  body.elementor-page-223 .elementor-element-abpg1002 .elementor-heading-title {
    font-size: 42px;
  }
  body.elementor-page-223 .elementor-element-abpg2002 .elementor-icon-list-items,
  body.elementor-page-223 .elementor-element-abpg3001 .elementor-loop-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 767px) {
  body.elementor-page-223 .elementor-element-abpg1000 {
    padding: 56px 20px !important;
  }
  body.elementor-page-223 .elementor-element-abpg1001 {
    margin-bottom: 18px !important;
  }
  body.elementor-page-223 .elementor-element-abpg1002 .elementor-heading-title {
    font-size: 34px;
    line-height: 40px;
  }
  body.elementor-page-223 .elementor-element-abpg1003,
  body.elementor-page-223 .elementor-element-abpg1003 p {
    font-size: 16px;
    line-height: 26px;
  }
  body.elementor-page-223 .elementor-element-abpg2000 {
    padding: 48px 20px !important;
  }
  body.elementor-page-223 .elementor-element-abpg2002 .elementor-icon-list-items,
  body.elementor-page-223 .elementor-element-abpg3001 .elementor-loop-container {
    grid-template-columns: 1fr !important;
  }
  body.elementor-page-223 .elementor-element-abpg3000 {
    padding: 48px 20px 64px !important;
  }
  body.elementor-page-223 .elementor-element-abpg3011 .elementor-heading-title {
    font-size: 28px;
    line-height: 34px;
  }
  body.elementor-page-223 .elementor-element-abpg3001 .aboi-product-card {
    min-height: 483px !important;
  }
  body.elementor-page-223 .elementor-element-abpg4000 {
    min-height: 0 !important;
    padding: 64px 20px !important;
  }
  body.elementor-page-223 .elementor-element-abpg4011 .elementor-heading-title {
    font-size: 30px;
    line-height: 36px;
  }
  body.elementor-page-223 .elementor-element-abpg4012,
  body.elementor-page-223 .elementor-element-abpg4012 p {
    font-size: 16px;
    line-height: 26px;
  }
  body.elementor-page-223 .elementor-element-abpg4020 {
    flex-direction: column !important;
  }
  body.elementor-page-223 .elementor-element-abpg4020 .elementor-widget-button,
  body.elementor-page-223 .elementor-element-abpg4020 .elementor-button {
    width: 100% !important;
  }
}

/* Programas v2 — correções de largura e flex interno do Elementor */
body.elementor-page-223 .elementor-element-abpg3000 > .e-con-inner {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .elementor-loop-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg2002 .elementor-icon-list-icon svg {
  display: none !important;
}
body.elementor-page-223 .elementor-element-abpg2002 .elementor-icon-list-icon::before {
  content: "✓" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  border: 1.5px solid #4e9ab0 !important;
  border-radius: 50% !important;
  color: #4e9ab0;
  font-family: Arial, sans-serif;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}
body.elementor-page-223 .elementor-element-abpg4020 {
  min-height: 52px !important;
}
body.elementor-page-223 .elementor-element-abpg4020 > .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 4px 0 0 !important;
}
@media (max-width: 767px) {
  body.elementor-page-223 .elementor-element-abpg4020 > .e-con-inner {
    flex-direction: column !important;
    min-height: 0 !important;
  }
}

/* Programas v3 — neutraliza heranças do Loop Item e do container boxed */
body.elementor-page-223 .elementor-element-abpg2000 > .e-con-inner,
body.elementor-page-223 .elementor-element-abpg4000 > .e-con-inner,
body.elementor-page-223 .elementor-element-abpg4010 > .e-con-inner {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.elementor-page-223 .elementor-element-abpg3001 .aboi-product-card::before {
  position: static !important;
  inset: auto !important;
  z-index: auto !important;
  height: 253px !important;
  min-height: 253px !important;
  max-height: 253px !important;
}

body.elementor-page-223 .elementor-element-abpg3001 .aboi-product-card {
  height: 483px !important;
}


/* ABOI header: estrutura responsiva do Theme Builder */
@media (min-width: 1181px) {
	.aboi-native-header-inner > .e-con-inner {
		display: grid !important;
		grid-template-columns: 100px minmax(0, 1fr) 44px auto !important;
		align-items: center !important;
		column-gap: 16px !important;
		width: 100% !important;
		max-width: 1280px !important;
		margin: 0 auto !important;
		padding: 0 32px !important;
		box-sizing: border-box !important;
	}

	.aboi-native-menu {
		grid-area: 1 / 2 !important;
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
	}

	.aboi-native-menu .elementor-nav-menu--main {
		position: static !important;
		width: 100% !important;
		height: auto !important;
	}

	.aboi-native-menu .elementor-nav-menu {
		justify-content: center !important;
		gap: clamp(14px, 1.6vw, 28px) !important;
		flex-wrap: nowrap !important;
	}

	.aboi-native-menu .elementor-item {
		white-space: nowrap !important;
	}

	.aboi-native-cart {
		grid-area: 1 / 3 !important;
	}

	.aboi-native-header-actions {
		grid-area: 1 / 4 !important;
	}
}

@media (max-width: 1180px) {
	.aboi-native-header-inner > .e-con-inner {
		display: flex !important;
		grid-template-columns: none !important;
		align-items: center !important;
		justify-content: flex-start !important;
		padding: 0 24px !important;
		gap: 12px !important;
	}

	.aboi-native-menu {
		margin-left: auto !important;
		display: block !important;
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
	}

	.aboi-native-menu .elementor-nav-menu--main {
		display: none !important;
	}

	.aboi-native-menu .elementor-menu-toggle {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		padding: 8px !important;
		color: #fff;
		background: transparent !important;
		border: 0 !important;
	}

	.aboi-native-cart {
		margin-left: 0 !important;
	}
}


/* ABOI header: alinhamento vertical do menu */
@media (min-width: 1181px) {
	.aboi-native-menu {
		justify-content: center !important;
	}
}


/* ABOI: cabeçalho fluido, cards e minicarrinho */

/* Evita que a resposta AJAX do WooCommerce aumente e corte os cards. */
.aboi-product-card a.added_to_cart.wc-forward {
	display: none !important;
}

/* Centralização real do menu, com laterais simétricas e sem larguras rígidas. */
@media (min-width: 1281px) {
	.aboi-native-header-inner > .e-con-inner {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) max-content minmax(0, 1fr) !important;
		align-items: center !important;
		column-gap: clamp(12px, 1.25vw, 20px) !important;
	}

	.aboi-native-header-logo {
		grid-column: 1 !important;
		justify-self: start !important;
	}

	.aboi-native-menu {
		grid-column: 2 !important;
		justify-self: center !important;
		justify-content: center !important;
		width: max-content !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.aboi-native-menu .elementor-nav-menu--main {
		width: auto !important;
	}

	.aboi-native-menu .elementor-nav-menu {
		gap: clamp(14px, 1.45vw, 26px) !important;
	}

	.aboi-native-cart {
		grid-column: 3 !important;
		justify-self: start !important;
		margin-inline-start: clamp(0px, 0.75vw, 12px) !important;
	}

	.aboi-native-header-actions {
		grid-column: 3 !important;
		justify-self: end !important;
	}
}

/* Cabeçalho intermediário e móvel compacto. */
@media (max-width: 1280px) {
	.aboi-native-header,
	.aboi-native-header > .e-con-inner,
	.aboi-native-header-inner,
	.aboi-native-header-inner > .e-con-inner {
		min-height: 64px !important;
	}

	.aboi-native-header-inner > .e-con-inner {
		display: flex !important;
		flex-flow: row nowrap !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: clamp(8px, 1.5vw, 16px) !important;
		padding-inline: clamp(16px, 3vw, 28px) !important;
	}

	.aboi-native-header-logo {
		flex: 0 0 auto !important;
		width: clamp(76px, 9vw, 88px) !important;
		max-width: 88px !important;
	}

	.aboi-native-header-logo img {
		width: 100% !important;
		height: 56px !important;
	}

	.aboi-native-menu {
		display: flex !important;
		flex: 0 0 44px !important;
		align-self: center !important;
		align-items: center !important;
		justify-content: center !important;
		width: 44px !important;
		max-width: 44px !important;
		height: 44px !important;
		margin-inline-start: auto !important;
		overflow: visible !important;
	}

	.aboi-native-menu .elementor-nav-menu--main {
		display: none !important;
	}

	.aboi-native-menu .elementor-menu-toggle {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 44px !important;
		height: 44px !important;
		margin: 0 !important;
		padding: 8px !important;
		color: #fff;
		background: transparent !important;
		border: 0 !important;
		border-radius: 10px !important;
	}

	.aboi-native-cart {
		flex: 0 0 auto !important;
		margin: 0 !important;
	}

	.aboi-native-header-actions {
		flex: 0 0 auto !important;
	}
}

@media (max-width: 767px) {
	.aboi-native-header-inner > .e-con-inner {
		height: 64px !important;
		padding-inline: 16px !important;
	}

	.aboi-native-header-actions {
		display: none !important;
	}
}

/* Minicarrinho lateral coerente com o design atual. */
.aboi-native-cart .elementor-menu-cart__container {
	background: rgba(15, 23, 42, 0.56) !important;
	backdrop-filter: blur(3px);
}

.aboi-native-cart .elementor-menu-cart__main {
	width: min(92vw, 420px) !important;
	padding: clamp(20px, 3vw, 32px) !important;
	background: #fff !important;
	color: #1e3a5f;
	box-shadow: -16px 0 40px rgba(15, 23, 42, 0.18) !important;
}

.aboi-native-cart .elementor-menu-cart__close-button {
	color: #1e3a5f;
}

.aboi-native-cart .elementor-menu-cart__products {
	margin-block: 12px 0 !important;
}

.aboi-native-cart .elementor-menu-cart__product {
	padding-block: 16px !important;
	border-bottom: 1px solid #e2e8f0 !important;
}

.aboi-native-cart .elementor-menu-cart__product-image img {
	width: 100% !important;
	aspect-ratio: 1 !important;
	object-fit: cover !important;
	border-radius: 10px !important;
}

.aboi-native-cart .elementor-menu-cart__product-name a {
	color: #1e3a5f;
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
}

.aboi-native-cart .elementor-menu-cart__product-price,
.aboi-native-cart .elementor-menu-cart__product-price * {
	color: #64748b;
	font-size: 14px;
}

.aboi-native-cart .elementor-menu-cart__product-remove {
	border-color: #cbd5e1 !important;
	color: #64748b;
}

.aboi-native-cart .elementor-menu-cart__subtotal {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px !important;
	margin-top: 8px !important;
	padding-block: 20px !important;
	border-block: 1px solid #e2e8f0 !important;
	color: #1e3a5f;
	font-size: 17px;
}

.aboi-native-cart .elementor-menu-cart__subtotal * {
	color: inherit;
	font-size: inherit;
}

.aboi-native-cart .elementor-menu-cart__footer-buttons {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 12px !important;
	padding-top: 20px !important;
}

.aboi-native-cart .elementor-menu-cart__footer-buttons .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 0 !important;
	min-height: 46px !important;
	padding: 10px 14px !important;
	border-radius: 10px !important;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
}

.aboi-native-cart .elementor-button--view-cart {
	border: 1px solid #1e3a5f !important;
	background: #fff !important;
	color: #1e3a5f;
}

.aboi-native-cart .elementor-button--checkout {
	border: 1px solid #0891b2 !important;
	background: #0891b2 !important;
	color: #fff;
}

.aboi-native-cart .elementor-button--view-cart:hover {
	background: #f1f5f9 !important;
}

.aboi-native-cart .elementor-button--checkout:hover {
	background: #0e7490 !important;
	border-color: #0e7490 !important;
}

@media (max-width: 480px) {
	.aboi-native-cart .elementor-menu-cart__main {
		width: 100vw !important;
		padding: 20px !important;
	}

	.aboi-native-cart .elementor-menu-cart__footer-buttons {
		grid-template-columns: 1fr !important;
	}
}


/* Filtros de disponibilidade dos e-books, ligados a consulta do WooCommerce. */
.aboi-ebook-filter-pills {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: clamp(8px, 1vw, 12px);
	width: 100%;
	margin: 0 auto clamp(32px, 4vw, 48px);
}

.aboi-filter-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 9px 18px;
	border: 1px solid var(--aboi-color-border);
	border-radius: 999px;
	background: var(--aboi-color-white);
	color: var(--aboi-color-primary);
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	text-decoration: none;
	transition: color 180ms, background-color 180ms, border-color 180ms, transform 180ms;
}

.aboi-filter-pill:hover,
.aboi-filter-pill:focus-visible {
	border-color: var(--aboi-color-aqua);
	background: var(--aboi-color-primary-mist);
	color: var(--aboi-color-primary);
	transform: translateY(-1px);
}

.aboi-filter-pill.is-active {
	border-color: var(--aboi-color-primary);
	background: var(--aboi-color-primary);
	color: var(--aboi-color-white);
}

@media (max-width: 767px) {
	.aboi-ebook-filter-pills {
		justify-content: flex-start;
		flex-wrap: nowrap;
		overflow-x: auto;
		padding: 0 2px 8px;
		scrollbar-width: thin;
	}

	.aboi-filter-pill {
		flex: 0 0 auto;
	}
}



/* ABOI: paridade visual dos catalogos de referencia */

/* Cursos Premium: mesma hierarquia da pagina de referencia. */
body.elementor-page-224 .elementor-224 {
	display: flex;
	flex-direction: column;
}

body.elementor-page-224 .elementor-element-7ef2ca61 {
	order: 1;
	padding: clamp(112px, 10vw, 144px) clamp(20px, 4vw, 32px) clamp(64px, 6vw, 80px) !important;
	background: #fff !important;
}

body.elementor-page-224 .elementor-element-e4933b1b {
	order: 2;
	padding: clamp(48px, 5vw, 56px) clamp(20px, 4vw, 32px) !important;
	background: #f8fafc !important;
}

body.elementor-page-224 .elementor-element-75a5ca84 {
	order: 3;
	padding: clamp(48px, 5vw, 64px) clamp(20px, 4vw, 32px) !important;
	background: #fff !important;
}

body.elementor-page-224 .elementor-element-ae42ac1e,
body.elementor-page-224 .elementor-element-573bdff9 {
	display: none !important;
}

body.elementor-page-224 .aboi-native-course-loop {
	margin-top: 0 !important;
}

/* E-books: hero em gradiente, filtros e cards como na referencia. */
body.elementor-page-225 .elementor-element-e14ad959 {
	padding: clamp(112px, 10vw, 144px) clamp(20px, 4vw, 32px) clamp(64px, 6vw, 80px) !important;
	background: linear-gradient(100deg, #1e3a5f 0%, #0891b2 100%) !important;
}

body.elementor-page-225 .elementor-element-adba5623 {
	display: none !important;
}

body.elementor-page-225 .elementor-element-aa68d2f9 .elementor-heading-title,
body.elementor-page-225 .elementor-element-00767f5f,
body.elementor-page-225 .elementor-element-00767f5f p {
	color: #fff;
}

body.elementor-page-225 .elementor-element-aa68d2f9 .elementor-heading-title {
	font-size: clamp(38px, 4vw, 56px);
	line-height: 1.1;
}

body.elementor-page-225 .elementor-element-00767f5f {
	max-width: 880px;
	font-size: clamp(16px, 1.5vw, 18px);
	line-height: 1.7;
}

body.elementor-page-225 .elementor-element-f936b524 {
	padding: clamp(40px, 5vw, 56px) clamp(20px, 4vw, 32px) clamp(56px, 6vw, 72px) !important;
	background: #fff !important;
}

body.elementor-page-225 .elementor-element-7d60c443 {
	display: none !important;
}

body.elementor-page-225 .elementor-element-07843b5a {
	display: none !important;
}

body.elementor-page-225 .aboi-native-ebook-loop {
	margin-top: 0 !important;
}

body.elementor-page-225 .aboi-native-ebook-loop .elementor-loop-container {
	gap: clamp(20px, 2vw, 28px) !important;
}

@media (max-width: 767px) {
	body.elementor-page-224 .elementor-element-7ef2ca61,
	body.elementor-page-225 .elementor-element-e14ad959 {
		padding-top: 96px !important;
		padding-bottom: 56px !important;
	}

	body.elementor-page-224 .elementor-element-845d444a .elementor-heading-title {
		font-size: clamp(34px, 11vw, 44px);
	}

	body.elementor-page-225 .elementor-element-aa68d2f9 .elementor-heading-title {
		font-size: clamp(34px, 11vw, 44px);
	}
}

/* Carrinho, checkout e navegação responsiva. */
body.woocommerce-cart .e-con:has(.elementor-widget-heading h1.elementor-heading-title)::before {
	content: none !important;
	background: transparent !important;
}

.woocommerce-cart tr.woocommerce-cart-form__cart-item td.product-subtotal {
	display: none !important;
}

.woocommerce-cart :is(
	.cart_totals h2,
	.checkout-button,
	button[name="update_cart"],
	button[name="apply_coupon"]
)::after {
	content: none !important;
	display: none !important;
}

.woocommerce-cart .cart_totals h2 {
	font-size: clamp(22px, 2vw, 26px);
}

.woocommerce-cart :is(
	.checkout-button,
	button[name="update_cart"],
	button[name="apply_coupon"]
) {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
	box-shadow: none !important;
}

.woocommerce-cart td.actions {
	justify-content: flex-end !important;
	padding: 16px 24px !important;
	border-top: 1px solid var(--aboi-line, #e2e8f0) !important;
	background: #f8fafc !important;
}

.woocommerce-cart button[name="update_cart"] {
	min-height: 44px !important;
	margin: 0 !important;
	border: 1px solid var(--aboi-navy, #1e3a5f) !important;
	background: var(--aboi-navy, #1e3a5f) !important;
	color: #fff;
	opacity: 1 !important;
}

.woocommerce-cart button[name="update_cart"]:disabled {
	border-color: #cbd5e1 !important;
	background: #e2e8f0 !important;
	color: #64748b;
	cursor: not-allowed !important;
}

.woocommerce-cart .coupon.e-cart-section {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(132px, auto) !important;
	gap: 12px !important;
	align-items: center !important;
	padding: 18px !important;
	border: 1px solid var(--aboi-line, #e2e8f0) !important;
	border-radius: 14px !important;
	background: #fff !important;
}

.woocommerce-cart .coupon.e-cart-section input {
	width: 100% !important;
	min-width: 0 !important;
	min-height: 46px !important;
}

.woocommerce-cart button[name="apply_coupon"],
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	min-height: 46px !important;
	border: 1px solid var(--aboi-cyan, #0891b2) !important;
	background: var(--aboi-cyan, #0891b2) !important;
	color: #fff;
}

.woocommerce-cart button[name="apply_coupon"]:hover,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
	border-color: #0e7490 !important;
	background: #0e7490 !important;
}

@media (max-width: 1280px) {
	.aboi-native-menu {
		position: relative !important;
		overflow: visible !important;
	}

	.aboi-native-menu .elementor-menu-toggle svg,
	.aboi-native-menu .elementor-menu-toggle path {
		fill: currentColor !important;
	}

	.aboi-native-menu .elementor-nav-menu--dropdown {
		position: absolute !important;
		top: calc(100% + 10px) !important;
		right: 0 !important;
		left: auto !important;
		width: min(360px, calc(100vw - 32px)) !important;
		height: auto !important;
		margin: 0 !important;
		border: 1px solid var(--aboi-line, #e2e8f0) !important;
		border-radius: 14px !important;
		background: #fff !important;
		box-shadow: 0 18px 42px rgb(15 23 42 / 18%) !important;
	}

	.aboi-native-menu .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {
		height: auto !important;
		max-height: min(560px, calc(100vh - 96px)) !important;
	}

	.aboi-native-menu .elementor-nav-menu--dropdown .elementor-nav-menu {
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;
		width: 100% !important;
		height: auto !important;
	}

	.aboi-native-menu .elementor-nav-menu--dropdown :is(li, a.elementor-item) {
		width: 100% !important;
	}

	.aboi-native-menu .elementor-nav-menu--dropdown a.elementor-item {
		display: flex !important;
		justify-content: flex-start !important;
		padding: 13px 18px !important;
		border-bottom: 1px solid #eef2f7 !important;
		background: #fff !important;
		color: var(--aboi-navy, #1e3a5f);
		font-size: 14px;
		line-height: 1.35;
	}

	.aboi-native-menu .elementor-nav-menu--dropdown li:last-child a.elementor-item {
		border-bottom: 0 !important;
	}

	.aboi-native-menu .elementor-nav-menu--dropdown a.elementor-item:is(:hover, :focus, .elementor-item-active) {
		background: #f0f9fc !important;
		color: var(--aboi-cyan, #0891b2);
	}
}

/* Mantém o menu principal centralizado em telas de notebook e desktop. */
@media (min-width: 1181px) {
	.aboi-native-header-inner > .e-con-inner {
		display: grid !important;
		grid-template-columns: 100px minmax(0, 1fr) 44px auto !important;
		align-items: center !important;
		column-gap: 16px !important;
		width: 100% !important;
		max-width: 1280px !important;
		margin: 0 auto !important;
		padding: 0 32px !important;
	}

	.aboi-native-menu {
		display: block !important;
		grid-area: 1 / 2 !important;
		width: auto !important;
		max-width: none !important;
		height: auto !important;
		margin: 0 !important;
		overflow: visible !important;
	}

	.aboi-native-menu .elementor-nav-menu--main {
		display: block !important;
		position: static !important;
		width: 100% !important;
		height: auto !important;
	}

	.aboi-native-menu .elementor-nav-menu {
		display: flex !important;
		justify-content: center !important;
		gap: clamp(14px, 1.6vw, 28px) !important;
		flex-wrap: nowrap !important;
	}

	.aboi-native-menu .elementor-item {
		white-space: nowrap !important;
	}

	.aboi-native-menu .elementor-menu-toggle,
	.aboi-native-menu .elementor-nav-menu--dropdown {
		display: none !important;
	}

	.aboi-native-cart {
		grid-area: 1 / 3 !important;
		margin: 0 !important;
	}

	.aboi-native-header-actions {
		grid-area: 1 / 4 !important;
	}
}

@media (max-width: 767px) {
	.aboi-native-header-logo {
		order: 1 !important;
	}

	.aboi-native-menu .elementor-nav-menu--dropdown {
		right: -10px !important;
		width: min(360px, calc(100vw - 48px)) !important;
	}

	.aboi-native-header-actions {
		display: flex !important;
		order: 2 !important;
		flex: 0 0 44px !important;
		width: 44px !important;
		max-width: 44px !important;
		margin-left: auto !important;
	}

	.aboi-native-header-actions > .e-con-inner {
		display: flex !important;
		width: 44px !important;
		min-height: 44px !important;
		padding: 0 !important;
	}

	.aboi-native-cart {
		display: block !important;
		width: 44px !important;
		max-width: 44px !important;
	}

	.aboi-native-header-actions :is(.aboi-native-login, .aboi-native-register) {
		display: none !important;
	}

	.aboi-native-menu {
		order: 3 !important;
		margin-left: 0 !important;
	}

	.woocommerce-cart tr.woocommerce-cart-form__cart-item {
		min-height: 0 !important;
	}

	.woocommerce-cart td.actions {
		padding: 14px 18px !important;
	}

	.woocommerce-cart td.actions > button[name="update_cart"] {
		width: 100% !important;
	}

	.woocommerce-cart .coupon.e-cart-section {
		grid-template-columns: 1fr !important;
		padding: 16px !important;
	}

	.woocommerce-cart .coupon.e-cart-section button {
		width: 100% !important;
	}
}

/* Paridade da página Cursos Premium com a referência. */
body.elementor-page-224 .elementor-224 {
	display: flex;
	flex-direction: column;
}

body.elementor-page-224 .elementor-element-7ef2ca61 {
	order: 1;
	padding: clamp(72px, 7vw, 88px) clamp(20px, 4vw, 32px) clamp(64px, 6vw, 80px) !important;
	background: #fff !important;
}

body.elementor-page-224 .elementor-element-7ef2ca61 > .e-con-inner {
	max-width: 900px !important;
	align-items: center !important;
	gap: 20px !important;
}

body.elementor-page-224 .elementor-element-c25c253a {
	width: auto !important;
	margin: 0 !important;
	padding: 5px 14px !important;
	border-radius: 999px !important;
	background: #eaf7fa !important;
}

body.elementor-page-224 .elementor-element-c25c253a .elementor-heading-title {
	color: var(--aboi-cyan, #0891b2);
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	line-height: 16px;
	letter-spacing: 0.05em;
	text-align: center !important;
	text-transform: uppercase;
}

body.elementor-page-224 .elementor-element-845d444a,
body.elementor-page-224 .elementor-element-d171389e {
	width: 100% !important;
	margin: 0 !important;
}

body.elementor-page-224 .elementor-element-845d444a .elementor-heading-title {
	font-family: "Montserrat", sans-serif;
	font-size: clamp(40px, 4.2vw, 54px);
	line-height: 1.1;
	text-align: center !important;
}

body.elementor-page-224 .aboi-premium-intro {
	display: grid;
	gap: 16px;
	max-width: 860px;
	margin: 0 auto;
}

body.elementor-page-224 .aboi-premium-intro p {
	margin: 0 !important;
	color: var(--aboi-copy, #475569);
	font-family: "Montserrat", sans-serif;
	font-size: clamp(16px, 1.5vw, 18px);
	line-height: 1.65;
	text-align: center !important;
}

body.elementor-page-224 .elementor-element-e4933b1b {
	order: 2;
	padding: clamp(48px, 5vw, 60px) clamp(20px, 4vw, 32px) !important;
	background: #f8fafc !important;
}

body.elementor-page-224 .elementor-element-e4933b1b > .e-con-inner {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 28px !important;
	max-width: 960px !important;
}

body.elementor-page-224 .elementor-element-ea6205b8 {
	width: 100% !important;
	margin: 0 !important;
}

body.elementor-page-224 .elementor-element-ea6205b8 .elementor-heading-title {
	font-family: "Montserrat", sans-serif;
	font-size: clamp(26px, 2.6vw, 32px);
	line-height: 1.25;
	text-align: center !important;
}

body.elementor-page-224 .aboi-feature-card {
	display: none !important;
}

body.elementor-page-224 .aboi-premium-feature-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	width: 100%;
}

body.elementor-page-224 .aboi-premium-feature {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
	min-height: 58px;
	padding: 14px 18px;
	border: 1px solid #e8edf2;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 2px 7px rgb(15 23 42 / 5%);
	color: var(--aboi-copy, #475569);
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	line-height: 1.45;
}

body.elementor-page-224 .aboi-premium-feature-icon {
	display: inline-flex;
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	align-items: center;
	justify-content: center;
	border: 1.5px solid var(--aboi-cyan, #0891b2);
	border-radius: 50%;
	color: var(--aboi-cyan, #0891b2);
	font-family: Arial, sans-serif;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
}

body.elementor-page-224 .elementor-element-75a5ca84 {
	order: 3;
	padding: clamp(52px, 5vw, 64px) clamp(20px, 4vw, 32px) clamp(64px, 6vw, 80px) !important;
	background: #fff !important;
}

body.elementor-page-224 .elementor-element-ae42ac1e,
body.elementor-page-224 .elementor-element-573bdff9 {
	display: none !important;
}

body.elementor-page-224 .aboi-native-course-loop {
	margin: 0 !important;
}

body.elementor-page-224 .elementor-221 .aboi-product-card {
	grid-template-columns: minmax(0, 1fr) minmax(0, 0.42fr) minmax(0, 0.58fr) !important;
	height: auto !important;
	min-height: 500px !important;
}

body.elementor-page-224 .elementor-221 .aboi-product-card__image,
body.elementor-page-224 .elementor-221 .aboi-product-card__image a,
body.elementor-page-224 .elementor-221 .aboi-product-card__image img {
	height: 100% !important;
	min-height: 500px !important;
}

body.elementor-page-224 .elementor-221 .aboi-loop-description,
body.elementor-page-224 .elementor-221 .aboi-loop-description p {
	font-size: 16px;
	line-height: 1.5;
}

body.elementor-page-224 .elementor-221 .aboi-loop-facts {
	margin-bottom: 18px !important;
}

body.elementor-page-224 .elementor-221 .aboi-loop-facts .aboi-product-facts {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px 22px !important;
}

body.elementor-page-224 .elementor-221 .aboi-loop-facts .aboi-product-fact {
	padding: 0 !important;
	border: 0 !important;
}

body.elementor-page-224 .elementor-221 .aboi-product-fact:nth-child(1) {
	grid-area: 2 / 1;
}

body.elementor-page-224 .elementor-221 .aboi-product-fact:nth-child(2) {
	grid-area: 1 / 1;
}

body.elementor-page-224 .elementor-221 .aboi-product-fact:nth-child(3) {
	grid-area: 1 / 2;
}

body.elementor-page-224 .elementor-221 .aboi-product-fact:nth-child(4) {
	grid-area: 2 / 2;
}

body.elementor-page-224 .elementor-221 .aboi-product-fact:nth-child(5) {
	grid-area: 3 / 1;
}

body.elementor-page-224 .elementor-221 :is(.aboi-loop-details, .aboi-loop-cart) {
	margin-bottom: 32px !important;
}

.aboi-premium-cta {
	padding: clamp(72px, 8vw, 96px) 20px;
	background: var(--aboi-navy, #1e3a5f);
	color: #fff;
}

.aboi-premium-cta__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 760px;
	margin: 0 auto;
	text-align: center;
}

.aboi-premium-cta h2 {
	max-width: 680px;
	margin: 0 0 22px;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: clamp(32px, 3.6vw, 44px);
	line-height: 1.15;
}

.aboi-premium-cta p {
	max-width: 720px;
	margin: 0 0 30px;
	color: #e2e8f0;
	font-family: "Montserrat", sans-serif;
	font-size: clamp(16px, 1.5vw, 18px);
	line-height: 1.65;
}

.aboi-premium-cta__button {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 12px 26px;
	border-radius: 9px;
	background: var(--aboi-cyan, #0891b2);
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
}

.aboi-premium-cta__button:hover {
	background: #0e7490;
}

@media (max-width: 900px) {
	body.elementor-page-224 .aboi-premium-feature-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.elementor-page-224 .elementor-221 .aboi-product-card,
	body.elementor-page-224 .elementor-221 .aboi-product-card__image,
	body.elementor-page-224 .elementor-221 .aboi-product-card__image a,
	body.elementor-page-224 .elementor-221 .aboi-product-card__image img {
		min-height: 460px !important;
	}
}

@media (max-width: 767px) {
	body.elementor-page-224 .elementor-element-7ef2ca61 {
		padding-top: 88px !important;
		padding-bottom: 52px !important;
	}

	body.elementor-page-224 .elementor-element-845d444a .elementor-heading-title {
		font-size: clamp(34px, 11vw, 44px);
	}

	body.elementor-page-224 .aboi-premium-feature-grid {
		grid-template-columns: 1fr;
	}

	body.elementor-page-224 .elementor-221 .aboi-product-card,
	body.elementor-page-224 .elementor-221 .aboi-product-card__image,
	body.elementor-page-224 .elementor-221 .aboi-product-card__image a,
	body.elementor-page-224 .elementor-221 .aboi-product-card__image img {
		min-height: 0 !important;
	}

	body.elementor-page-224 .elementor-221 .aboi-product-card__image,
	body.elementor-page-224 .elementor-221 .aboi-product-card__image a,
	body.elementor-page-224 .elementor-221 .aboi-product-card__image img {
		height: 260px !important;
	}

	body.elementor-page-224 .elementor-221 .aboi-loop-facts .aboi-product-facts {
		grid-template-columns: 1fr !important;
	}

	body.elementor-page-224 .elementor-221 .aboi-product-fact:nth-child(n) {
		grid-area: auto;
	}

	.aboi-premium-cta {
		padding: 64px 20px;
	}
}

/* Revisão de largura, cabeçalho e Single Product. */
body.elementor-page-224 .elementor-element-e4933b1b > .e-con-inner {
	align-items: stretch !important;
	width: 100% !important;
}

body.elementor-page-224 .aboi-premium-feature-grid {
	flex: 0 0 100% !important;
	grid-column: 1 / -1 !important;
	justify-self: stretch !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
}

@media (min-width: 1181px) {
	.aboi-native-header-inner > .e-con-inner {
		position: relative !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: 16px !important;
		width: 100% !important;
		max-width: 1280px !important;
		margin: 0 auto !important;
		padding: 0 32px !important;
	}

	.aboi-native-header-logo {
		flex: 0 0 100px !important;
	}

	.aboi-native-menu {
		position: absolute !important;
		left: 50% !important;
		display: block !important;
		flex: 0 0 auto !important;
		width: max-content !important;
		max-width: none !important;
		height: auto !important;
		margin: 0 !important;
		transform: translateX(-50%) !important;
	}

	.aboi-native-menu .elementor-nav-menu--main {
		display: block !important;
		width: auto !important;
	}

	.aboi-native-menu .elementor-nav-menu {
		gap: clamp(12px, 1vw, 18px) !important;
	}

	.aboi-native-header-actions {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: max-content !important;
		margin-left: auto !important;
	}

	.aboi-native-cart {
		flex: 0 0 44px !important;
		margin-left: 0 !important;
	}

	.aboi-native-header-actions > .e-con-inner {
		width: auto !important;
		max-width: max-content !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.elementor-location-single.elementor-226 {
		grid-template-columns: 1fr !important;
		width: calc(100% - (2 * var(--aboi-gutter))) !important;
	}

	.elementor-226 .aboi-single-breadcrumb {
		grid-column: 1 !important;
		grid-row: 1 !important;
	}

	.elementor-226 .aboi-single-image {
		grid-column: 1 !important;
		grid-row: 2 !important;
	}

	.elementor-226 .aboi-single-summary {
		grid-column: 1 !important;
		grid-row: 3 !important;
		margin-top: 24px !important;
	}

	.elementor-226 .aboi-single-aside {
		grid-column: 1 !important;
		grid-row: 4 !important;
		margin-top: 28px !important;
	}

	.elementor-226 .aboi-single-main-copy {
		grid-column: 1 !important;
		grid-row: 5 !important;
		margin-top: 40px !important;
	}

	.elementor-226 .aboi-single-purchase-card {
		position: static !important;
	}
}


/* ========================================================================== */
/* Header global canônico — alinhamento vertical e responsividade estáveis   */
/* ========================================================================== */
.elementor-location-header .aboi-native-header,
.elementor-location-header .aboi-native-header > .e-con-inner,
.elementor-location-header .aboi-native-header-inner,
.elementor-location-header .aboi-native-header-inner > .e-con-inner {
  height: 64px !important;
  min-height: 64px !important;
  max-height: 64px !important;
}
.elementor-location-header .aboi-native-header,
.elementor-location-header .aboi-native-header > .e-con-inner,
.elementor-location-header .aboi-native-header-inner {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.elementor-location-header .aboi-native-header-inner > .e-con-inner {
  position: relative !important;
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 32px !important;
  box-sizing: border-box !important;
}
.elementor-location-header .aboi-native-header-logo {
  display: flex !important;
  flex: 0 0 100px !important;
  align-self: center !important;
  align-items: center !important;
  width: 100px !important;
  height: 56px !important;
  margin: 0 !important;
}
.elementor-location-header .aboi-native-header-logo > .elementor-widget-container {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  height: 56px !important;
}
.elementor-location-header .aboi-native-header-logo img {
  display: block !important;
  width: 100px !important;
  height: 56px !important;
  margin: 0 !important;
  object-fit: contain !important;
}
.elementor-location-header .aboi-native-menu {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  display: flex !important;
  align-self: center !important;
  align-items: center !important;
  justify-content: center !important;
  width: max-content !important;
  max-width: calc(100% - 440px) !important;
  height: 44px !important;
  margin: 0 !important;
  transform: translate(-50%, -50%) !important;
}
.elementor-location-header .aboi-native-menu > .elementor-widget-container,
.elementor-location-header .aboi-native-menu .elementor-nav-menu--main,
.elementor-location-header .aboi-native-menu .elementor-nav-menu--main .elementor-nav-menu {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 44px !important;
  min-height: 44px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.elementor-location-header .aboi-native-menu .elementor-nav-menu--main .elementor-nav-menu {
  flex-flow: row nowrap !important;
  gap: clamp(12px, 1vw, 18px) !important;
}
.elementor-location-header .aboi-native-menu .elementor-item {
  display: flex !important;
  align-items: center !important;
  min-height: 44px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 20px;
  white-space: nowrap !important;
}
.elementor-location-header .aboi-native-header-actions {
  display: flex !important;
  flex: 0 0 auto !important;
  align-self: center !important;
  align-items: center !important;
  width: auto !important;
  max-width: max-content !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 0 0 auto !important;
}
.elementor-location-header .aboi-native-header-actions > .e-con-inner {
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  width: auto !important;
  max-width: max-content !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 16px !important;
}
.elementor-location-header .aboi-native-header-actions :is(.elementor-widget, .elementor-button-wrapper, .elementor-button, .aboi-native-cart, .aboi-native-cart > .elementor-widget-container) {
  align-self: center !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.elementor-location-header .aboi-native-header-actions .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

@media (max-width: 1180px) {
  .elementor-location-header .aboi-native-header-inner > .e-con-inner {
    padding-inline: 24px !important;
    gap: 12px !important;
  }
  .elementor-location-header .aboi-native-header-logo {
    flex-basis: 88px !important;
    width: 88px !important;
  }
  .elementor-location-header .aboi-native-header-logo img {
    width: 88px !important;
  }
  .elementor-location-header .aboi-native-menu {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    margin: 0 0 0 auto !important;
    transform: none !important;
  }
  .elementor-location-header .aboi-native-menu > .elementor-widget-container {
    width: 44px !important;
    height: 44px !important;
  }
  .elementor-location-header .aboi-native-menu .elementor-nav-menu--main {
    display: none !important;
  }
  .elementor-location-header .aboi-native-menu .elementor-menu-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 8px !important;
  }
}
@media (max-width: 767px) {
  .elementor-location-header .aboi-native-header-inner > .e-con-inner {
    padding-inline: 16px !important;
    gap: 10px !important;
  }
  .elementor-location-header .aboi-native-header-logo {
    order: 1 !important;
  }
  .elementor-location-header .aboi-native-header-actions {
    order: 2 !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    max-width: 44px !important;
    margin-left: auto !important;
  }
  .elementor-location-header .aboi-native-header-actions > .e-con-inner {
    width: 44px !important;
    max-width: 44px !important;
    gap: 0 !important;
  }
  .elementor-location-header .aboi-native-header-actions :is(.aboi-native-login, .aboi-native-register) {
    display: none !important;
  }
  .elementor-location-header .aboi-native-menu {
    order: 3 !important;
    margin-left: 0 !important;
  }
}


/* Elementor controls heading color and weight; theme keeps only font fallbacks. */
html body :is(
	p, button, input, textarea, select, label,
	.elementor-button,
	.elementor-nav-menu .elementor-item,
	.woocommerce-message,
	.woocommerce-error,
	.woocommerce-info
) {
	font-family: "Montserrat", sans-serif;
}


/* ABOI WOOCOMMERCE RUBIK NORMALIZATION */
html body:not(#aboi-rubik-normalization) :is(
	.elementor-widget-woocommerce-my-account,
	.elementor-widget-woocommerce-checkout-page,
	.woocommerce,
	.woocommerce-page,
	[class*="woocommerce"]
),
html body:not(#aboi-rubik-normalization) :is(
	nav, ul, ol, li, p, strong, em, small, label,
	form, table, thead, tbody, tr, th, td,
	button, input, textarea, select, option
) {
	font-family: "Montserrat", sans-serif;
}


/* ABOI HEADER STABLE LAYOUT V1
 * Canonical layout bound to the real global header container.
 */
html body:not(#aboi-header-stable) .aboi-native-header {
	position: relative !important;
	z-index: 1000 !important;
	display: block !important;
	width: 100% !important;
	min-height: 64px !important;
	margin: 0 !important;
	padding: 0 !important;
}

html body:not(#aboi-header-stable) .aboi-native-header > .e-con-inner,
html body:not(#aboi-header-stable) .aboi-native-header-inner {
	width: 100% !important;
	max-width: none !important;
	min-height: 64px !important;
	margin: 0 !important;
	padding: 0 !important;
}

html body:not(#aboi-header-stable) .aboi-native-header-inner > .e-con-inner {
	position: relative !important;
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: center !important;
	width: min(100%, 1280px) !important;
	max-width: 1280px !important;
	height: 64px !important;
	min-height: 64px !important;
	margin: 0 auto !important;
	padding: 0 32px !important;
	gap: 16px !important;
}

html body:not(#aboi-header-stable) .aboi-native-header-logo {
	order: 1 !important;
	display: flex !important;
	flex: 0 0 100px !important;
	align-self: center !important;
	align-items: center !important;
	width: 100px !important;
	max-width: 100px !important;
	height: 56px !important;
	margin: 0 !important;
	padding: 0 !important;
}

html body:not(#aboi-header-stable) .aboi-native-header-logo > .elementor-widget-container {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	height: 56px !important;
}

html body:not(#aboi-header-stable) .aboi-native-header-logo img {
	display: block !important;
	width: 100px !important;
	height: 56px !important;
	margin: 0 !important;
	object-fit: contain !important;
}

html body:not(#aboi-header-stable) .aboi-native-menu {
	order: 2 !important;
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: max-content !important;
	max-width: calc(100% - 480px) !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: translate(-50%, -50%) !important;
}

html body:not(#aboi-header-stable) .aboi-native-menu > .elementor-widget-container,
html body:not(#aboi-header-stable) .aboi-native-menu .elementor-nav-menu--main,
html body:not(#aboi-header-stable) .aboi-native-menu .elementor-nav-menu--main .elementor-nav-menu {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 44px !important;
	margin: 0 !important;
}

html body:not(#aboi-header-stable) .aboi-native-menu .elementor-nav-menu--main .elementor-nav-menu {
	flex-flow: row nowrap !important;
	gap: clamp(10px, 1vw, 18px) !important;
}

html body:not(#aboi-header-stable) .aboi-native-menu .elementor-item {
	display: flex !important;
	align-items: center !important;
	min-height: 44px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	line-height: 20px;
	white-space: nowrap !important;
}

html body:not(#aboi-header-stable) .aboi-native-menu .elementor-menu-toggle {
	display: none !important;
}

html body:not(#aboi-header-stable) .aboi-native-cart {
	order: 3 !important;
	display: block !important;
	flex: 0 0 44px !important;
	align-self: center !important;
	width: 44px !important;
	max-width: 44px !important;
	height: 44px !important;
	margin: 0 0 0 auto !important;
	padding: 0 !important;
}

html body:not(#aboi-header-stable) .aboi-native-cart > .elementor-widget-container,
html body:not(#aboi-header-stable) .aboi-native-cart .elementor-menu-cart__toggle,
html body:not(#aboi-header-stable) .aboi-native-cart .elementor-button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 44px !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
}

html body:not(#aboi-header-stable) .aboi-native-header-actions {
	order: 4 !important;
	display: flex !important;
	flex: 0 0 auto !important;
	align-self: center !important;
	align-items: center !important;
	width: auto !important;
	max-width: max-content !important;
	height: 44px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
}

html body:not(#aboi-header-stable) .aboi-native-header-actions > .e-con-inner {
	display: flex !important;
	flex-flow: row nowrap !important;
	align-items: center !important;
	width: auto !important;
	max-width: max-content !important;
	height: 44px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 16px !important;
}

@media (max-width: 1180px) {
	html body:not(#aboi-header-stable) .aboi-native-header-inner > .e-con-inner {
		padding-inline: 20px !important;
		gap: 10px !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-header-logo {
		flex-basis: 88px !important;
		width: 88px !important;
		max-width: 88px !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-header-logo img {
		width: 88px !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-cart {
		order: 2 !important;
		margin-left: auto !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-header-actions {
		order: 3 !important;
		margin-left: 0 !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-menu {
		order: 4 !important;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		flex: 0 0 44px !important;
		width: 44px !important;
		max-width: 44px !important;
		height: 44px !important;
		margin: 0 !important;
		transform: none !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-menu > .elementor-widget-container {
		position: relative !important;
		width: 44px !important;
		height: 44px !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-menu .elementor-nav-menu--main {
		display: none !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-menu .elementor-menu-toggle {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 44px !important;
		height: 44px !important;
		margin: 0 !important;
		padding: 8px !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-menu .elementor-nav-menu--dropdown {
		position: absolute !important;
		top: 54px !important;
		right: 0 !important;
		left: auto !important;
		z-index: 1002 !important;
		width: min(320px, calc(100vw - 32px)) !important;
		margin: 0 !important;
	}
}

@media (max-width: 767px) {
	html body:not(#aboi-header-stable) .aboi-native-header-inner > .e-con-inner {
		padding-inline: 16px !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-header-actions {
		display: none !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-header-logo {
		flex-basis: 88px !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-cart {
		order: 2 !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-menu {
		order: 3 !important;
	}
}


/* ABOI HEADER STABLE PATCH V2
 * Removes stale sticky offsets and supports both cart placements.
 */
html body:not(#aboi-header-stable):has(> .elementor-location-header) {
	padding-top: 0 !important;
}

html body:not(#aboi-header-stable) > .elementor-location-header,
html body:not(#aboi-header-stable) .aboi-native-header {
	top: 0 !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
}

html body:not(#aboi-header-stable) .aboi-native-header-actions {
	margin-left: auto !important;
}

/* Home: cart is a sibling before actions. */
html body:not(#aboi-header-stable) .aboi-native-header-inner > .e-con-inner > .aboi-native-cart + .aboi-native-header-actions {
	margin-left: 0 !important;
}


/* ABOI HEADER STABLE PATCH V3
 * Same action order in embedded and Theme Builder structures.
 */
html body:not(#aboi-header-stable) .aboi-native-header-actions .aboi-native-cart {
	order: 1 !important;
	margin-left: 0 !important;
}

html body:not(#aboi-header-stable) .aboi-native-header-actions .aboi-native-login {
	order: 2 !important;
}

html body:not(#aboi-header-stable) .aboi-native-header-actions .aboi-native-register {
	order: 3 !important;
}

@media (max-width: 767px) {
	html body:not(#aboi-header-stable) .aboi-native-header-actions :is(.aboi-native-login, .aboi-native-register) {
		display: none !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-header-actions:has(.aboi-native-cart) {
		order: 2 !important;
		display: flex !important;
		flex: 0 0 44px !important;
		width: 44px !important;
		max-width: 44px !important;
		margin-left: auto !important;
	}

	html body:not(#aboi-header-stable) .aboi-native-header-actions:has(.aboi-native-cart) > .e-con-inner {
		width: 44px !important;
		max-width: 44px !important;
		gap: 0 !important;
	}
}


/* ABOI ELEMENTOR EDITABILITY NOTE
 * Typography defaults remain in the theme without locking Elementor controls.
 * Widget and Site Settings colors/weights take precedence.
 */


