/* Componentes do site (fora do checkout) que o Elementor usa via shortcode — Central das Licenças. */

/* ---------- Busca do cabeçalho ---------- */
.cdl-busca { position: relative; display: flex; width: 100%; }
.cdl-busca__campo {
	flex: 1; min-width: 0; height: 48px; padding: 0 52px 0 18px !important; margin: 0;
	border: 2px solid #dfe5eb !important; border-radius: 99px !important; background: #f4f7fa !important;
	font: 400 15px "Lato", system-ui, sans-serif; color: #1f2933; transition: border-color .15s ease, background .15s ease;
}
.cdl-busca__campo:focus { outline: none; border-color: #35a3d6 !important; background: #fff !important; }
.cdl-busca__campo::-webkit-search-cancel-button { -webkit-appearance: none; }
.cdl-busca__botao {
	position: absolute; right: 5px; top: 5px; display: grid; place-items: center; width: 38px; height: 38px; padding: 0;
	border: 0; border-radius: 50%; background: #1b78ae; color: #fff; cursor: pointer;
}
.cdl-busca__botao:hover { background: #155f8a; }
/* O kit do Elementor estiliza todos os <button> (recuo 14x24): aqui o botão é só o ícone, centralizado. */
.cdl-busca .cdl-busca__botao { padding: 0 !important; min-height: 0 !important; line-height: 0 !important; border-radius: 50% !important; }
.cdl-busca__botao svg { display: block; }
.cdl-busca.is-buscando .cdl-busca__botao svg { animation: cdl-busca-pulsar .8s ease-in-out infinite alternate; }
@keyframes cdl-busca-pulsar { to { opacity: .4; } }
.cdl-busca__resultados {
	position: absolute; top: calc(100% + 8px); left: 0; right: 0; z-index: 1000; max-height: 70vh; overflow: auto;
	padding: 6px; background: #fff; border: 1px solid #dfe5eb; border-radius: 14px;
	box-shadow: 0 12px 32px rgba(16, 24, 40, .14);
}
.cdl-busca__item { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 8px 10px; border-radius: 10px; color: #1f2933 !important; text-decoration: none !important; }
.cdl-busca__item img { width: 44px; height: 44px; object-fit: cover; border-radius: 8px; border: 1px solid #dfe5eb; }
.cdl-busca__item:hover, .cdl-busca__item.is-ativo { background: #eaf6fc; }
.cdl-busca__nome { font: 600 14px/1.3 "Poppins", system-ui, sans-serif; }
.cdl-busca__preco { font: 700 14px "Poppins", system-ui, sans-serif; color: #12805c; white-space: nowrap; }
.cdl-busca__todos { display: block; margin-top: 4px; padding: 10px; border-top: 1px solid #dfe5eb; text-align: center; font-weight: 700; color: #1b78ae !important; text-decoration: none !important; }
.cdl-busca__vazio { margin: 0; padding: 14px; font-size: 14px; color: #5b6670; }

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

/* ---------- Cards de categorias [cdl_categorias] ---------- */
.cdl-cats { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.cdl-cat {
	display: grid; justify-items: center; gap: 6px; padding: 18px 12px 16px; text-align: center;
	background: #fff; border: 1px solid #dfe5eb; border-radius: 14px; color: #1f2933 !important; text-decoration: none !important;
	transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.cdl-cat:hover { border-color: #35a3d6; box-shadow: 0 8px 24px rgba(27, 120, 174, .14); transform: translateY(-2px); }
.cdl-cat__img { width: 96px; height: 96px; object-fit: contain; margin-bottom: 6px; }
.cdl-cat__nome { font: 600 15px/1.3 "Poppins", system-ui, sans-serif; }
.cdl-cat__qtd { font-size: 13px; color: #5b6670; }
@media (max-width: 1024px) { .cdl-cats { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) { .cdl-cats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .cdl-cat__img { width: 72px; height: 72px; } }

/* ---------- Produto em destaque [cdl_produto_destaque] ---------- */
.cdl-destaque {
	position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 22px;
	background: #fff; border-radius: 20px; box-shadow: 0 20px 50px rgba(15, 42, 61, .16);
}
.cdl-destaque__selo { position: absolute; top: 18px; left: 18px; z-index: 1; padding: 5px 12px; border-radius: 99px; background: #fbbc34; color: #1f2933; font: 700 12px "Poppins", system-ui, sans-serif; text-transform: uppercase; letter-spacing: .5px; }
.cdl-destaque__img img { display: block; width: 100%; height: auto; max-height: 300px; object-fit: contain; border-radius: 12px; }
.cdl-destaque__info { display: grid; gap: 8px; }
.cdl-destaque__nome { font: 700 20px/1.25 "Poppins", system-ui, sans-serif; color: #1f2933 !important; text-decoration: none !important; }
.cdl-destaque__vendas { font-size: 13px; color: #12805c; font-weight: 700; }
.cdl-destaque__preco { font: 700 26px "Poppins", system-ui, sans-serif; color: #1f2933; }
.cdl-destaque__preco del { font-size: 15px; color: #8a96a0; font-weight: 400; }
.cdl-destaque__botao {
	display: flex; align-items: center; justify-content: center; min-height: 50px; padding: 12px 20px; border-radius: 10px;
	background: #1b78ae; color: #fff !important; font: 600 16px "Poppins", system-ui, sans-serif; text-decoration: none !important;
}
.cdl-destaque__botao:hover { background: #155f8a; }

/* ---------- Cards de produto (loop do WooCommerce, site todo) ---------- */
.woocommerce ul.products, .woocommerce-page ul.products {
	display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 0 !important; padding: 0;
}
.woocommerce ul.products.columns-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product {
	float: none !important; width: auto !important; margin: 0 !important; padding: 14px 14px 16px !important;
	display: flex; flex-direction: column; background: #fff; border: 1px solid #dfe5eb; border-radius: 14px;
	transition: border-color .15s ease, box-shadow .15s ease;
}
.woocommerce ul.products li.product:hover { border-color: #35a3d6; box-shadow: 0 10px 28px rgba(27, 120, 174, .12); }
.woocommerce ul.products li.product a img { margin: 0 0 12px !important; border-radius: 10px; aspect-ratio: 1; object-fit: cover; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	padding: 0 !important; margin: 0 0 8px !important; font: 600 15px/1.35 "Poppins", system-ui, sans-serif !important; color: #1f2933;
	min-height: 2.7em;
}
.woocommerce ul.products li.product .star-rating { margin: 0 0 8px; font-size: 13px; color: #fbbc34; }
.woocommerce ul.products li.product .price { margin: auto 0 4px !important; font: 700 20px "Poppins", system-ui, sans-serif !important; color: #1f2933 !important; }
.woocommerce ul.products li.product .price del { font-size: 14px; color: #8a96a0; font-weight: 400; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .woo-custom-installments-group { font-size: 13px; color: #5b6670; }
.woocommerce ul.products li.product .button {
	display: flex !important; align-items: center; justify-content: center; width: 100%; min-height: 44px; margin-top: 12px !important;
	border-radius: 10px !important; background: #1b78ae !important; color: #fff !important; font: 600 15px "Poppins", system-ui, sans-serif !important;
}
.woocommerce ul.products li.product .button:hover { background: #155f8a !important; }
.woocommerce ul.products li.product .added_to_cart { display: block; margin-top: 8px; text-align: center; font-size: 14px; font-weight: 700; }
.woocommerce span.onsale { min-height: 0; min-width: 0; padding: 4px 10px; line-height: 1.4; border-radius: 99px; background: #fbbc34; color: #1f2933; font-weight: 700; }
@media (max-width: 1024px) { .woocommerce ul.products, .woocommerce-page ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) {
	.woocommerce ul.products, .woocommerce-page ul.products, .woocommerce ul.products.columns-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.woocommerce ul.products li.product { padding: 10px !important; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 14px !important; }
	.woocommerce ul.products li.product .price { font-size: 17px !important; }
}

/* ---------- Home ---------- */
.cdl-hero-selo { display: inline-block; padding: 6px 14px; border-radius: 99px; background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .25); color: #fff; font: 600 13px "Poppins", system-ui, sans-serif; }

/* A busca do cabeçalho ocupa o espaço livre da linha (widget de shortcode do Elementor). */
[data-elementor-type="header"] .elementor-widget-shortcode:has(.cdl-busca) { flex: 1 1 auto; min-width: 0; max-width: 680px; }
@media (max-width: 767px) {
	[data-elementor-type="header"] .elementor-widget-shortcode:has(.cdl-busca) { order: 10; flex-basis: 100%; max-width: none; }
}

/* ---------- Página de produto ---------- */
.cdl-prova { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; font-size: 14px; color: #5b6670; }
.cdl-prova__nota { display: inline-flex; align-items: center; gap: 6px; color: #1f2933 !important; text-decoration: none !important; }
.cdl-prova__nota span:last-child { color: #5b6670; text-decoration: underline; }
.cdl-estrelas { --nota: 5; position: relative; display: inline-block; width: 86px; height: 16px; background: linear-gradient(90deg, #fbbc34 calc(var(--nota) / 5 * 100%), #dfe5eb 0); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 86 16'%3E%3Cg fill='%23000'%3E%3Cpath id='e' d='M8 0l2.4 5 5.6.6-4.2 3.8 1.2 5.6L8 12.2 3 15l1.2-5.6L0 5.6 5.6 5z'/%3E%3Cuse href='%23e' x='17.5'/%3E%3Cuse href='%23e' x='35'/%3E%3Cuse href='%23e' x='52.5'/%3E%3Cuse href='%23e' x='70'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 86 16'%3E%3Cg fill='%23000'%3E%3Cpath id='e' d='M8 0l2.4 5 5.6.6-4.2 3.8 1.2 5.6L8 12.2 3 15l1.2-5.6L0 5.6 5.6 5z'/%3E%3Cuse href='%23e' x='17.5'/%3E%3Cuse href='%23e' x='35'/%3E%3Cuse href='%23e' x='52.5'/%3E%3Cuse href='%23e' x='70'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; }
.cdl-prova__vendas { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: #12805c; }
.cdl-prova__vendas::before { content: "●"; font-size: 8px; }

.cdl-comprar { display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch; margin: 4px 0 0; }
.cdl-comprar__qtd { display: inline-flex; align-items: center; border: 2px solid #dfe5eb; border-radius: 12px; overflow: hidden; background: #fff; }
.cdl-comprar__mais-menos { width: 44px; height: 54px; padding: 0 !important; border: 0 !important; background: #f4f7fa !important; color: #1f2933 !important; font-size: 20px !important; line-height: 1 !important; cursor: pointer; border-radius: 0 !important; }
.cdl-comprar__mais-menos:disabled { opacity: .4; cursor: not-allowed; }
.cdl-comprar__campo { width: 52px !important; height: 54px; padding: 0 !important; border: 0 !important; text-align: center; font: 700 17px "Poppins", system-ui, sans-serif; -moz-appearance: textfield; background: #fff; }
.cdl-comprar__campo::-webkit-outer-spin-button, .cdl-comprar__campo::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.cdl-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 58px; padding: 12px 22px !important;
	border-radius: 12px !important; font: 600 17px "Poppins", system-ui, sans-serif !important; text-decoration: none !important; cursor: pointer; transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.cdl-btn--comprar { flex: 1 1 200px; border: 0 !important; background: #1b78ae !important; color: #fff !important; }
.cdl-btn--comprar:hover { background: #155f8a !important; }
.cdl-btn--comprar.loading { opacity: .6; pointer-events: none; }
.cdl-btn--comprar.added::after { content: "✓"; }
.cdl-comprar .added_to_cart { display: none !important; } /* o carrinho lateral abre sozinho */
/* Quantidade e "Adicionar ao carrinho" sempre na mesma linha (coluna estreita e celular) */
form.cdl-comprar:not(.cdl-comprar--indisponivel) { flex-wrap: nowrap; container-type: inline-size; }
.cdl-comprar .cdl-btn--comprar { flex: 1 1 auto; min-width: 0; gap: 6px; padding: 10px 12px !important; font-size: 15px !important; white-space: nowrap; }
.cdl-comprar .cdl-comprar__mais-menos { width: 38px; }
.cdl-comprar .cdl-comprar__campo { width: 44px !important; }
@container (max-width: 360px) { .cdl-comprar .cdl-btn--comprar svg { display: none; } }
/* Botão de contorno (ex.: "Criar conta" em Minha conta) */
.cdl-btn--carrinho { min-height: 50px; border: 2px solid #35a3d6 !important; background: #fff !important; color: #1b78ae !important; font-size: 16px !important; }
.cdl-btn--carrinho:hover { background: #eaf6fc !important; }
.cdl-btn--whats { background: #1da851 !important; color: #fff !important; border: 0 !important; }
.cdl-comprar--indisponivel { display: grid; gap: 10px; padding: 16px; border-radius: 12px; background: #fdeceb; color: #b42318; font-weight: 700; }

.cdl-ajuda-produto { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-radius: 12px; background: #e9f9ef; color: #0e7a3f !important; font-size: 14px; line-height: 1.4; text-decoration: none !important; }
.cdl-ajuda-produto:hover { background: #d4f3e0; }
.cdl-ajuda-produto svg { flex: none; color: #1da851; }

.cdl-barra-compra {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 990; padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
	background: #fff; border-top: 1px solid #dfe5eb; box-shadow: 0 -6px 20px rgba(16, 24, 40, .1);
	transform: translateY(110%); visibility: hidden; transition: transform .25s ease, visibility 0s linear .25s;
}
.cdl-barra-compra.is-visivel { transform: none; visibility: visible; transition: transform .25s ease, visibility 0s; }
.cdl-barra-compra[hidden] { display: none; }
.cdl-barra-compra__dentro { display: flex; align-items: center; gap: 12px; max-width: 1200px; margin: 0 auto; }
.cdl-barra-compra__img { display: none; flex: none; width: 52px; height: 52px; object-fit: contain; border-radius: 8px; background: #f4f7fa; }
.cdl-barra-compra__info { display: flex; flex-direction: column-reverse; flex: 1; min-width: 0; }
.cdl-barra-compra__nome { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font: 400 12px "Lato", system-ui, sans-serif; color: #5b6670; }
.cdl-barra-compra__preco { font: 700 20px "Poppins", system-ui, sans-serif; color: #1f2933; }
.cdl-barra-compra__preco del { margin-right: 4px; color: #8a96a3; font-size: 13px; font-weight: 400; }
.cdl-barra-compra .cdl-btn--comprar { flex: none; min-height: 48px; padding: 10px 18px !important; font-size: 16px !important; }
body.cdl-com-barra-compra { padding-bottom: 76px; }
@media (min-width: 1025px) {
	.cdl-barra-compra { padding: 10px 24px; }
	.cdl-barra-compra__dentro { gap: 16px; }
	.cdl-barra-compra__img { display: block; }
	.cdl-barra-compra__info { flex-direction: column; }
	.cdl-barra-compra__nome { font: 600 16px "Poppins", system-ui, sans-serif; color: #1f2933; }
	.cdl-barra-compra__preco { font-size: 18px; color: #1b78ae; }
	.cdl-barra-compra .cdl-btn--comprar { min-width: 240px; }
	body.cdl-com-barra-compra { padding-bottom: 80px; }
}

/* Preço do produto (Parcelas Customizadas): 2 linhas, alinhado à esquerda
   linha 1: preço + selo do Pix · linha 2: parcelamento */
.single-product .elementor-widget-woocommerce-product-price p:empty,
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-price-container:empty { display: none; }
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-group {
	display: flex !important; flex-wrap: wrap; align-items: center; justify-content: flex-start !important; gap: 6px 12px; margin: 0; text-align: left !important;
}
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-group-main-price { order: 1 !important; flex: 0 0 auto !important; width: auto !important; margin: 0 !important; }
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-group-main-price,
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-group-main-price .amount { font: 700 34px/1.1 "Poppins", system-ui, sans-serif !important; color: #1f2933 !important; }
.single-product .elementor-widget-woocommerce-product-price del,
.single-product .elementor-widget-woocommerce-product-price del .amount { font-size: 18px !important; font-weight: 400 !important; color: #8a96a0 !important; }
.single-product .elementor-widget-woocommerce-product-price ins { text-decoration: none; }
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-offer {
	order: 2 !important; display: inline-flex !important; align-items: center; gap: 6px; margin: 0 !important; padding: 5px 12px !important; border-radius: 999px !important;
	background: #e6f6ef !important; color: #12805c !important; font: 600 14px/1.2 "Lato", system-ui, sans-serif !important;
}
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-offer .amount { font: inherit !important; color: inherit !important; }
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-card-container {
	order: 3 !important; flex-basis: 100% !important; display: flex !important; align-items: center; gap: 6px; margin: 0 !important; justify-content: flex-start !important;
	color: #5b6670 !important; font: 400 15px/1.4 "Lato", system-ui, sans-serif !important;
}
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-card-container .amount { font-weight: 700 !important; color: #3d4852 !important; }
.single-product .elementor-widget-woocommerce-product-price .woo-custom-installments-card-container > * { margin: 0 !important; }
.single-product .woo-custom-installments-details-without-fee { display: inline-flex; align-items: center; gap: 6px; }

/* Bloco de compra sem a margem padrão do form.cart */
.single-product form.cdl-comprar { margin: 0 !important; }

/* Descrição curta em lista */
.cdl-curta { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.cdl-curta li { position: relative; padding-left: 26px; color: #3d4852; font-size: 15px; line-height: 1.45; }
.cdl-curta li::before { content: ""; position: absolute; left: 0; top: 3px; width: 17px; height: 17px; border-radius: 50%; background: #e6f6ef url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2312805c' d='m9.5 16.2-4.2-4.2-1.4 1.4 5.6 5.6 12-12-1.4-1.4z'/%3E%3C/svg%3E") center / 12px no-repeat; }

/* Galeria */
.single-product .woocommerce-product-gallery { border-radius: 16px; overflow: hidden; }
.single-product .woocommerce-product-gallery .flex-control-thumbs li img { border-radius: 8px; border: 1px solid #dfe5eb; }

/* ---------- Descrição do produto (migração 010) ---------- */
.cdl-desc-rotulo { margin: 4px 0 10px; font: 700 13px "Poppins", system-ui, sans-serif; letter-spacing: .04em; text-transform: uppercase; color: #5b6670; }
.cdl-desc-apps { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.cdl-desc-apps li { padding: 7px 14px; border-radius: 999px; background: #eaf6fc; color: #1b78ae; font: 600 14px "Poppins", system-ui, sans-serif; }
.cdl-desc-quem { display: flex; gap: 14px; padding: 18px 20px; border-radius: 14px; background: #f4f7fa; border-left: 4px solid #35a3d6; }
.cdl-desc-quem svg { flex: none; margin-top: 2px; color: #1b78ae; }
.cdl-desc-quem strong { display: block; margin-bottom: 4px; font: 700 15px "Poppins", system-ui, sans-serif; color: #1f2933; }
.cdl-desc-quem p { margin: 0; color: #3d4852; font-size: 16px; line-height: 1.6; }

.cdl-passos { counter-reset: passo; display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.cdl-passos li { counter-increment: passo; position: relative; min-height: 38px; padding: 7px 0 0 54px; color: #3d4852; font-size: 16px; line-height: 1.55; }
.cdl-passos li::before { content: counter(passo); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #1b78ae; color: #fff; font: 700 16px "Poppins", system-ui, sans-serif; }
.cdl-passos li:not(:last-child)::after { content: ""; position: absolute; left: 18px; top: 42px; bottom: -12px; width: 2px; background: #dfe5eb; }

.cdl-requisitos { width: 100%; margin: 0; border: 0; border-collapse: collapse; font-size: 15px; }
.cdl-requisitos th, .cdl-requisitos td { padding: 11px 0; border: 0; border-bottom: 1px solid #eef2f5; background: none !important; text-align: left; vertical-align: top; line-height: 1.45; }
.cdl-requisitos tr:last-child th, .cdl-requisitos tr:last-child td { border-bottom: 0; }
.cdl-requisitos th { width: 38%; padding-right: 16px; color: #1f2933; font-weight: 700; }
.cdl-requisitos td { color: #3d4852; }

.cdl-desc-obs { padding: 22px 24px; border-radius: 16px; background: #fff8e6; border: 1px solid #fde6ae; }
.cdl-desc-obs__tit { margin: 0 0 10px; font: 700 17px "Poppins", system-ui, sans-serif; color: #7a5300; }
.cdl-desc-obs ul { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.cdl-desc-obs li { position: relative; padding-left: 26px; color: #4d3b12; font-size: 15px; line-height: 1.55; }
.cdl-desc-obs li::before { content: "i"; position: absolute; left: 0; top: 2px; display: grid; place-items: center; width: 17px; height: 17px; border-radius: 50%; background: #fbbc34; color: #fff; font: 700 11px/1 "Poppins", system-ui, sans-serif; }
.cdl-desc-video .elementor-wrapper { border-radius: 16px; overflow: hidden; }
@media (max-width: 767px) {
	.cdl-desc-obs { padding: 18px; }
	.cdl-requisitos th { width: 42%; }
}
/* Selo flutuante da Trustindex acima da barra fixa de compra */
@media (max-width: 1024px) {
	body:has(.cdl-barra-compra:not([hidden])) .ti-sticky-button { bottom: 84px !important; top: auto !important; }
}
#cdl-avaliacoes { scroll-margin-top: 150px; }
.single-product .elementor-widget-woocommerce-product-price { padding-bottom: 16px; border-bottom: 1px solid #eef2f5; }

/* ---------- Loja e categorias [cdl_arquivo_topo] ---------- */
.cdl-arquivo-topo .woocommerce-breadcrumb { margin: 0 0 8px; font-size: 13px; color: #5b6670; }
.cdl-arquivo-topo .woocommerce-breadcrumb a { color: #1b78ae; text-decoration: none; }
.cdl-arquivo-topo__titulo { margin: 0; font: 700 32px/1.2 "Poppins", system-ui, sans-serif; color: #1f2933; }
.cdl-arquivo-topo__texto { max-width: 760px; margin-top: 8px; color: #3d4852; font-size: 16px; line-height: 1.6; }
.cdl-arquivo-topo__texto p { margin: 0; }
.cdl-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.cdl-chip { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border: 1px solid #dfe5eb; border-radius: 999px; background: #fff; color: #1f2933 !important; font: 600 14px/1.2 "Poppins", system-ui, sans-serif; text-decoration: none !important; transition: border-color .15s, background .15s; }
.cdl-chip span { padding: 2px 7px; border-radius: 999px; background: #f4f7fa; color: #5b6670; font-size: 12px; }
.cdl-chip:hover { border-color: #35a3d6; }
.cdl-chip.is-ativo { border-color: #1b78ae; background: #1b78ae; color: #fff !important; }
.cdl-chip.is-ativo span { background: rgba(255, 255, 255, .2); color: #fff; }
@media (max-width: 767px) {
	.cdl-arquivo-topo__titulo { font-size: 24px; }
	.cdl-chips { flex-wrap: nowrap; overflow-x: auto; margin-right: -16px; padding-bottom: 4px; scrollbar-width: none; }
	.cdl-chip { flex: none; }
}
.cdl-arquivo-grade .woocommerce-result-count { margin: 0 0 16px; color: #5b6670; font-size: 14px; line-height: 44px; }
.cdl-arquivo-grade .woocommerce-ordering { margin: 0 0 16px; }
.cdl-arquivo-grade .woocommerce-ordering select { min-height: 44px; padding: 8px 36px 8px 14px; border: 1px solid #dfe5eb; border-radius: 10px; background-color: #fff; font-size: 14px; }
.cdl-arquivo-grade nav.woocommerce-pagination ul { display: flex; justify-content: center; gap: 6px; border: 0 !important; }
.cdl-arquivo-grade nav.woocommerce-pagination ul li { border: 0 !important; }
.cdl-arquivo-grade nav.woocommerce-pagination ul li a, .cdl-arquivo-grade nav.woocommerce-pagination ul li span { display: grid; place-items: center; min-width: 42px; height: 42px; padding: 0 10px !important; border: 1px solid #dfe5eb !important; border-radius: 10px; color: #1f2933; font-weight: 700; }
.cdl-arquivo-grade nav.woocommerce-pagination ul li span.current { background: #1b78ae; border-color: #1b78ae !important; color: #fff; }
.cdl-arquivo-grade .elementor-products-nothing-found { padding: 32px; border-radius: 16px; background: #f4f7fa; text-align: center; }
@media (max-width: 767px) {
	.cdl-arquivo-topo__texto { font-size: 15px; }
	.cdl-arquivo-grade .woocommerce-result-count { float: left !important; width: auto !important; margin: 0 0 12px !important; font-size: 13px; line-height: 40px; }
	.cdl-arquivo-grade .woocommerce-ordering { float: right !important; width: auto !important; margin: 0 0 12px !important; }
	.cdl-arquivo-grade .woocommerce-ordering select { min-height: 40px; max-width: 190px; font-size: 13px; }
	.cdl-arquivo-grade ul.products { clear: both; }
}

/* ---------- Minha conta ---------- */
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 32px; align-items: start; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper, .woocommerce-account .woocommerce > .woocommerce-error, .woocommerce-account .woocommerce > .woocommerce-message, .woocommerce-account .woocommerce > .woocommerce-info { grid-column: 1 / -1; }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; }
.woocommerce-account .woocommerce::before, .woocommerce-account .woocommerce::after { display: none !important; } /* clearfix do Woo viraria item da grade */
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { float: none !important; width: auto !important; }
.cdl-conta-nav { position: sticky; top: 150px; padding: 10px; border: 1px solid #dfe5eb; border-radius: 16px; background: #fff; }
.cdl-conta-nav ul { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.cdl-conta-nav a { display: flex; align-items: center; gap: 12px; padding: 11px 14px; border-radius: 10px; color: #3d4852 !important; font: 600 15px "Poppins", system-ui, sans-serif; text-decoration: none !important; }
.cdl-conta-nav a svg { flex: none; color: #8a96a0; }
.cdl-conta-nav a:hover { background: #f4f7fa; }
.cdl-conta-nav .is-active a { background: #eaf6fc; color: #1b78ae !important; }
.cdl-conta-nav .is-active a svg, .cdl-conta-nav a:hover svg { color: #1b78ae; }
.cdl-conta-nav .woocommerce-MyAccount-navigation-link--cdl-licencas a { color: #12805c !important; }
.cdl-conta-nav .woocommerce-MyAccount-navigation-link--cdl-licencas a svg { color: #12805c; }
.cdl-conta-nav .woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 6px; padding-top: 6px; border-top: 1px solid #eef2f5; }
.woocommerce-MyAccount-content { min-width: 0; color: #3d4852; }
.woocommerce-MyAccount-content h2, .woocommerce-MyAccount-content h3 { font-family: "Poppins", system-ui, sans-serif; color: #1f2933; }

.cdl-painel { display: grid; gap: 28px; }
.cdl-painel__ola h2 { margin: 0 0 4px; font: 700 28px/1.2 "Poppins", system-ui, sans-serif; }
.cdl-painel__ola p { margin: 0; color: #5b6670; }
.cdl-painel__atalhos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.cdl-atalho { display: flex; flex-direction: column; gap: 4px; padding: 18px; border: 1px solid #dfe5eb; border-radius: 16px; background: #fff; color: #5b6670 !important; font-size: 14px; line-height: 1.4; text-decoration: none !important; transition: border-color .15s, box-shadow .15s; }
.cdl-atalho:hover { border-color: #35a3d6; box-shadow: 0 10px 24px rgba(27, 120, 174, .1); }
.cdl-atalho strong { color: #1f2933; font: 600 16px "Poppins", system-ui, sans-serif; }
.cdl-atalho__icone { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 8px; border-radius: 12px; background: #eaf6fc; color: #1b78ae; }
.cdl-atalho--cdl-licencas .cdl-atalho__icone { background: #e6f6ef; color: #12805c; }
.cdl-atalho--whatsapp .cdl-atalho__icone { background: #e9f9ef; color: #1da851; }
.cdl-painel__cab { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.cdl-painel__cab h3 { margin: 0; font-size: 19px; }
.cdl-painel__cab a { color: #1b78ae; font-weight: 700; font-size: 14px; }
.cdl-pedidos { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.cdl-pedidos a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; border: 1px solid #dfe5eb; border-radius: 14px; background: #fff; color: inherit !important; text-decoration: none !important; }
.cdl-pedidos a:hover { border-color: #35a3d6; }
.cdl-pedidos__info { display: grid; gap: 2px; min-width: 0; }
.cdl-pedidos__info strong { color: #1f2933; font-family: "Poppins", system-ui, sans-serif; }
.cdl-pedidos__info span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #5b6670; font-size: 14px; }
.cdl-pedidos__fim { display: flex; flex: none; align-items: center; gap: 14px; color: #1f2933; }
.cdl-status { display: inline-block; padding: 4px 10px; border-radius: 999px; font-size: 13px; font-weight: 700; white-space: nowrap; }
.cdl-status--ok { background: #e6f6ef; color: #12805c; }
.cdl-status--aguardando { background: #fff4d6; color: #8a5a00; }
.cdl-status--erro { background: #fdeceb; color: #b42318; }
.cdl-status--neutro { background: #f4f7fa; color: #5b6670; }
.cdl-painel__vazio { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 20px; border-radius: 14px; background: #f4f7fa; }
.cdl-painel__vazio p { margin: 0; }
.cdl-painel__vazio .cdl-btn { flex: none; min-height: 46px; }

/* Tabelas e formulários da conta */
.woocommerce-MyAccount-content table.shop_table { border: 1px solid #dfe5eb; border-radius: 14px; border-collapse: separate; border-spacing: 0; overflow: hidden; }
.woocommerce-MyAccount-content table.shop_table th { background: #f4f7fa; color: #1f2933; font-weight: 700; }
.woocommerce-MyAccount-content table.shop_table th, .woocommerce-MyAccount-content table.shop_table td { padding: 12px 14px; border-color: #eef2f5; }
.woocommerce-MyAccount-content .button, .woocommerce-MyAccount-content button.button { padding: 10px 16px !important; border-radius: 10px !important; background: #1b78ae !important; color: #fff !important; font-weight: 600 !important; }
.woocommerce-MyAccount-content .woocommerce-orders-table .button + .button { margin-left: 6px; }
.woocommerce-account .woocommerce form .form-row input.input-text, .woocommerce-account .woocommerce form .form-row select { min-height: 48px; padding: 10px 14px; border: 1px solid #cfd8e0; border-radius: 10px; background: #fff; }
.woocommerce-account .woocommerce form .form-row input.input-text:focus { border-color: #35a3d6; outline: 3px solid rgba(53, 163, 214, .2); }
.woocommerce-account .woocommerce form .form-row label { color: #1f2933; font-weight: 700; font-size: 14px; }
.woocommerce-account fieldset { margin: 24px 0 0; padding: 20px; border: 1px solid #dfe5eb; border-radius: 14px; }

/* Entrar / criar conta */
.cdl-acesso { display: grid; gap: 24px; max-width: 520px; margin: 0 auto; }
.cdl-acesso--duplo { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 980px; }
.cdl-acesso__cartao { padding: 32px; border: 1px solid #dfe5eb; border-radius: 18px; background: #fff; box-shadow: 0 10px 30px rgba(15, 42, 61, .06); }
.cdl-acesso__cartao--novo { background: #f4f7fa; box-shadow: none; }
.cdl-acesso__cartao h2 { margin: 0 0 4px; font: 700 24px/1.25 "Poppins", system-ui, sans-serif; color: #1f2933; }
.cdl-acesso__sub { margin: 0 0 20px; color: #5b6670; font-size: 15px; }
.cdl-acesso form { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.cdl-acesso .form-row { margin: 0 0 14px !important; padding: 0 !important; }
.cdl-acesso__linha { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 18px; font-size: 14px; }
.cdl-acesso__linha a { color: #1b78ae; font-weight: 700; }
.cdl-acesso .cdl-btn { width: 100%; min-height: 52px; }
.cdl-acesso__nota { margin: 0 0 16px; color: #5b6670; font-size: 14px; }
.cdl-acesso .woocommerce-privacy-policy-text { margin: 0 0 16px; color: #5b6670; font-size: 13px; }
.cdl-acesso__licencas { display: flex; align-items: center; gap: 12px; max-width: 980px; margin: 24px auto 0; padding: 16px 20px; border-radius: 14px; background: #e6f6ef; color: #0e6b4c !important; font-size: 15px; text-decoration: none !important; }
.cdl-acesso__licencas svg { flex: none; }
.woocommerce-account .woocommerce-ResetPassword { max-width: 520px; margin: 0 auto; padding: 32px; border: 1px solid #dfe5eb; border-radius: 18px; background: #fff; }

@media (max-width: 1024px) {
	.woocommerce-account .woocommerce { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.woocommerce-account .woocommerce > * { min-width: 0; }
	.cdl-conta-nav { position: static; padding: 6px; }
	.cdl-conta-nav ul { display: flex; overflow-x: auto; gap: 4px; scrollbar-width: none; }
	.cdl-conta-nav li { flex: none; }
	.cdl-conta-nav a { padding: 9px 12px; font-size: 14px; white-space: nowrap; }
	.cdl-conta-nav .woocommerce-MyAccount-navigation-link--customer-logout { margin: 0; padding: 0; border: 0; }
	.cdl-painel__atalhos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.cdl-acesso--duplo { grid-template-columns: 1fr; }
	.cdl-acesso__cartao { padding: 22px; }
	.cdl-painel__ola h2 { font-size: 23px; }
	.cdl-atalho { padding: 14px; }
	.cdl-pedidos a { flex-direction: column; align-items: flex-start; gap: 8px; }
	.cdl-pedidos__info span { white-space: normal; }
}
.cdl-conta-titulo { margin: 0 0 20px; font: 700 26px/1.2 "Poppins", system-ui, sans-serif; color: #1f2933; }

/* ---------- Páginas institucionais (migração 013) ---------- */
.cdl-inst-nav { padding: 14px; border: 1px solid #dfe5eb; border-radius: 16px; background: #fff; }
.cdl-inst-nav__grupo { margin: 10px 10px 6px; font: 700 12px "Poppins", system-ui, sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #8a96a0; }
.cdl-inst-nav__grupo:first-child { margin-top: 2px; }
.cdl-inst-nav ul { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.cdl-inst-nav a { display: block; padding: 9px 12px; border-radius: 10px; color: #3d4852 !important; font: 600 14px/1.35 "Poppins", system-ui, sans-serif; text-decoration: none !important; }
.cdl-inst-nav a:hover { background: #f4f7fa; }
.cdl-inst-nav a.is-ativo { background: #eaf6fc; color: #1b78ae !important; }
@media (max-width: 1024px) {
	.cdl-inst-nav { display: flex; gap: 8px; overflow-x: auto; margin-right: -16px; padding: 0 16px 4px 0; border: 0; border-radius: 0; background: none; scrollbar-width: none; }
	.cdl-inst-nav__grupo { display: none; }
	.cdl-inst-nav ul { display: contents; }
	.cdl-inst-nav a { flex: none; padding: 8px 14px; border: 1px solid #dfe5eb; border-radius: 999px; background: #fff; white-space: nowrap; }
	.cdl-inst-nav a.is-ativo { border-color: #1b78ae; background: #1b78ae; color: #fff !important; }
}

.cdl-texto-institucional { color: #3d4852; font-size: 16px; line-height: 1.7; }
.cdl-texto-institucional .elementor-widget-text-editor { color: #3d4852 !important; font-family: "Lato", system-ui, sans-serif !important; font-size: 16px !important; line-height: 1.7 !important; }
.cdl-texto-institucional .elementor-widget-text-editor * { font-family: inherit !important; }
.cdl-texto-institucional h1, .cdl-texto-institucional h2, .cdl-texto-institucional h3, .cdl-texto-institucional h4 { margin: 1.4em 0 .5em; font-family: "Poppins", system-ui, sans-serif !important; color: #1f2933 !important; line-height: 1.3; }
.cdl-texto-institucional h2 { font-size: 22px !important; }
.cdl-texto-institucional h3, .cdl-texto-institucional h4 { font-size: 18px !important; }
.cdl-texto-institucional p { margin: 0 0 1em; }
.cdl-texto-institucional p:last-child { margin-bottom: 0; }
.cdl-texto-institucional ul, .cdl-texto-institucional ol { margin: 0 0 1em; padding-left: 1.3em; }
.cdl-texto-institucional li { margin-bottom: .35em; }
.cdl-texto-institucional a { color: #1b78ae; }
.cdl-texto-institucional strong, .cdl-texto-institucional b { color: #1f2933; }
.cdl-texto-institucional .elementor-accordion .elementor-accordion-item { border-color: #dfe5eb; }
.cdl-texto-institucional .elementor-accordion .elementor-tab-title { padding: 16px 18px; font: 600 16px "Poppins", system-ui, sans-serif !important; color: #1f2933; }
.cdl-texto-institucional .elementor-accordion .elementor-tab-title.elementor-active, .cdl-texto-institucional .elementor-accordion .elementor-tab-title.elementor-active a { color: #1b78ae !important; }
.cdl-texto-institucional .elementor-accordion .elementor-tab-content { padding: 4px 18px 18px; font-size: 15px; line-height: 1.65; color: #3d4852; }

.cdl-contatos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.cdl-contato { display: flex; flex-direction: column; gap: 2px; padding: 16px 18px; border: 1px solid #dfe5eb; border-radius: 14px; background: #f4f7fa; color: #1f2933 !important; text-decoration: none !important; }
a.cdl-contato:hover { border-color: #35a3d6; background: #eaf6fc; }
.cdl-contato__tit { color: #5b6670; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.cdl-contato strong { font: 600 17px/1.35 "Poppins", system-ui, sans-serif; }
.cdl-contato__nota { color: #5b6670; font-size: 13px; }
.cdl-contato--whats { background: #e9f9ef; border-color: #c4ecd3; }
.cdl-contato--whats strong { color: #0e7a3f; }
.cdl-contato--endereco { grid-column: 1 / -1; }
.cdl-texto-institucional .elementor-widget-form .elementor-field-textual { min-height: 48px; border: 1px solid #cfd8e0 !important; border-radius: 10px !important; background: #fff !important; }
.cdl-texto-institucional .elementor-widget-form textarea.elementor-field-textual { min-height: 120px; }
.cdl-texto-institucional .elementor-widget-form .elementor-field-label { color: #1f2933 !important; font-weight: 700 !important; font-size: 14px !important; }
.cdl-texto-institucional .elementor-widget-form .elementor-button { min-height: 52px; border-radius: 12px !important; background: #1b78ae !important; font: 600 16px "Poppins", system-ui, sans-serif !important; }
@media (max-width: 767px) {
	.cdl-contatos { grid-template-columns: 1fr; }
	.cdl-texto-institucional { font-size: 15px; }
}
.cdl-texto-institucional .elementor-widget-text-editor, .cdl-texto-institucional .elementor-widget-text-editor p { text-align: left !important; }

/* ---------- Escala de títulos para TEXTOS (conteúdo antigo, editor de texto, HTML, posts, páginas padrão) ----------
   O kit do Elementor dá 40/32/22px a todo h1/h2/h3, o que é certo para títulos de seção, mas fica enorme
   dentro de textos. Os widgets de título (.elementor-heading-title) não são afetados. */
body .elementor-widget-text-editor :is(h1, h2, h3, h4, h5, h6),
body .elementor-widget-html :is(h1, h2, h3, h4, h5, h6),
body .site-main .page-content :is(h1, h2, h3, h4, h5, h6):not(.elementor-heading-title),
body .woocommerce-MyAccount-content :is(h3, h4) { font-family: "Poppins", system-ui, sans-serif; line-height: 1.3; margin: 1.3em 0 .5em; }
body .elementor-widget-text-editor h1, body .elementor-widget-html h1, body .site-main .page-content h1:not(.elementor-heading-title) { font-size: 28px; }
body .elementor-widget-text-editor h2, body .elementor-widget-html h2, body .site-main .page-content h2:not(.elementor-heading-title) { font-size: 22px; }
body .elementor-widget-text-editor h3, body .elementor-widget-html h3, body .site-main .page-content h3:not(.elementor-heading-title) { font-size: 19px; }
body .elementor-widget-text-editor :is(h4, h5, h6), body .elementor-widget-html :is(h4, h5, h6), body .site-main .page-content :is(h4, h5, h6):not(.elementor-heading-title) { font-size: 17px; }
@media (max-width: 767px) {
	body .elementor-widget-text-editor h1, body .elementor-widget-html h1, body .site-main .page-content h1:not(.elementor-heading-title) { font-size: 24px; }
	body .elementor-widget-text-editor h2, body .elementor-widget-html h2, body .site-main .page-content h2:not(.elementor-heading-title) { font-size: 20px; }
	body .elementor-widget-text-editor h3, body .elementor-widget-html h3, body .site-main .page-content h3:not(.elementor-heading-title) { font-size: 18px; }
}
/* Títulos do template padrão do tema (posts, blog, carrinho, afiliados) */
body .site-main .page-header .entry-title { font-size: 32px; line-height: 1.2; }
body .site-main article .entry-title, body .site-main article h2.entry-title { font-size: 22px; line-height: 1.3; }
body.woocommerce-cart .cart_totals h2 { font-size: 22px; }
@media (max-width: 767px) { body .site-main .page-header .entry-title { font-size: 26px; } }

/* Títulos próprios que o kit sobrescrevia (mesma especificidade) */
body h1.cdl-arquivo-topo__titulo { font-size: 32px; }
body h2.cdl-conta-titulo { font-size: 26px; }
@media (max-width: 767px) { body h1.cdl-arquivo-topo__titulo { font-size: 24px; } }

/* Políticas de produtos (HTML antigo, sem a moldura própria) */
.cdl-politica { font-family: inherit !important; color: #3d4852; }
.cdl-texto-institucional .elementor-widget-html, .cdl-texto-institucional .elementor-widget-html * { font-family: "Lato", system-ui, sans-serif; }
.cdl-texto-institucional .elementor-widget-html :is(h1, h2, h3, h4) { font-family: "Poppins", system-ui, sans-serif !important; }
.cdl-politica > :first-child { margin-top: 0; }
.cdl-politica [style*="border-left"] { font-size: 15px; line-height: 1.6; }

/* ---------- Menu da conta no cabeçalho [cdl_menu_conta] ---------- */
.cdl-menu-conta { position: relative; }
.cdl-menu-conta__botao { display: grid; place-items: center; width: 44px; height: 44px; padding: 0 !important; border: 0 !important; border-radius: 50% !important; background: #eaf6fc !important; color: #1b78ae !important; cursor: pointer; transition: background .15s; }
.cdl-menu-conta__botao:hover, .cdl-menu-conta__botao[aria-expanded="true"] { background: #d6edf8 !important; }
.cdl-menu-conta__botao svg { width: 22px; height: 22px; }
.cdl-menu-conta__painel { position: absolute; top: calc(100% + 10px); right: 0; z-index: 1000; width: 250px; padding: 10px; border: 1px solid #dfe5eb; border-radius: 16px; background: #fff; box-shadow: 0 18px 40px rgba(15, 42, 61, .16); }
.cdl-menu-conta__painel[hidden] { display: none; }
.cdl-menu-conta__ola { margin: 4px 8px 8px; font: 700 15px "Poppins", system-ui, sans-serif; color: #1f2933; }
.cdl-menu-conta__painel ul { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.cdl-menu-conta__item { display: flex; align-items: center; gap: 10px; padding: 10px; border-radius: 10px; color: #3d4852 !important; font: 600 14px "Poppins", system-ui, sans-serif; text-decoration: none !important; }
.cdl-menu-conta__item svg { flex: none; width: 20px; height: 20px; color: #8a96a0; }
.cdl-menu-conta__item:hover { background: #f4f7fa; }
.cdl-menu-conta__item--cdl-licencas { background: #e6f6ef; color: #0e6b4c !important; }
.cdl-menu-conta__item--cdl-licencas svg { color: #12805c; }
.cdl-menu-conta__item--cdl-licencas:hover { background: #d4f0e3; }
.cdl-menu-conta__rodape { display: block; margin-top: 6px; padding: 10px 10px 4px; border-top: 1px solid #eef2f5; color: #5b6670 !important; font-size: 14px; text-decoration: none !important; }
.cdl-menu-conta__entrar { display: block; margin-top: 8px; padding: 11px; border-radius: 10px; background: #1b78ae; color: #fff !important; font: 600 14px "Poppins", system-ui, sans-serif; text-align: center; text-decoration: none !important; }
.cdl-menu-conta__entrar:hover { background: #155f8a; }
@media (max-width: 767px) {
	.cdl-menu-conta__botao { width: 40px; height: 40px; }
	.cdl-menu-conta__painel { position: fixed; top: 104px; right: 12px; left: auto; width: min(280px, calc(100vw - 24px)); }
}

/* Menu da conta: abre ao passar o mouse (computador) e com Tab; o clique continua valendo no celular */
@media (hover: hover) and (pointer: fine) {
	.cdl-menu-conta:hover .cdl-menu-conta__painel[hidden], .cdl-menu-conta:focus-within .cdl-menu-conta__painel[hidden] { display: block; }
	.cdl-menu-conta:hover .cdl-menu-conta__botao { background: #d6edf8 !important; }
}
.cdl-menu-conta__painel::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px; } /* ponte: o mouse não "cai" no vão */

/* ---------- Carrinho: botão do cabeçalho ---------- */
.cdl-carrinho-botao { position: relative; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: #eaf6fc; color: #1b78ae !important; text-decoration: none !important; transition: background .15s; }
.cdl-carrinho-botao:hover { background: #d6edf8; }
.cdl-carrinho__qtd { position: absolute; top: -3px; right: -3px; min-width: 19px; height: 19px; padding: 0 5px; border: 2px solid #fff; border-radius: 99px; background: #fbbc34; color: #1f2933; font: 700 11px/15px "Poppins", system-ui, sans-serif; text-align: center; }
.cdl-carrinho__qtd[hidden] { display: none; }
@media (max-width: 767px) { .cdl-carrinho-botao { width: 40px; height: 40px; } }

/* ---------- Gaveta (carrinho lateral) ---------- */
html.cdl-sem-rolagem { overflow: hidden; }
.cdl-gaveta[hidden] { display: none; }
.cdl-gaveta { position: fixed; inset: 0; z-index: 99999; }
.cdl-gaveta__fundo { position: absolute; inset: 0; background: rgba(15, 42, 61, .45); opacity: 0; transition: opacity .25s; }
.cdl-gaveta__painel { position: absolute; top: 0; right: 0; bottom: 0; display: flex; flex-direction: column; width: min(420px, 100vw); background: #fff; box-shadow: -12px 0 40px rgba(15, 42, 61, .18); transform: translateX(100%); transition: transform .25s ease; outline: 0; }
.cdl-gaveta.is-aberta .cdl-gaveta__fundo { opacity: 1; }
.cdl-gaveta.is-aberta .cdl-gaveta__painel { transform: none; }
.cdl-gaveta__topo { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px; border-bottom: 1px solid #eef2f5; }
.cdl-gaveta__topo p { margin: 0; font: 700 19px "Poppins", system-ui, sans-serif; color: #1f2933; }
.cdl-gaveta__topo p span { color: #8a96a0; font-weight: 600; }
.cdl-gaveta__fechar { display: grid; place-items: center; width: 40px; height: 40px; padding: 0 !important; border: 0 !important; border-radius: 50% !important; background: #f4f7fa !important; color: #3d4852 !important; cursor: pointer; }
.cdl-gaveta__fechar:hover { background: #e6ecf1 !important; }
.cdl-gaveta__conteudo { display: flex; flex: 1; flex-direction: column; min-height: 0; }
.cdl-gaveta__lista { flex: 1; overflow-y: auto; padding: 8px 20px; }
.cdl-gaveta__rodape { padding: 16px 20px calc(16px + env(safe-area-inset-bottom)); border-top: 1px solid #eef2f5; background: #fafcfd; }
.cdl-gaveta__rodape .cdl-btn { width: 100%; min-height: 54px; }
.cdl-gaveta__nota { margin: 0 0 12px; color: #5b6670; font-size: 13px; }
.cdl-gaveta__links { display: flex; justify-content: space-between; gap: 12px; margin-top: 12px; font-size: 14px; }
.cdl-gaveta__links button, .cdl-gaveta__links a { padding: 0 !important; border: 0 !important; background: none !important; color: #1b78ae !important; font: 600 14px "Lato", system-ui, sans-serif !important; text-decoration: underline !important; cursor: pointer; }

/* ---------- Itens (gaveta e página) ---------- */
.cdl-carrinho-itens { margin: 0; padding: 0; list-style: none; }
.cdl-carrinho-item { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; gap: 14px; align-items: start; padding: 16px 0; border-bottom: 1px solid #eef2f5; transition: opacity .15s; }
.cdl-carrinho-item:last-child { border-bottom: 0; }
.cdl-carrinho-item.is-carregando { opacity: .5; pointer-events: none; }
.cdl-carrinho-item__foto { display: block; }
.cdl-carrinho-item__img { display: block; width: 72px !important; height: 72px !important; object-fit: cover; border: 1px solid #e6ecf1; border-radius: 10px; }
.cdl-carrinho-item__nome { margin: 0 0 4px; font: 600 15px/1.35 "Poppins", system-ui, sans-serif; }
.cdl-carrinho-item__nome a { color: #1f2933 !important; text-decoration: none !important; }
.cdl-carrinho-item__nome a:hover { color: #1b78ae !important; }
.cdl-carrinho-item__unit { margin: 0 0 10px; color: #5b6670; font-size: 14px; }
.cdl-carrinho-item__unit span { font-size: 12px; }
.cdl-carrinho-item__acoes { display: flex; align-items: center; gap: 12px; }
.cdl-carrinho-item__fixo { color: #5b6670; font-size: 13px; }
.cdl-carrinho-item__remover { display: grid; place-items: center; width: 34px; height: 34px; padding: 0 !important; border: 0 !important; border-radius: 8px !important; background: none !important; color: #8a96a0 !important; cursor: pointer; }
.cdl-carrinho-item__remover:hover { background: #fdeceb !important; color: #b42318 !important; }
.cdl-carrinho-item__total { margin: 0; font: 700 16px "Poppins", system-ui, sans-serif; color: #1f2933; white-space: nowrap; }
.cdl-qtd { display: inline-flex; align-items: center; border: 1px solid #dfe5eb; border-radius: 10px; overflow: hidden; background: #fff; }
.cdl-qtd__btn { width: 34px; height: 34px; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: #f4f7fa !important; color: #1f2933 !important; font-size: 18px !important; line-height: 1 !important; cursor: pointer; }
.cdl-qtd__btn:hover:not(:disabled) { background: #e6ecf1 !important; }
.cdl-qtd__btn:disabled { opacity: .35; cursor: not-allowed; }
.cdl-qtd__valor { min-width: 34px; font: 700 15px "Poppins", system-ui, sans-serif; text-align: center; }

/* Valores */
.cdl-carrinho-valores { display: grid; gap: 8px; margin: 0 0 12px; }
.cdl-carrinho-valores > div { display: flex; justify-content: space-between; gap: 12px; }
.cdl-carrinho-valores dt, .cdl-carrinho-valores dd { margin: 0; color: #3d4852; font-size: 15px; }
.cdl-carrinho-valores dd { font-weight: 700; color: #1f2933; }
.cdl-carrinho-valores__cupom dt, .cdl-carrinho-valores__cupom dd { color: #12805c !important; }
.cdl-carrinho-valores__cupom button { padding: 0 !important; border: 0 !important; background: none !important; color: #5b6670 !important; font-size: 12px !important; text-decoration: underline !important; cursor: pointer; }
.cdl-carrinho-valores__total { margin-top: 4px; padding-top: 12px; border-top: 1px solid #eef2f5; }
.cdl-carrinho-valores__total dt { font-weight: 700; color: #1f2933; }
.cdl-carrinho-valores__total dd { font: 700 24px "Poppins", system-ui, sans-serif; }
.cdl-carrinho-valores.is-carregando { opacity: .5; }

/* Vazio */
.cdl-carrinho-vazio { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 40px 24px; color: #5b6670; text-align: center; }
.cdl-carrinho-vazio svg { margin-bottom: 8px; color: #b8c4ce; }
.cdl-carrinho-vazio__tit { margin: 0; font: 700 19px "Poppins", system-ui, sans-serif; color: #1f2933; }
.cdl-carrinho-vazio p { margin: 0; }
.cdl-carrinho-vazio .cdl-btn { margin-top: 14px; min-height: 50px; padding: 12px 28px !important; }

/* ---------- Página do carrinho ---------- */
.cdl-carrinho-pagina__grade { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 28px; align-items: start; }
.cdl-carrinho-pagina__itens, .cdl-carrinho-pagina__resumo { padding: 24px 28px; border: 1px solid #dfe5eb; border-radius: 18px; background: #fff; }
.cdl-carrinho-pagina__resumo { position: sticky; top: 150px; background: #fafcfd; }
.cdl-carrinho-pagina h2 { margin: 0 0 8px; font: 700 20px "Poppins", system-ui, sans-serif !important; color: #1f2933; }
.cdl-carrinho-pagina .cdl-carrinho-item { grid-template-columns: 96px minmax(0, 1fr) auto; }
.cdl-carrinho-pagina .cdl-carrinho-item__img { width: 96px !important; height: 96px !important; }
.cdl-carrinho-pagina .cdl-carrinho-item__nome { font-size: 16px; }
.cdl-carrinho-pagina__voltar { display: inline-block; margin-top: 12px; color: #1b78ae !important; font-weight: 700; font-size: 14px; }
.cdl-carrinho-pagina__resumo .cdl-btn { width: 100%; min-height: 56px; margin-top: 6px; }
.cdl-carrinho-cupom { margin: 4px 0 16px; }
.cdl-carrinho-cupom label { display: block; margin-bottom: 6px; color: #1f2933; font-weight: 700; font-size: 14px; }
.cdl-carrinho-cupom > div { display: flex; gap: 8px; }
.cdl-carrinho-cupom input { flex: 1; min-width: 0; min-height: 46px; padding: 8px 12px !important; border: 1px solid #cfd8e0 !important; border-radius: 10px !important; background: #fff !important; text-transform: uppercase; }
.cdl-carrinho-cupom button { min-height: 46px; padding: 8px 16px !important; border: 2px solid #35a3d6 !important; border-radius: 10px !important; background: #fff !important; color: #1b78ae !important; font: 600 14px "Poppins", system-ui, sans-serif !important; cursor: pointer; }
.cdl-carrinho-cupom.is-carregando { opacity: .5; pointer-events: none; }
.cdl-carrinho-selos { display: grid; gap: 6px; margin: 16px 0 0; padding: 0; list-style: none; }
.cdl-carrinho-selos li { position: relative; padding-left: 24px; color: #5b6670; font-size: 13px; }
.cdl-carrinho-selos li::before { content: ""; position: absolute; left: 0; top: 2px; width: 15px; height: 15px; border-radius: 50%; background: #e6f6ef url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2312805c' d='m9.5 16.2-4.2-4.2-1.4 1.4 5.6 5.6 12-12-1.4-1.4z'/%3E%3C/svg%3E") center / 11px no-repeat; }
.cdl-carrinho-pagina .cdl-carrinho-vazio { padding: 56px 24px; border: 1px solid #dfe5eb; border-radius: 18px; background: #fafcfd; }
@media (max-width: 1024px) {
	.cdl-carrinho-pagina__grade { grid-template-columns: minmax(0, 1fr); }
	.cdl-carrinho-pagina__resumo { position: static; }
}
@media (max-width: 767px) {
	.cdl-carrinho-pagina__itens, .cdl-carrinho-pagina__resumo { padding: 18px; }
	.cdl-carrinho-pagina .cdl-carrinho-item, .cdl-carrinho-item { grid-template-columns: 64px minmax(0, 1fr); }
	.cdl-carrinho-pagina .cdl-carrinho-item__img, .cdl-carrinho-item__img { width: 64px !important; height: 64px !important; }
	.cdl-carrinho-item__total { grid-column: 2; }
}

/* Aviso rápido (erro de quantidade, cupom inválido…) */
.cdl-carrinho-aviso { position: fixed; left: 50%; bottom: 24px; z-index: 100000; max-width: min(460px, calc(100vw - 32px)); padding: 14px 18px; border-radius: 12px; background: #1f2933; color: #fff; font-size: 14px; box-shadow: 0 12px 30px rgba(0, 0, 0, .25); transform: translateX(-50%); transition: opacity .3s; }
.cdl-carrinho-aviso.is-saindo { opacity: 0; }
html.cdl-sem-rolagem .ti-sticky-button, html.cdl-sem-rolagem .cdl-barra-compra { display: none !important; }
.cdl-carrinho-pagina__resumo .cdl-carrinho-valores__total { margin-top: 0; }
.cdl-carrinho-vazio .cdl-btn, .cdl-gaveta__rodape .cdl-btn, .cdl-carrinho-pagina__resumo .cdl-btn, .cdl-painel__vazio .cdl-btn { flex: none; }

/* ---------- Manuais: lista [cdl_manuais] ---------- */
.cdl-manuais__filtros { display: grid; gap: 14px; margin-bottom: 24px; }
.cdl-manuais__busca input { width: 100%; min-height: 52px; padding: 12px 18px 12px 46px !important; border: 1px solid #cfd8e0 !important; border-radius: 14px !important; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%235b6670' d='M15.5 14h-.8l-.3-.3A6.5 6.5 0 1 0 14 15.5l.3.3v.8l5 5 1.5-1.5-5-5Zm-6 0a4.5 4.5 0 1 1 0-9 4.5 4.5 0 0 1 0 9Z'/%3E%3C/svg%3E") 16px center / 20px no-repeat !important; font-size: 16px; }
.cdl-manuais .cdl-chips { margin-top: 0; }
.cdl-manuais .cdl-chip { cursor: pointer; }
.cdl-manuais__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.cdl-manual-card { display: flex; align-items: flex-start; gap: 14px; padding: 18px; border: 1px solid #dfe5eb; border-radius: 16px; background: #fff; color: inherit !important; text-decoration: none !important; transition: border-color .15s, box-shadow .15s; }
.cdl-manual-card[hidden] { display: none; }
.cdl-manual-card:hover { border-color: #35a3d6; box-shadow: 0 10px 24px rgba(27, 120, 174, .1); }
.cdl-manual-card__icone { display: grid; flex: none; place-items: center; width: 46px; height: 46px; border-radius: 12px; background: #eaf6fc; color: #1b78ae; }
.cdl-manual-card__icone--office { background: #fdeee7; color: #c4441c; }
.cdl-manual-card__icone--servidores { background: #eef0f8; color: #3d4a8a; }
.cdl-manual-card__icone--project-visio { background: #e8f5ee; color: #12805c; }
.cdl-manual-card__corpo { display: grid; flex: 1; gap: 3px; min-width: 0; }
.cdl-manual-card__fam { color: #5b6670; font-size: 12px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
.cdl-manual-card strong { color: #1f2933; font: 600 16px/1.35 "Poppins", system-ui, sans-serif; }
.cdl-manual-card__resumo { color: #5b6670; font-size: 14px; line-height: 1.45; }
.cdl-manual-card__seta { align-self: center; color: #b8c4ce; font-size: 20px; transition: color .15s, transform .15s; }
.cdl-manual-card:hover .cdl-manual-card__seta { color: #1b78ae; transform: translateX(3px); }
.cdl-manuais__vazio { padding: 28px; border-radius: 14px; background: #f4f7fa; color: #5b6670; text-align: center; }
@media (max-width: 767px) {
	.cdl-manuais__grade { grid-template-columns: 1fr; }
	.cdl-manuais .cdl-chips { flex-wrap: nowrap; overflow-x: auto; margin-right: -16px; padding-bottom: 4px; scrollbar-width: none; }
	.cdl-manuais .cdl-chip { flex: none; }
}

/* ---------- Manual: topo e lateral ---------- */
.cdl-manual-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; color: #5b6670; font-size: 14px; }
.cdl-manual-meta__fam { padding: 4px 10px; border-radius: 999px; background: #eaf6fc; color: #1b78ae; font-weight: 700; font-size: 12px; text-transform: uppercase; letter-spacing: .03em; }
.cdl-manual-lateral { display: grid; gap: 16px; }
.cdl-manual-lateral__cartao { padding: 20px; border: 1px solid #dfe5eb; border-radius: 16px; background: #fff; }
.cdl-manual-lateral__cartao p { margin: 0 0 10px; color: #5b6670; font-size: 14px; }
.cdl-manual-lateral__cartao .cdl-btn { width: 100%; min-height: 48px; font-size: 15px !important; flex: none; }
.cdl-manual-lateral__tit { margin: 0 0 10px !important; color: #1f2933 !important; font: 700 16px "Poppins", system-ui, sans-serif !important; }
.cdl-manual-lateral__nota { margin: 10px 0 0 !important; font-size: 13px !important; text-align: center; }
.cdl-manual-lateral__produto { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; color: inherit !important; text-decoration: none !important; }
.cdl-manual-lateral__produto img { flex: none; width: 64px !important; height: 64px !important; border-radius: 10px; object-fit: cover; }
.cdl-manual-lateral__produto strong { display: block; color: #1f2933; font: 600 14px/1.35 "Poppins", system-ui, sans-serif; }
.cdl-manual-lateral__produto .price, .cdl-manual-lateral__produto .woo-custom-installments-group { font-size: 14px !important; }
.cdl-manual-lateral__produto .woo-custom-installments-card-container, .cdl-manual-lateral__produto .woo-custom-installments-offer { display: none !important; }
.cdl-manual-lateral ul { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.cdl-manual-lateral li a { display: block; padding: 7px 0; border-bottom: 1px solid #eef2f5; color: #3d4852 !important; font-size: 14px; line-height: 1.35; text-decoration: none !important; }
.cdl-manual-lateral li a:hover { color: #1b78ae !important; }
.cdl-manual-lateral__todos { display: inline-block; margin-top: 10px; color: #1b78ae !important; font-weight: 700; font-size: 14px; }

/* ---------- Manual: conteúdo (HTML gerado pela migração 019) ---------- */
.cdl-manual { color: #3d4852; font-size: 16px; line-height: 1.7; }
.cdl-manual p { margin: 0 0 12px; }
.cdl-manual__resumo { font-size: 18px !important; line-height: 1.6; color: #1f2933; }
.cdl-manual__antes { margin: 20px 0 28px; padding: 18px 20px; border-radius: 14px; background: #eaf6fc; border-left: 4px solid #35a3d6; }
.cdl-manual__rotulo { margin: 0 0 6px !important; color: #1b78ae; font: 700 14px "Poppins", system-ui, sans-serif; text-transform: uppercase; letter-spacing: .04em; }
.cdl-manual__antes ul, .cdl-manual__obs ul { margin: 0; padding-left: 20px; }
.cdl-manual__antes li, .cdl-manual__obs li { margin-bottom: 6px; }
.cdl-manual__secao { margin: 0 0 36px; }
body .cdl-manual h2 { display: flex; align-items: center; gap: 12px; margin: 0 0 14px; color: #1f2933; font: 700 22px/1.3 "Poppins", system-ui, sans-serif; }
.cdl-manual__num { display: grid; flex: none; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: #1b78ae; color: #fff; font-size: 16px; }
.cdl-manual__video { position: relative; margin: 16px 0 20px; padding-top: 56.25%; overflow: hidden; border-radius: 14px; background: #0f2a3d; }
.cdl-manual__video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.cdl-manual__passos { counter-reset: passo; display: grid; gap: 14px; margin: 0 0 16px; padding: 0; list-style: none; }
.cdl-manual__passos > li { counter-increment: passo; position: relative; padding-left: 46px; }
.cdl-manual__passos > li::before { content: counter(passo); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 30px; height: 30px; border: 2px solid #35a3d6; border-radius: 50%; color: #1b78ae; font: 700 14px "Poppins", system-ui, sans-serif; }
.cdl-manual__passos > li p { margin: 3px 0 0; }
.cdl-manual__passos figure { margin: 12px 0 4px; }
.cdl-manual__passos img { display: block; max-width: 100%; height: auto; border: 1px solid #dfe5eb; border-radius: 10px; box-shadow: 0 6px 18px rgba(15, 42, 61, .08); }
.cdl-manual-comando { display: flex; align-items: center; gap: 10px; margin: 0 0 12px; padding: 10px 10px 10px 16px; border-radius: 12px; background: #0f2a3d; }
.cdl-manual-comando code { flex: 1; min-width: 0; overflow-x: auto; padding: 0 !important; background: none !important; color: #e6f4fb; font: 500 14px/1.5 Menlo, Consolas, monospace; white-space: pre-wrap; word-break: break-all; }
.cdl-manual-comando button { flex: none; padding: 7px 12px !important; border: 0 !important; border-radius: 8px !important; background: #35a3d6 !important; color: #fff !important; font: 600 13px "Poppins", system-ui, sans-serif !important; cursor: pointer; }
.cdl-manual__aviso { margin: 0 0 14px; padding: 14px 18px 14px 48px; border-radius: 12px; background: #fff8e6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23b7791f' d='M1 21h22L12 2 1 21Zm12-3h-2v-2h2v2Zm0-4h-2v-4h2v4Z'/%3E%3C/svg%3E") 16px 15px / 20px no-repeat; border: 1px solid #fde6ae; color: #4d3b12; font-size: 15px; }
.cdl-manual__aviso p { margin: 0 !important; }
.cdl-manual__downloads, .cdl-manual__obs, .cdl-manual__faq { margin: 0 0 32px; }
.cdl-manual__downloads ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.cdl-manual__downloads a { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border: 1px solid #dfe5eb; border-radius: 12px; background: #fafcfd; color: #1b78ae !important; font-weight: 700; text-decoration: none !important; word-break: break-word; }
.cdl-manual__downloads a::before { content: ""; flex: none; width: 22px; height: 22px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231b78ae' d='M5 20h14v-2H5v2Zm7-3 6-6-1.4-1.4-3.6 3.6V3h-2v10.2L7.4 9.6 6 11l6 6Z'/%3E%3C/svg%3E") center / contain no-repeat; }
.cdl-manual__downloads a:hover { border-color: #35a3d6; background: #eaf6fc; }
.cdl-manual__obs { padding: 20px 22px; border-radius: 14px; background: #f4f7fa; }
.cdl-manual__obs h2 { font-size: 18px !important; }
.cdl-manual__faq details { border-bottom: 1px solid #eef2f5; }
.cdl-manual__faq summary { padding: 14px 28px 14px 0; position: relative; color: #1f2933; font: 600 16px "Poppins", system-ui, sans-serif; cursor: pointer; list-style: none; }
.cdl-manual__faq summary::-webkit-details-marker { display: none; }
.cdl-manual__faq summary::after { content: "+"; position: absolute; right: 4px; top: 12px; color: #35a3d6; font-size: 20px; }
.cdl-manual__faq details[open] summary::after { content: "−"; }
.cdl-manual__faq details p { padding-bottom: 12px; }
.cdl-manual__ajuda { margin-top: 8px; padding: 18px 20px; border-radius: 14px; background: #e9f9ef; color: #0e6b3f; }
.cdl-manual__ajuda p { margin: 0 !important; }
.cdl-manual__ajuda a { color: #0e6b3f !important; font-weight: 700; }
@media (max-width: 767px) {
	.cdl-manual { font-size: 15px; }
	.cdl-manual__resumo { font-size: 16px !important; }
	body .cdl-manual h2 { font-size: 19px; }
	.cdl-manual__passos > li { padding-left: 40px; }
}
/* Filtros dos manuais são <button>: o kit do Elementor estiliza todo botão, então reforça o visual de chip */
.cdl-manuais button.cdl-chip { min-height: 0; padding: 8px 14px !important; border: 1px solid #dfe5eb !important; border-radius: 999px !important; background: #fff !important; color: #1f2933 !important; font: 600 14px/1.2 "Poppins", system-ui, sans-serif !important; box-shadow: none !important; }
.cdl-manuais button.cdl-chip:hover { border-color: #35a3d6 !important; }
.cdl-manuais button.cdl-chip.is-ativo { border-color: #1b78ae !important; background: #1b78ae !important; color: #fff !important; }

/* ---------- Trustvox (avaliações por produto) — só visual, o conteúdo vem do script da Trustvox ---------- */
.cdl-prova-linha { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; }
/* Estrelas + nota + quantidade numa linha só, centralizadas (a Trustvox sobe nota e contagem com top: -4px) */
.cdl-tv-estrelas { display: inline-flex; align-items: center; line-height: 1; color: #1f2933 !important; text-decoration: none !important; }
.cdl-tv-estrelas .trustvox-shelf-container, .cdl-tv-estrelas .ts-shelf-container, .cdl-tv-estrelas .ts-shelf-container > div { display: inline-flex !important; align-items: center; gap: 6px; height: auto !important; }
.cdl-tv-estrelas .ts-shelf-container > div > * { position: static !important; top: auto !important; float: none !important; margin: 0 !important; line-height: 1 !important; }
.cdl-tv-estrelas .ts-shelf-rate { order: 1; }
.cdl-tv-estrelas .ts-shelf-rate-value { order: 2; color: #1f2933 !important; font: 700 14px/1 "Poppins", system-ui, sans-serif !important; text-decoration: none !important; }
.cdl-tv-estrelas .ts-shelf-right { order: 3; color: #5b6670 !important; font-size: 13px !important; text-decoration: underline; }
.cdl-tv-estrelas:hover .ts-shelf-right { color: #1b78ae !important; }

.cdl-trustvox { position: relative; width: min(1100px, 100%); margin: 0 auto; padding: 28px; border: 1px solid #dfe5eb; border-radius: 18px; background: #fff; }
.cdl-trustvox__abas { display: flex; gap: 6px; margin: -6px 0 20px; padding: 4px; border-radius: 12px; background: #f4f7fa; width: max-content; max-width: 100%; }
.cdl-trustvox__abas[hidden] { display: none; }
.cdl-trustvox__abas button { padding: 9px 16px !important; border: 0 !important; border-radius: 9px !important; background: transparent !important; color: #5b6670 !important; font: 600 14px "Poppins", system-ui, sans-serif !important; box-shadow: none !important; cursor: pointer; }
.cdl-trustvox__abas button[aria-selected="true"] { background: #fff !important; color: #1b78ae !important; box-shadow: 0 2px 8px rgba(15, 42, 61, .08) !important; }
.cdl-trustvox[data-aba="avaliacoes"] .ts-customer-questions { display: none !important; }
.cdl-trustvox[data-aba="perguntas"] .ts-product-reviews { display: none !important; }

/* Tipografia e cores do site dentro do widget */
.cdl-trustvox .trustvox-widget, .cdl-trustvox .trustvox-widget * { font-family: "Lato", system-ui, sans-serif !important; }
.cdl-trustvox .trustvox-widget :is(h1, h2, h3, h4, .ts-review-title, .ts-value-title, .ts-rating-title, .ts-v-rating-note_value) { font-family: "Poppins", system-ui, sans-serif !important; color: #1f2933 !important; }
.cdl-trustvox .ts-v-rating-note_value { font-size: 44px !important; font-weight: 700 !important; }
.cdl-trustvox .ts-product-reviews-flex { gap: 28px; }
.cdl-trustvox .side-product-review { padding: 20px !important; border-radius: 16px; background: #f4f7fa; }
.cdl-trustvox .ts-fill { background: #fbbc34 !important; }
.cdl-trustvox .ts-bar { border-radius: 99px !important; }

/* Avaliações em cartões */
.cdl-trustvox .ts-reviews-list { display: grid; gap: 14px; margin: 0 !important; padding: 0 !important; }
.cdl-trustvox .ts-product-reviews-list-item { margin: 0 !important; padding: 18px !important; border: 1px solid #e6ecf1 !important; border-radius: 14px; background: #fff; }
.cdl-trustvox .ts-product-reviews-list-item + .ts-product-reviews-list-item { border-top: 1px solid #e6ecf1 !important; }
.cdl-trustvox .ts-review-body, .cdl-trustvox .ts-value { color: #3d4852 !important; font-size: 15px !important; line-height: 1.6 !important; }
.cdl-trustvox .ts-review-title { font-size: 16px !important; font-weight: 600 !important; }
.cdl-trustvox .ts-avatar { background: #eaf6fc !important; color: #1b78ae !important; font-weight: 700 !important; }
.cdl-trustvox .ts-value-shopping-verify { border-radius: 99px !important; background: #e6f6ef !important; color: #12805c !important; }
.cdl-trustvox .ts-recommendation { border-radius: 99px !important; background: #e6f6ef !important; color: #12805c !important; }
.cdl-trustvox .ts-text-date { color: #8a96a0 !important; font-size: 13px !important; }
.cdl-trustvox .trustvox-widget button, .cdl-trustvox .trustvox-widget select { min-height: 0 !important; padding: 6px 12px !important; border: 1px solid #dfe5eb !important; border-radius: 10px !important; background: #fff !important; color: #3d4852 !important; font-size: 14px !important; box-shadow: none !important; }
.cdl-trustvox .trustvox-widget button:hover { border-color: #35a3d6 !important; color: #1b78ae !important; }

/* Perguntas e respostas */
.cdl-trustvox .ts-customer-questions { margin-top: 0 !important; }
.cdl-trustvox .ts-customer-questions-list > * { padding: 14px 0 !important; border-bottom: 1px solid #eef2f5 !important; }
.cdl-trustvox .ts-customer-questions textarea, .cdl-trustvox .ts-customer-questions input { border: 1px solid #cfd8e0 !important; border-radius: 10px !important; }

/* Recolhido + "Ver mais" */
.cdl-trustvox.is-recolhido .trustvox-widget { max-height: 820px; overflow: hidden; -webkit-mask-image: linear-gradient(180deg, #000 80%, transparent); mask-image: linear-gradient(180deg, #000 80%, transparent); }
.cdl-trustvox__mais { display: block; margin: 12px auto 0; padding: 12px 22px !important; border: 2px solid #35a3d6 !important; border-radius: 12px !important; background: #fff !important; color: #1b78ae !important; font: 600 15px "Poppins", system-ui, sans-serif !important; cursor: pointer; }
.cdl-trustvox__mais[hidden] { display: none; }

/* Estrelas da Trustvox nos cartões de produto */
.trustvox-loop-reviews-stars { margin: 0 0 8px !important; }
.trustvox-loop-reviews-stars .ts-shelf-container > div { text-align: left !important; }

@media (max-width: 767px) {
	.cdl-trustvox { padding: 16px; }
	.cdl-trustvox .ts-product-reviews-flex { flex-direction: column; }
	.cdl-trustvox .side-product-review, .cdl-trustvox .ts-product-reviews-list { width: 100% !important; }
	.cdl-trustvox.is-recolhido .trustvox-widget { max-height: 700px; }
}
.cdl-trustvox .ts-avatar { border-radius: 50% !important; }
.cdl-trustvox .ts-customer-questions input[type="text"], .cdl-trustvox .ts-customer-questions input[type="search"] { padding-left: 38px !important; }
@media (max-width: 767px) {
	.cdl-trustvox__abas { width: 100%; }
	.cdl-trustvox__abas button { flex: 1; padding: 9px 8px !important; font-size: 13px !important; }
	.cdl-trustvox.is-recolhido .trustvox-widget { max-height: 1150px; }
	.cdl-trustvox .side-product-review > * { border: 0 !important; }
}

/* ---------- Home: vitrine dos mais vendidos [cdl_vitrine_destaque] ---------- */
.cdl-vitrine { position: relative; }
.cdl-vitrine__slides { display: grid; }
.cdl-vitrine__slide { grid-area: 1 / 1; opacity: 0; visibility: hidden; transform: translateY(10px) scale(.985); transition: opacity .45s ease, transform .45s ease, visibility 0s .45s; }
.cdl-vitrine__slide.is-ativo { opacity: 1; visibility: visible; transform: none; transition: opacity .45s ease, transform .45s ease; }
.cdl-vitrine__pontos { display: flex; justify-content: center; gap: 8px; margin-top: 14px; }
.cdl-vitrine__pontos button { width: 10px; height: 10px; min-height: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 99px !important; background: rgba(255, 255, 255, .4) !important; cursor: pointer; transition: width .2s, background .2s; }
.cdl-vitrine__pontos button[aria-selected="true"] { width: 28px; background: #fbbc34 !important; }
@media (prefers-reduced-motion: reduce) { .cdl-vitrine__slide { transition: none; } }

/* ---------- Efeitos de fundo (quadriculado + brilho) ----------
   .cdl-hero-v2         topo azul da home (mais forte, com movimento lento)
   .cdl-fx-grade        seções claras (topos de páginas, faixas cinza)
   .cdl-fx-grade-escura caixas azul-escuras (chamadas finais)
   O efeito fica atrás do conteúdo (isolation + z-index -1), sem mexer nos widgets. */
.cdl-hero-v2, .cdl-fx-grade, .cdl-fx-grade-escura { position: relative; isolation: isolate; overflow: hidden; }
.cdl-hero-v2::before, .cdl-fx-grade::before, .cdl-fx-grade-escura::before { content: ""; position: absolute; inset: -2px; z-index: -1; pointer-events: none; background-size: 40px 40px; }
.cdl-hero-v2::after, .cdl-fx-grade::after, .cdl-fx-grade-escura::after { content: ""; position: absolute; z-index: -1; border-radius: 50%; pointer-events: none; }

/* Topo da home: quadriculado bem visível, pontos de luz nos cruzamentos e brilho atrás da vitrine */
.cdl-hero-v2::before {
	background-image: radial-gradient(circle at 1px 1px, rgba(255, 255, 255, .35) 1.2px, transparent 1.6px), linear-gradient(rgba(255, 255, 255, .11) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .11) 1px, transparent 1px);
	-webkit-mask-image: radial-gradient(ellipse 85% 90% at 65% 45%, #000 15%, transparent 78%);
	mask-image: radial-gradient(ellipse 85% 90% at 65% 45%, #000 15%, transparent 78%);
	animation: cdl-grade-desliza 40s linear infinite;
}
.cdl-hero-v2::after { right: 6%; top: 50%; width: 520px; height: 520px; background: radial-gradient(circle, rgba(0, 130, 254, .5), rgba(53, 163, 214, .18) 45%, transparent 70%); transform: translateY(-50%); }
.cdl-hero-v2 .cdl-destaque { box-shadow: 0 30px 60px rgba(4, 18, 30, .4), 0 0 0 1px rgba(255, 255, 255, .12); }
@keyframes cdl-grade-desliza { to { background-position: 40px 40px, 40px 40px, 40px 40px; } }

/* Seções claras: quadriculado azul suave nas bordas e brilho no canto */
.cdl-fx-grade::before {
	background-image: radial-gradient(circle at 1px 1px, rgba(0, 130, 254, .28) 1.2px, transparent 1.6px), linear-gradient(rgba(0, 130, 254, .13) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 130, 254, .13) 1px, transparent 1px);
	-webkit-mask-image: radial-gradient(ellipse 80% 140% at 100% 0%, #000 5%, transparent 72%), radial-gradient(ellipse 55% 100% at 0% 100%, #000 0%, transparent 65%);
	mask-image: radial-gradient(ellipse 80% 140% at 100% 0%, #000 5%, transparent 72%), radial-gradient(ellipse 55% 100% at 0% 100%, #000 0%, transparent 65%);
}
.cdl-fx-grade::after { right: -120px; top: -160px; width: 460px; height: 460px; background: radial-gradient(circle, rgba(0, 130, 254, .2), transparent 70%); }

/* Caixas escuras */
.cdl-fx-grade-escura::before {
	background-image: linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px);
	-webkit-mask-image: linear-gradient(90deg, transparent 20%, #000 100%);
	mask-image: linear-gradient(90deg, transparent 20%, #000 100%);
}
.cdl-fx-grade-escura::after { right: -80px; top: 50%; width: 320px; height: 320px; background: radial-gradient(circle, rgba(0, 130, 254, .4), transparent 70%); transform: translateY(-50%); }

/* Entrada suave das seções ao rolar (só com JavaScript ativo e sem "reduzir movimento") */
html.cdl-js .cdl-fx-revelar { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
html.cdl-js .cdl-fx-revelar.is-visivel { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	.cdl-hero-v2::before { animation: none; }
	html.cdl-js .cdl-fx-revelar { opacity: 1; transform: none; transition: none; }
}
@media (max-width: 767px) {
	.cdl-hero-v2::after { right: -40%; top: 78%; width: 380px; height: 380px; }
	.cdl-fx-grade::after { width: 260px; height: 260px; right: -100px; top: -100px; }
}

/* Atalhos "Mais procurados" no topo da home */
.cdl-hero-atalhos { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: #dce6ee; font-size: 14px; }
.cdl-hero-atalhos > span { margin-right: 2px; font-weight: 700; }
.cdl-hero-atalho { padding: 6px 12px; border: 1px solid rgba(255, 255, 255, .28); border-radius: 999px; background: rgba(255, 255, 255, .08); color: #fff !important; font: 600 13px "Poppins", system-ui, sans-serif; text-decoration: none !important; transition: background .15s, border-color .15s; }
.cdl-hero-atalho:hover { border-color: #fbbc34; background: rgba(251, 188, 52, .16); }
@media (max-width: 767px) {
	.cdl-hero-atalhos { flex-wrap: nowrap; overflow-x: auto; margin-right: -16px; padding-bottom: 4px; scrollbar-width: none; }
	.cdl-hero-atalhos > * { flex: none; }
}
/* Trustvox: o widget usa larguras fixas (resumo 300px + lista 888px) que não cabem no cartão e "vazam" para os lados.
   Aqui as colunas passam a ser flexíveis e nada pode ficar mais largo que o cartão. */
.cdl-trustvox, .cdl-trustvox .trustvox-widget { min-width: 0; overflow-wrap: anywhere; }
.cdl-trustvox .trustvox-widget * { max-width: 100%; box-sizing: border-box; }
.cdl-trustvox .ts-product-reviews-flex { justify-content: flex-start !important; flex-wrap: nowrap; margin-bottom: 24px !important; }
.cdl-trustvox .side-product-review { flex: 0 0 280px !important; width: 280px !important; }
.cdl-trustvox .ts-product-reviews-list { flex: 1 1 0 !important; width: auto !important; min-width: 0 !important; }
.cdl-trustvox .ts-product-reviews-list-item, .cdl-trustvox .ts-review, .cdl-trustvox .ts-wrapper, .cdl-trustvox .ts-review-body { min-width: 0 !important; }
.cdl-trustvox .ts-customer-questions__align { justify-content: flex-start !important; gap: 28px; width: 100% !important; margin: 0 !important; }
.cdl-trustvox .ts-question-total { flex: 0 0 240px !important; width: 240px !important; }
.cdl-trustvox .ts-customer-questions-col-2 { flex: 1 1 0 !important; width: auto !important; min-width: 0 !important; margin-bottom: 0 !important; }
.cdl-trustvox img { height: auto; }
@media (max-width: 900px) {
	.cdl-trustvox .ts-product-reviews-flex, .cdl-trustvox .ts-customer-questions__align { flex-direction: column !important; flex-wrap: wrap; }
	.cdl-trustvox .side-product-review, .cdl-trustvox .ts-question-total { flex: 1 1 auto !important; width: 100% !important; }
}
