/* Millenare — página de produto: área de compra, atendimento e FAQ */
.mlr-bb, .mlr-help, .mlr-faq {
	--mlr-gold: #c99a3e;
	--mlr-gold-soft: #f7efdc;
	--mlr-gold-line: #ead9b2;
	--mlr-ink: #1d1b16;
	--mlr-muted: #5c574d;
	--mlr-wa: #1faa59;
	--mlr-wa-dark: #178a48;
	font-family: 'Inter', 'Poppins', system-ui, sans-serif;
	color: var(--mlr-ink);
}
.mlr-i { width: 20px; height: 20px; flex: 0 0 auto; display: block; }
.mlr-bb a, .mlr-help a, .mlr-faq a { text-decoration: none !important; }

/* ---------- Área de compra ---------- */
.mlr-bb { margin-top: 22px; display: grid; gap: 14px; }
.mlr-bb__lead p { margin: 0 !important; padding: 0 !important; font-size: 15.5px; font-weight: 400; line-height: 1.6; color: #3f3b34; }

.mlr-bb__trust {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border: 1px solid var(--mlr-gold-line);
	border-radius: 14px;
	background: linear-gradient(180deg, #fffdf8 0%, #fbf6ea 100%);
	overflow: hidden;
}
.mlr-bb__perk { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; padding: 16px 10px 14px; }
.mlr-bb__perk .mlr-bb__txt { align-items: center; }
.mlr-bb__perk + .mlr-bb__perk { border-left: 1px solid var(--mlr-gold-line); }
.mlr-bb__ico {
	display: grid; place-items: center;
	width: 34px; height: 34px; flex: 0 0 34px;
	border-radius: 50%;
	background: #fff;
	color: var(--mlr-gold);
	box-shadow: inset 0 0 0 1px var(--mlr-gold-line);
}
.mlr-bb__ico .mlr-i { width: 18px; height: 18px; }
.mlr-bb__txt { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.mlr-bb__txt strong { font-size: 13.5px; font-weight: 600; line-height: 1.3; color: var(--mlr-ink); }
.mlr-bb__txt small { font-size: 12.5px; font-weight: 400; line-height: 1.35; color: var(--mlr-muted); }

.mlr-bb__wa {
	display: flex; align-items: center; gap: 12px;
	padding: 12px 14px;
	border: 1px solid #d5eedd;
	border-radius: 14px;
	background: #f4fbf6;
	transition: border-color .2s, box-shadow .2s, transform .2s;
}
.mlr-bb__wa:hover { border-color: var(--mlr-wa); box-shadow: 0 6px 18px rgba(31, 170, 89, .14); transform: translateY(-1px); }
.mlr-bb__wa-ico { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 38px; border-radius: 50%; background: var(--mlr-wa); color: #fff; }
.mlr-bb__wa-ico .mlr-i { width: 22px; height: 22px; }
.mlr-bb__wa .mlr-bb__txt strong { font-size: 14.5px; }
.mlr-bb__arrow { margin-left: auto; color: var(--mlr-wa); transition: transform .2s; }
.mlr-bb__wa:hover .mlr-bb__arrow { transform: translateX(3px); }

.mlr-bb__faq {
	display: inline-flex; align-items: center; gap: 8px; justify-self: start;
	font-size: 13.5px; font-weight: 500; color: var(--mlr-muted) !important;
	padding: 2px 0;
}
.mlr-bb__faq .mlr-i { width: 17px; height: 17px; color: var(--mlr-gold); }
.mlr-bb__faq:hover span { color: var(--mlr-ink); }

/* ---------- Atendimento (fim da descrição) ---------- */
.mlr-help {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 24px;
	align-items: center;
	margin: 40px 0 12px;
	padding: 28px 30px;
	border: 1px solid var(--mlr-gold-line);
	border-radius: 18px;
	background:
		radial-gradient(120% 140% at 100% 0%, rgba(201, 154, 62, .10) 0%, rgba(201, 154, 62, 0) 55%),
		linear-gradient(135deg, #fffaf0 0%, #ffffff 70%);
	box-shadow: 0 10px 30px rgba(60, 45, 10, .06);
}
.mlr-help__body { display: flex; gap: 18px; align-items: flex-start; }
.mlr-help__badge {
	display: grid; place-items: center;
	width: 52px; height: 52px; flex: 0 0 52px;
	border-radius: 16px;
	background: linear-gradient(145deg, #d9b263 0%, #b8862f 100%);
	color: #fff;
	box-shadow: 0 6px 16px rgba(184, 134, 47, .35);
}
.mlr-help__badge .mlr-i { width: 26px; height: 26px; }
.mlr-help p { margin: 0 !important; padding: 0 !important; }
.mlr-help__eyebrow { font-size: 11.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--mlr-gold); margin-bottom: 4px !important; }
.mlr-help__title { font-size: 20px; font-weight: 700; line-height: 1.3 !important; color: var(--mlr-ink); margin-bottom: 6px !important; }
.mlr-help__text { font-size: 15px; font-weight: 400; line-height: 1.6; color: var(--mlr-muted); max-width: 560px; }
.mlr-help__meta { display: flex; align-items: center; gap: 6px; margin-top: 10px !important; font-size: 13px; font-weight: 400; color: var(--mlr-muted); }
.mlr-help__meta .mlr-i { width: 15px; height: 15px; color: var(--mlr-gold); }
.mlr-help__actions { display: flex; flex-direction: column; gap: 10px; min-width: 230px; }

.mlr-cta {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	padding: 14px 22px;
	border-radius: 999px;
	font-size: 15px; font-weight: 600; line-height: 1;
	transition: transform .2s, box-shadow .2s, background-color .2s;
}
.mlr-cta .mlr-i { width: 19px; height: 19px; }
.mlr-cta--wa, .mlr-cta--wa:visited { background: var(--mlr-wa); color: #fff !important; box-shadow: 0 6px 16px rgba(31, 170, 89, .28); }
.mlr-cta--wa:hover { background: var(--mlr-wa-dark); transform: translateY(-1px); }
.mlr-cta--dark, .mlr-cta--dark:visited { background: var(--mlr-ink); color: #fff !important; }
.mlr-cta--dark:hover { background: #000; transform: translateY(-1px); box-shadow: 0 6px 16px rgba(0, 0, 0, .18); }
.mlr-cta--dark .mlr-i { color: #e9c77f; }

/* ---------- FAQ ---------- */
.mlr-faq { margin: 44px 0 8px; }
.mlr-faq__eyebrow { margin: 0 0 4px !important; padding: 0 !important; font-size: 11.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--mlr-gold); }
.mlr-faq .mlr-faq__title { margin: 0 0 18px !important; padding: 0 !important; font-size: 24px; font-weight: 700; line-height: 1.3; color: var(--mlr-ink); }
.mlr-faq__list { display: grid; gap: 10px; }
.mlr-faq__item { border: 1px solid #ece6d8; border-radius: 14px; background: #fff; transition: border-color .2s, box-shadow .2s; }
.mlr-faq__item[open] { border-color: var(--mlr-gold-line); box-shadow: 0 8px 22px rgba(60, 45, 10, .06); }
.mlr-faq__item summary {
	display: flex; align-items: center; justify-content: space-between; gap: 16px;
	padding: 16px 18px;
	cursor: pointer; list-style: none;
	font-size: 15.5px; font-weight: 600; line-height: 1.4; color: var(--mlr-ink);
}
.mlr-faq__item summary::-webkit-details-marker { display: none; }
.mlr-faq__item summary:focus-visible { outline: 2px solid var(--mlr-gold); outline-offset: 2px; border-radius: 12px; }
.mlr-faq__toggle {
	position: relative; flex: 0 0 28px; width: 28px; height: 28px;
	border-radius: 50%; background: var(--mlr-gold-soft);
	transition: background-color .2s, transform .25s;
}
.mlr-faq__toggle::before, .mlr-faq__toggle::after {
	content: ''; position: absolute; left: 50%; top: 50%;
	width: 12px; height: 2px; margin: -1px 0 0 -6px;
	border-radius: 2px; background: var(--mlr-gold);
	transition: transform .25s;
}
.mlr-faq__toggle::after { transform: rotate(90deg); }
.mlr-faq__item[open] .mlr-faq__toggle { background: var(--mlr-gold); }
.mlr-faq__item[open] .mlr-faq__toggle::before, .mlr-faq__item[open] .mlr-faq__toggle::after { background: #fff; }
.mlr-faq__item[open] .mlr-faq__toggle::after { transform: rotate(0deg); }
.mlr-faq__a { padding: 0 18px 16px; font-size: 15px; font-weight: 400; line-height: 1.65; color: #3f3b34; }
.mlr-faq__a p { margin: 0 0 8px !important; padding: 0 !important; }
.mlr-faq__a p:last-child { margin-bottom: 0 !important; }

/* ---------- Celular ---------- */
@media (max-width: 767px) {
	.mlr-bb__trust { grid-template-columns: 1fr; }
	.mlr-bb__perk { flex-direction: row; text-align: left; padding: 11px 14px; align-items: center; gap: 12px; }
	.mlr-bb__perk .mlr-bb__txt { align-items: flex-start; }
	.mlr-bb__perk + .mlr-bb__perk { border-left: 0; border-top: 1px solid var(--mlr-gold-line); }
	.mlr-help { grid-template-columns: 1fr; padding: 22px 18px; gap: 18px; }
	.mlr-help__body { flex-direction: column; gap: 12px; }
	html body .mlr-help .mlr-help__title { line-height: 1.3 !important; }
	html body .mlr-help .mlr-help__text { line-height: 1.55 !important; }
	.mlr-help__badge { width: 44px; height: 44px; flex-basis: 44px; border-radius: 13px; }
	.mlr-help__title { font-size: 18px; }
	.mlr-help__actions { min-width: 0; }
	.mlr-cta { width: 100%; }
	.mlr-faq .mlr-faq__title { font-size: 20px; }
	.mlr-faq__item summary { padding: 14px; font-size: 15px; }
	.mlr-faq__a { padding: 0 14px 14px; }
}
@media (prefers-reduced-motion: reduce) {
	.mlr-bb__wa, .mlr-cta, .mlr-faq__toggle, .mlr-faq__toggle::before, .mlr-faq__toggle::after { transition: none; }
}

/* O Divi pinta todos os links da descrição de dourado (com !important): garante a cor dos botões. */
html body .mlr-help a.mlr-cta,
html body .mlr-help a.mlr-cta span,
html body .mlr-help a.mlr-cta:hover,
html body .mlr-help a.mlr-cta:visited { color: #fff !important; }
html body .mlr-help a.mlr-cta--wa .mlr-i { color: #fff !important; }
html body .mlr-help a.mlr-cta--dark .mlr-i { color: #e9c77f !important; }
html body .mlr-bb a.mlr-bb__wa,
html body .mlr-bb a.mlr-bb__wa .mlr-bb__txt strong { color: var(--mlr-ink) !important; }
html body .mlr-bb a.mlr-bb__wa .mlr-bb__txt small { color: var(--mlr-muted) !important; }
html body .mlr-bb a.mlr-bb__wa .mlr-bb__wa-ico { color: #fff !important; }
html body .mlr-bb a.mlr-bb__wa .mlr-bb__arrow { color: var(--mlr-wa) !important; }
html body .mlr-bb a.mlr-bb__faq span { color: var(--mlr-muted) !important; }
html body .mlr-bb a.mlr-bb__faq .mlr-i { color: var(--mlr-gold) !important; }

/* ---------- Galeria: borda só na foto principal ---------- */
html body .et_pb_wc_images.et_pb_module { border: 0 !important; border-radius: 0 !important; overflow: visible !important; }
html body .et_pb_wc_images .flex-viewport,
html body .et_pb_wc_images .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper:only-child {
	border: 1px solid #ededed; border-radius: 20px; overflow: hidden; background: #fff;
}
html body .et_pb_wc_images .flex-control-thumbs { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0 0 !important; padding: 0 !important; }
html body .et_pb_wc_images .flex-control-thumbs li { width: 76px !important; margin: 0 !important; float: none !important; }
html body .et_pb_wc_images .flex-control-thumbs img {
	border: 1px solid #ececec; border-radius: 12px; opacity: .65; transition: opacity .2s, border-color .2s;
}
html body .et_pb_wc_images .flex-control-thumbs img.flex-active,
html body .et_pb_wc_images .flex-control-thumbs img:hover { opacity: 1; border-color: var(--mlr-gold, #c99a3e); }

/* ---------- Atendimento: mais respiro entre os textos ---------- */
html body .mlr-help { padding: 34px 36px; gap: 28px; }
html body .mlr-help .mlr-help__eyebrow { margin-bottom: 10px !important; }
html body .mlr-help .mlr-help__title { margin-bottom: 12px !important; }
html body .mlr-help .mlr-help__text { line-height: 1.7 !important; }
html body .mlr-help .mlr-help__meta { margin-top: 16px !important; }
html body .mlr-help .mlr-help__body { gap: 22px; }
@media (max-width: 767px) {
	html body .mlr-help { padding: 24px 20px; gap: 22px; }
}

/* ---------- Parcelas abaixo do preço ---------- */
.mlr-price-inst { display: block; margin-top: 6px; font-size: 15px; font-weight: 400; color: #5c574d; letter-spacing: 0; }
.mlr-price-inst strong { font-weight: 600; color: #1d1b16; }
.mlr-price-inst .woocommerce-Price-amount { color: inherit !important; font-size: inherit !important; }

/* ---------- Cupom de primeira compra ---------- */
.mlr-bb__coupon {
	display: flex; align-items: center; gap: 12px;
	padding: 12px 12px 12px 14px;
	border: 1.5px dashed #d9b466;
	border-radius: 14px;
	background: linear-gradient(90deg, #fff8e8 0%, #fffdf7 100%);
}
.mlr-bb__coupon-ico { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 38px; border-radius: 50%; background: linear-gradient(145deg, #d9b263 0%, #b8862f 100%); color: #fff; }
.mlr-bb__coupon-ico .mlr-i { width: 20px; height: 20px; }
.mlr-bb__coupon-txt { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.mlr-bb__coupon-txt strong { font-size: 14.5px; font-weight: 700; color: #1d1b16; line-height: 1.3; }
.mlr-bb__coupon-txt small { font-size: 12.5px; line-height: 1.4; font-weight: 400; color: #5c574d; }
.mlr-bb__code {
	margin-left: auto; display: inline-flex; align-items: center; gap: 8px;
	padding: 9px 12px; border: 0; border-radius: 10px;
	background: #1d1b16; color: #fff;
	font: 600 13px/1 'Inter', system-ui, sans-serif; letter-spacing: .06em;
	cursor: pointer; transition: background-color .2s, transform .2s;
}
.mlr-bb__code .mlr-i { width: 15px; height: 15px; color: #e9c77f; }
.mlr-bb__code:hover { background: #000; transform: translateY(-1px); }
.mlr-bb__code.is-copied { background: #1faa59; }
.mlr-bb__code.is-copied .mlr-i { color: #fff; }
@media (max-width: 400px) {
	.mlr-bb__coupon { flex-wrap: wrap; }
	.mlr-bb__code { margin-left: 50px; }
}
