@import url("https://fonts.googleapis.com/css2?family=Archivo:wght@400;700;800;900&family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Karla:wght@400;500;600;700;800&display=swap");

/* Hide leftover chrome when the new ficha is on */
html body.cv2-pdp-page .breadcrumbs,
html body.cv2-pdp-page .breadcrumbs--product-detail,
html body.cv2-pdp-page .main-menu,
html body.cv2-pdp-page #menu-filters,
html body.cv2-pdp-page .titulo_ficha_topo { display: none !important; }

html body.cv2-pdp-page #main-container.main-container,
html body.cv2-pdp-page .main-container,
html body.cv2-pdp-page #main-container.main-container.main-container--product-detail,
html body.cv2-pdp-page .main-container.main-container--product-detail {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 auto !important;
	display: block !important;
	float: none !important;
	border: 0 !important;
	box-sizing: border-box !important;
}
html body.cv2-pdp-page #main-content.main-content,
html body.cv2-pdp-page .main-content {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
	text-align: left !important;
	overflow: visible !important;
	border: 0 !important;
}
html body.cv2-pdp-page { background: #fff; }
html body.cv2-pdp-page .full-wrapper { background: #fff; }

.cv2-pd {
	--pd-action: #9d0048;
	--pd-action-h: #c2185b;
	--pd-green: #2e7d32;
	--pd-text: #1b1416;
	--pd-muted: #8b737b;
	--pd-line: #ece2e6;
	--pd-line2: #eadfe3;
	--pd-cream: #f6f1ec;
	--pd-blush: #faf7f6;
	--pd-sel: #fdf3f7;
	--pd-oos: #c0a9b1;
	--pd-chip: #e8f4e9;
	--pd-r: 15px;
	--pd-font-ui: "Karla", "Manrope", sans-serif;
	--pd-font-name: "Cormorant Garamond", Georgia, serif;
	--pd-font-title: "Archivo", "Manrope", sans-serif;
	color: var(--pd-text);
	font-family: var(--pd-font-ui);
	background: #fff;
	text-align: left;
}
.cv2-pd a { color: inherit; text-decoration: none; }
.cv2-pd img { max-width: 100%; display: block; }
.cv2-pd-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

.cv2-pd-wrap {
	max-width: 1440px;
	margin: 0 auto;
	padding: 18px 16px 48px;
	box-sizing: border-box;
}

/* Breadcrumb type lives in css/cv2-breadcrumbs.css (must win). Keep structure only. */
.cv2-pd-bc { margin: 0 0 22px; }
.cv2-pd-bc ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0; align-items: center; }

/* Grid */
.cv2-pd-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 460px;
	gap: 56px;
	align-items: start;
}
.cv2-pd-left {
	min-width: 0;
}
.cv2-pd-buy {
	position: sticky;
	top: 28px;
	align-self: start;
	width: 100%;
	box-sizing: border-box;
	background: #f7f3ef;
	border-radius: var(--pd-r);
	padding: 24px 24px 20px;
	max-height: calc(100vh - 56px);
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	scrollbar-color: #c9b6bc transparent;
}
.cv2-pd-buy::-webkit-scrollbar { width: 8px; }
.cv2-pd-buy::-webkit-scrollbar-thumb {
	background: #c9b6bc;
	border-radius: 99px;
}

/* Gallery */
.cv2-pd-gal {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 12px;
}
.cv2-pd-gal__main {
	position: relative;
	border-radius: var(--pd-r);
	overflow: hidden;
	background: var(--pd-blush);
	max-width: 620px;
	flex: 1 1 auto;
	min-width: 0;
}
.cv2-pd-gal__main img {
	width: 100%;
	height: auto;
	border-radius: var(--pd-r);
	object-fit: cover;
	background: #fff;
}
.cv2-pd-badge {
	display: inline-block;
	align-self: flex-start;
	background: #fff;
	color: var(--pd-text);
	font-family: var(--pd-font-ui);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: 5px 9px;
	border-radius: 4px;
	border: 1px solid var(--pd-line, #e3deda);
	text-decoration: none;
	margin: 0 0 10px;
}
.cv2-pd-badge:hover { color: var(--pd-action, #9d0048); border-color: var(--pd-action, #9d0048); }
.cv2-pd-fav {
	width: 44px;
	height: 44px;
	min-width: 44px;
	border-radius: 50%;
	border: 1px solid var(--pd-line);
	background: #fff;
	color: var(--pd-text);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
	box-shadow: 0 2px 10px rgba(27,20,22,.06);
}
.cv2-pd-fav svg { display: block; }
.cv2-pd-fav.is-on,
.cv2-pd-fav.shopcart_favorite_remove,
.cv2-pd-fav.catalog_favorite_remove { color: var(--pd-action); }
.cv2-pd-fav.is-on svg,
.cv2-pd-fav.shopcart_favorite_remove svg,
.cv2-pd-fav.catalog_favorite_remove svg { fill: currentColor; }
.cv2-pd-fav--gal {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 2;
}
.cv2-pd-gal__nav {
	display: none;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: rgba(255,255,255,.92);
	color: var(--pd-text);
	font-size: 22px;
	cursor: pointer;
	z-index: 2;
}
.cv2-pd-gal__prev { left: 10px; }
.cv2-pd-gal__next { right: 10px; }

.cv2-pd-rail {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	flex: 0 0 72px;
	width: 72px;
	order: -1;
	position: relative;
}
.cv2-pd-rail__btn {
	width: 36px;
	height: 22px;
	border: 1px solid var(--pd-line2, #eadfe3);
	border-radius: 999px;
	padding: 0;
	background: #fff;
	color: var(--pd-action, #9d0048);
	opacity: 1;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 1px 3px rgba(27, 20, 22, .08);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
}
.cv2-pd-rail__btn:hover {
	opacity: 1;
	background: var(--pd-sel, #fdf3f7);
	border-color: var(--pd-action, #9d0048);
}
.cv2-pd-rail__btn[hidden] { display: none !important; }
.cv2-pd-thumbs {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 0;
	max-width: none;
	width: 72px;
	/* ~5.4 thumbs so the next one peeks — cue that the rail scrolls */
	max-height: calc(5 * 68px + 4 * 12px + 28px);
	overflow-x: hidden;
	overflow-y: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
	position: relative;
}
.cv2-pd-thumbs::-webkit-scrollbar { display: none; }
.cv2-pd-rail.is-overflow .cv2-pd-thumbs {
	-webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
	mask-image: linear-gradient(to bottom, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
}
.cv2-pd-rail.is-overflow.can-scroll-up:not(.can-scroll-dn) .cv2-pd-thumbs {
	-webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 18px, #000 100%);
	mask-image: linear-gradient(to bottom, transparent 0, #000 18px, #000 100%);
}
.cv2-pd-rail.is-overflow.can-scroll-dn:not(.can-scroll-up) .cv2-pd-thumbs {
	-webkit-mask-image: linear-gradient(to bottom, #000 0, #000 calc(100% - 18px), transparent 100%);
	mask-image: linear-gradient(to bottom, #000 0, #000 calc(100% - 18px), transparent 100%);
}
.cv2-pd-thumb {
	width: 68px;
	height: 68px;
	flex: 0 0 68px;
	padding: 0;
	border: 2.5px solid transparent;
	border-radius: var(--pd-r);
	overflow: hidden;
	background: #fff;
	cursor: pointer;
}
.cv2-pd-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 12px; }
.cv2-pd-thumb.is-on { border-color: var(--pd-action); }

/* Buy column */
.cv2-pd-brand {
	display: inline-block;
	font-family: var(--pd-font-ui);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--pd-action) !important;
	margin-bottom: 6px;
}
.cv2-pd-name {
	font-family: var(--pd-font-name) !important;
	font-weight: 500 !important;
	font-size: 44px !important;
	line-height: 1.12 !important;
	color: var(--pd-text) !important;
	margin: 0 0 6px !important;
	text-transform: none !important;
	text-align: left !important;
}
.cv2-pd-ref {
	font-size: 13px;
	color: var(--pd-muted);
	margin-bottom: 18px;
}
.cv2-pd-price-row {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 22px;
	flex-wrap: wrap;
}
.cv2-pd-price__now {
	font-family: var(--pd-font-ui);
	font-size: 32px;
	font-weight: 800;
	color: var(--pd-text);
	letter-spacing: -.02em;
}
.cv2-pd-price__now--promo { color: var(--pd-action); }
.cv2-pd-price__was {
	font-size: 18px;
	color: var(--pd-muted);
	text-decoration: line-through;
	margin-right: 4px;
}
.cv2-pd-price__off {
	display: inline-flex;
	align-items: center;
	padding: 4px 8px;
	border-radius: 999px;
	background: var(--pd-action);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .02em;
	margin-left: 4px;
}
.cv2-pd-chip {
	display: inline-flex;
	align-items: center;
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--pd-chip);
	color: var(--pd-green);
	font-size: 13px;
	font-weight: 700;
}

.cv2-pd-axis { margin-bottom: 20px; }
.cv2-pd-axis__lab {
	font-size: 13px;
	font-weight: 700;
	margin-bottom: 10px;
}
.cv2-pd-axis__row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
}
.cv2-pd-axis__row .cv2-pd-axis__lab { margin-bottom: 0; }
.cv2-pd-notify-link {
	border: 0;
	background: none;
	padding: 0;
	color: var(--pd-action);
	font-family: var(--pd-font-ui);
	font-size: 13px;
	text-decoration: underline;
	cursor: pointer;
	text-align: right;
}
.cv2-pd-swatches { display: flex; gap: 10px; flex-wrap: wrap; }
.cv2-pd-swatch {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	border: 2px solid #fff;
	box-shadow: 0 0 0 1px #ddd;
	padding: 0;
	cursor: pointer;
}
.cv2-pd-swatch.is-on { box-shadow: 0 0 0 2px #fff, 0 0 0 4.5px var(--pd-action); }

.cv2-pd-flavors { display: flex; flex-wrap: wrap; gap: 8px; }
.cv2-pd-flavor {
	min-width: 72px;
	padding: 10px 16px;
	border: 1px solid var(--pd-line2);
	border-radius: var(--pd-r);
	background: #fff;
	color: var(--pd-text);
	font-family: var(--pd-font-ui);
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}
.cv2-pd-flavor.is-on {
	border: 2px solid var(--pd-action);
	background: var(--pd-sel);
	padding: 9px 15px;
}

.cv2-pd-sizes { display: flex; flex-wrap: wrap; gap: 8px; }
.cv2-pd-size {
	min-width: 72px;
	padding: 10px 16px;
	border: 1px solid var(--pd-line2);
	border-radius: var(--pd-r);
	background: #fff;
	color: var(--pd-text);
	font-family: var(--pd-font-ui);
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}
.cv2-pd-size.is-on {
	border: 1px solid #3EB075;
	background: #3EB075;
	color: #fff;
	padding: 10px 16px;
}
.cv2-pd-size.is-oos {
	border-color: transparent;
	background: #fff;
	color: var(--pd-oos);
	text-decoration: line-through;
}
.cv2-pd-size.is-oos.is-on {
	border-color: #3EB075;
	background: #3EB075;
	color: #fff;
	text-decoration: none;
}
.cv2-pd-exchange {
	margin-top: 10px;
	color: var(--pd-green);
	font-size: 13px;
	font-weight: 700;
}

.cv2-pd-notify {
	margin-top: 12px;
	padding: 14px;
	border: 1px solid var(--pd-line);
	border-radius: var(--pd-r);
	background: #fff;
}
.cv2-pd-notify__hint { margin: 0 0 10px; font-size: 13px; color: var(--pd-muted); }
.cv2-pd-notify__email {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--pd-line2);
	border-radius: 10px;
	padding: 12px 14px;
	font-family: var(--pd-font-ui);
	font-size: 15px;
	margin-bottom: 8px;
}
.cv2-pd-notify__btn {
	width: 100%;
	border: 0;
	border-radius: 999px;
	background: var(--pd-action);
	color: #fff;
	font-family: var(--pd-font-ui);
	font-weight: 700;
	font-size: 14px;
	padding: 12px 16px;
	min-height: 44px;
	cursor: pointer;
}
.cv2-pd-notify__btn:hover { background: var(--pd-action-h); }
.cv2-pd-notify__active p { margin: 0 0 6px; font-size: 14px; }
.cv2-pd-notify__who { font-weight: 700; }
.cv2-pd-notify__msg { margin: 8px 0 0; font-size: 13px; }
.cv2-pd-notify__msg.is-ok { color: var(--pd-green); }
.cv2-pd-notify__msg.is-err { color: #a94442; }

.cv2-pd-offer {
	border: 1px solid var(--pd-line);
	border-radius: var(--pd-r);
	padding: 14px;
	margin-bottom: 20px;
	background: #fff;
}
.cv2-pd-offer__kicker {
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .04em;
	margin-bottom: 12px;
	text-transform: uppercase;
}
.cv2-pd-offer__kicker span { font-weight: 500; text-transform: none; color: var(--pd-muted); letter-spacing: 0; }
.cv2-pd-offer__opt {
	display: flex;
	align-items: center;
	gap: 8px;
	border: 1px solid var(--pd-line2);
	border-radius: var(--pd-r);
	padding: 10px 12px;
	margin-bottom: 8px;
	background: #fff;
}
.cv2-pd-offer__opt:last-child { margin-bottom: 0; }
.cv2-pd-offer__opt.is-on {
	border: 2px solid var(--pd-action);
	background: var(--pd-sel);
	padding: 9px 11px;
}
.cv2-pd-offer__pick {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 1 1 auto;
	min-width: 0;
	cursor: pointer;
	margin: 0;
}
.cv2-pd-offer__opt img {
	width: 52px;
	height: 52px;
	border-radius: 10px;
	object-fit: cover;
	object-position: center top;
	flex: 0 0 52px;
	transform: translateZ(0);
	backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
	image-rendering: -webkit-optimize-contrast;
	image-rendering: auto;
}
.cv2-pd-offer__opt input { accent-color: var(--pd-action); flex: 0 0 auto; }
.cv2-pd-offer__name { font-size: 14px; font-weight: 600; min-width: 0; }
.cv2-pd-offer__info {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 999px;
	color: var(--pd-muted, #6b6b6b);
	text-decoration: none;
	border: 1px solid transparent;
	transition: color .15s ease, background .15s ease, border-color .15s ease;
}
.cv2-pd-offer__info:hover,
.cv2-pd-offer__info:focus {
	color: var(--pd-action, #9d0048);
	background: #fff;
	border-color: var(--pd-line2, #e3deda);
	outline: none;
}
.cv2-pd-offer__opt.is-on .cv2-pd-offer__info { color: var(--pd-action, #9d0048); }

.cv2-pd-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
}
.cv2-pd-stepper {
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--pd-line2);
	border-radius: 999px;
	overflow: hidden;
	height: 48px;
	background: #fff;
}
.cv2-pd-stepper button {
	width: 40px;
	height: 48px;
	border: 0;
	background: transparent;
	font-size: 20px;
	cursor: pointer;
	color: var(--pd-text);
	font-family: var(--pd-font-ui);
}
.cv2-pd-stepper input {
	width: 36px;
	border: 0;
	text-align: center;
	font-family: var(--pd-font-ui);
	font-weight: 700;
	font-size: 15px;
	background: transparent;
	color: var(--pd-text);
}
.cv2-pd-cta {
	flex: 1;
	height: 48px;
	min-height: 44px;
	border: 0;
	border-radius: 999px;
	background: var(--pd-action);
	color: #fff !important;
	font-family: var(--pd-font-ui);
	font-size: 14px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	cursor: pointer;
	padding: 0 22px;
}
.cv2-pd-cta:hover { background: var(--pd-action-h); }
.cv2-pd-cta.is-added,
.cv2-pd-cta.is-added:hover {
	background: #3EB075;
	color: #fff !important;
}
.cv2-pd-cta.is-notify,
.cv2-pd-cta.is-notify:hover {
	background: #1F1D1B;
	color: #fff !important;
	letter-spacing: .02em;
	text-transform: none;
	font-size: 13px;
	padding: 0 16px;
}
.cv2-pd-cta.is-notify.is-active {
	background: #1F1D1B;
	opacity: 1;
}
.cv2-pd-cta.is-wait { display: none; }
.cv2-pd-cta:disabled { opacity: .45; cursor: default; }
.cv2-pd-cta.hide-all { display: none !important; }

.cv2-pd-ship__when {
	margin: 0 0 6px;
	color: var(--pd-green);
	font-weight: 700;
	font-size: 14px;
	line-height: 1.45;
}
.cv2-pd-pack--buy {
	margin-top: 10px;
	padding: 16px 18px;
}
.cv2-pd-pack--buy h3 {
	font-size: 15px;
	margin-bottom: 6px;
}
.cv2-pd-pack--buy p {
	font-size: 13px;
}

/* Details */
.cv2-pd-details {
	background: transparent;
	padding: 36px 0 8px;
}
.cv2-pd-details .cv2-pd-wrap { padding: 0; }
.cv2-pd-kicker-title {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
}
.cv2-pd-tabs__nav {
	display: flex;
	gap: 28px;
	border-bottom: 1px solid var(--pd-line);
	margin-bottom: 28px;
}
.cv2-pd-tabs__nav button {
	border: 0;
	background: none;
	padding: 0 0 12px;
	font-family: var(--pd-font-title);
	font-weight: 900;
	font-size: 13px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--pd-muted);
	cursor: pointer;
	border-bottom: 3px solid transparent;
	margin-bottom: -1px;
	transition: color .25s ease, border-color .25s ease;
}
.cv2-pd-tabs__nav button.is-on {
	color: var(--pd-text);
	border-bottom-color: var(--pd-action);
}
.cv2-pd-acc__btn { display: none; }
.cv2-pd-acc { position: relative; overflow-anchor: none; }
.cv2-pd-pane {
	display: block;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	pointer-events: none;
	transition: opacity .35s ease, visibility .35s ease;
}
.cv2-pd-pane.is-on {
	position: relative;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.cv2-pd-pane[data-pane="ship"] { display: none !important; }
@media (prefers-reduced-motion: reduce) {
	.cv2-pd-pane,
	.cv2-pd-tabs__nav button { transition: none; }
}
.cv2-pd-details__grid {
	display: block;
}
.cv2-pd-desc {
	font-size: 16px;
	line-height: 1.7;
	color: var(--pd-text);
	max-width: none;
	font-family: var(--pd-font-ui);
}
.cv2-pd-desc p,
.cv2-pd-desc li,
.cv2-pd-desc td {
	font-family: var(--pd-font-ui);
	color: var(--pd-text);
}
/* t1485: :only-child tipografia only; display:block so apos <br> */
.cv2-pd-desc p > span[style*="8d0042"]:only-child,
.cv2-pd-desc p > span[style*="8D0042"]:only-child,
.cv2-pd-desc p > span[style*="9d0048"]:only-child,
.cv2-pd-desc p > span[style*="9D0048"]:only-child,
.cv2-pd-desc p > span[style*="9e0048"]:only-child,
.cv2-pd-desc p > span[style*="9f0049"]:only-child,
.cv2-pd-desc p > span[style*="82003c"]:only-child,
.cv2-pd-desc div > span[style*="8d0042"]:only-child,
.cv2-pd-desc div > span[style*="8D0042"]:only-child,
.cv2-pd-desc div > span[style*="9d0048"]:only-child,
.cv2-pd-desc div > span[style*="9D0048"]:only-child,
.cv2-pd-desc div > span[style*="9e0048"]:only-child,
.cv2-pd-desc div > span[style*="9f0049"]:only-child,
.cv2-pd-desc div > span[style*="82003c"]:only-child {
	font-family: var(--pd-font-ui);
	font-weight: inherit;
	font-size: 16px;
	line-height: 1.7;
}
.cv2-pd-desc p > br + span[style*="8d0042"],
.cv2-pd-desc p > br + span[style*="8D0042"],
.cv2-pd-desc p > br + span[style*="9d0048"],
.cv2-pd-desc p > br + span[style*="9D0048"],
.cv2-pd-desc p > br + span[style*="9e0048"],
.cv2-pd-desc p > br + span[style*="9f0049"],
.cv2-pd-desc p > br + span[style*="82003c"],
.cv2-pd-desc div > br + span[style*="8d0042"],
.cv2-pd-desc div > br + span[style*="8D0042"],
.cv2-pd-desc div > br + span[style*="9d0048"],
.cv2-pd-desc div > br + span[style*="9D0048"],
.cv2-pd-desc div > br + span[style*="9e0048"],
.cv2-pd-desc div > br + span[style*="9f0049"],
.cv2-pd-desc div > br + span[style*="82003c"] {
	font-family: var(--pd-font-ui);
	font-weight: inherit;
	font-size: 16px;
	line-height: 1.7;
	display: block;
	margin: 16px 0 8px;
}
.cv2-pd-desc ul,
.cv2-pd-desc ol {
	list-style: none !important;
	padding-left: 8px;
}
.cv2-pd-desc a,
.cv2-pd-desc a span,
.cv2-pd-desc u,
.cv2-pd-pane a,
.cv2-pd-pane a span,
.cv2-pd-pane u {
	color: var(--pd-action) !important;
	text-decoration: none;
}
.cv2-pd-desc img,
.cv2-pd-desc video,
.cv2-pd-desc iframe,
.cv2-pd-desc embed,
.cv2-pd-desc object {
	max-width: 100%;
	border-radius: var(--pd-r);
}
.cv2-pd-desc video {
	height: auto;
	display: block;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 15px;
}
.cv2-pd-desc img {
	height: auto;
}
.cv2-pd-desc p > img:only-of-type,
.cv2-pd-desc center > img:only-of-type {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.cv2-pd-desc li img {
	display: inline-block;
	vertical-align: middle;
	margin: 0 8px 0 0;
	border-radius: 0;
}
.cv2-pd-desc div[style*="text-align: center"]:has(img),
.cv2-pd-desc p[style*="text-align: center"]:has(img),
.cv2-pd-desc p[align="center"]:has(img) {
	font-size: 0;
}
.cv2-pd-desc div[style*="text-align: center"] img,
.cv2-pd-desc p[style*="text-align: center"] img,
.cv2-pd-desc p[align="center"] img {
	display: inline-block;
	vertical-align: top;
	margin: 0;
}
/* Badges / links com imagem: espaço entre botões (margin no <a>, não depende de :has aninhado) */
.cv2-pd-desc div[style*="text-align: center"] > a:has(> img),
.cv2-pd-desc p[style*="text-align: center"] > a:has(> img),
.cv2-pd-desc p[align="center"] > a:has(> img) {
	display: inline-block;
	vertical-align: middle;
	margin: 6px 10px;
}
.cv2-pd-desc div[style*="text-align: center"] > a:has(> img) img,
.cv2-pd-desc p[style*="text-align: center"] > a:has(> img) img,
.cv2-pd-desc p[align="center"] > a:has(> img) img {
	display: block;
	margin: 0;
	max-width: 100%;
	height: auto;
}
/* Uma só imagem directa no bloco centrado → full width */
.cv2-pd-desc div[style*="text-align: center"] > img:only-of-type,
.cv2-pd-desc p[style*="text-align: center"] > img:only-of-type,
.cv2-pd-desc p[align="center"] > img:only-of-type {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
}
/* Várias imagens irmãs (grelha 2×2 sem <a>) → lado a lado com gap */
.cv2-pd-desc div[style*="text-align: center"] > img:not(:only-of-type),
.cv2-pd-desc p[style*="text-align: center"] > img:not(:only-of-type),
.cv2-pd-desc p[align="center"] > img:not(:only-of-type) {
	display: inline-block;
	vertical-align: top;
	margin: 6px;
	max-width: calc(50% - 12px);
}
.cv2-pd-desc iframe,
.cv2-pd-desc embed,
.cv2-pd-desc object {
	border: 0;
	overflow: hidden;
}
.cv2-pd-desc h1,
.cv2-pd-desc h2,
.cv2-pd-desc h3,
.cv2-pd-desc h4 {
	font-family: var(--pd-font-title);
	text-transform: none;
	letter-spacing: .02em;
	margin: 20px 0 10px;
}
.cv2-pd-desc h2 {
    font-size: 22px !important;
    color: #8d0042;
    font-weight: 600;
}
.cv2-pd-desc h3 {
	font-size: 18px !important; /* Título 3 */
	color: #8d0042;
	font-weight: 600;
}
.cv2-pd-desc h4 {
	font-size: 16px !important; /* Título 4 = corpo */
	color: #333333;
	font-weight: 600;
}
.cv2-pd-desc h1 {
	font-size: 22px !important;
	color: #8d0042;
	font-weight: 600;
}
.cv2-pd-desc table {
	width: 100%;
	border-collapse: collapse;
	overflow: hidden;
	border: 1px solid var(--pd-line);
	border-radius: var(--pd-r);
	margin: 16px 0;
}
.cv2-pd-desc th,
.cv2-pd-desc td {
	padding: 10px 12px;
	border-bottom: 1px solid var(--pd-line);
	text-align: left;
	font-size: 15px;
}
.cv2-pd-desc__brand { margin-top: 16px; }
.cv2-pd-desc__brand a { color: var(--pd-action); text-decoration: underline; }

/* Client HTML blocks (.product-file) — restyle to match the PDP */
.cv2-pd-desc .product-file {
	display: block;
	width: 100%;
	margin: 24px 0 8px;
	font-weight: 400 !important;
}
.cv2-pd-desc .product-file > [class*="pure-u"] {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 16px;
	background: #fff;
	border: 1px solid var(--pd-line);
	border-radius: var(--pd-r);
	overflow: hidden;
	box-sizing: border-box;
}
.cv2-pd-desc .product-file > [class*="pure-u"]:last-child { margin-bottom: 0; }
.cv2-pd-desc .product-file-title {
	background: var(--pd-action) !important;
	color: #fff !important;
	font-family: var(--pd-font-title) !important;
	font-weight: 800 !important;
	font-size: 12px !important;
	letter-spacing: .08em;
	text-transform: uppercase;
	text-align: left !important;
	border: 0 !important;
	margin: 0 !important;
	padding: 12px 16px !important;
}
.cv2-pd-desc .product-file ul {
	background: #f7f3ef !important;
	border: 0 !important;
	margin: 0 !important;
	padding: 14px 18px 16px !important;
	font-family: var(--pd-font-ui) !important;
	font-size: 15px !important;
	line-height: 1.55 !important;
	color: var(--pd-text) !important;
	list-style: none !important;
}
.cv2-pd-desc .product-file li {
	margin: 0 0 6px;
	color: var(--pd-text);
}
.cv2-pd-desc .product-file li:last-child { margin-bottom: 0; }
.cv2-pd-pack {
	background: #fff;
	border-radius: var(--pd-r);
	padding: 22px 24px;
	border: 1px solid var(--pd-line);
}
.cv2-pd-pack h3 {
	margin: 0 0 10px;
	font-family: var(--pd-font-title);
	font-weight: 900;
	font-size: 16px;
	text-transform: none;
	color: var(--pd-text);
}
.cv2-pd-pack p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--pd-muted); }

/* Recommended */
.cv2-pd-recs { background: var(--pd-cream); padding: 8px 0 56px; }
.cv2-pd-recs .cv2-pd-wrap { padding-top: 40px; }
.cv2-pd-recs__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 22px;
	gap: 16px;
}
.cv2-pd-recs__kicker {
	color: var(--pd-action);
	font-family: var(--pd-font-ui);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
	margin-bottom: 6px;
}
.cv2-pd-recs__title {
	font-family: var(--pd-font-title) !important;
	font-weight: 900 !important;
	font-size: 34px !important;
	letter-spacing: .02em;
	text-transform: uppercase !important;
	color: var(--pd-text) !important;
	margin: 0 !important;
}
.cv2-pd-recs__arrows { display: flex; gap: 8px; }
.cv2-pd-recs__arrows button {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid var(--pd-line2);
	background: #fff;
	cursor: pointer;
	font-size: 20px;
	color: var(--pd-text);
}
.cv2-pd-recs__arrows button[hidden] { display: none !important; }
.cv2-pd-recs__rail {
	display: flex;
	align-items: stretch;
	gap: 18px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 8px;
	scrollbar-width: none;
}
.cv2-pd-recs__rail::-webkit-scrollbar { height: 0; display: none; }
.cv2-pd-rec {
	flex: 0 0 calc((100% - 54px) / 4);
	scroll-snap-align: start;
	background: #fff;
	border-radius: var(--pd-r);
	padding: 16px 16px 20px;
	position: relative;
	text-align: center;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}
.cv2-pd-rec__fav {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 36px;
	height: 36px;
	border: 0;
	background: transparent;
	color: var(--pd-text);
	cursor: pointer;
	padding: 0;
}
.cv2-pd-rec__fav.is-on,
.cv2-pd-rec__fav.catalog_favorite_remove { color: var(--pd-action); }
.cv2-pd-rec__fav.is-on svg,
.cv2-pd-rec__fav.catalog_favorite_remove svg { fill: currentColor; }
.cv2-pd-rec__media {
	display: block;
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	margin-bottom: 12px;
	aspect-ratio: 1 / 1;
	background: #fff;
}
.cv2-pd-rec__media img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}
.cv2-pd-rec__brand {
	font-size: 11px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--pd-muted);
	margin-bottom: 4px;
}
.cv2-pd-rec__name {
	display: block;
	font-family: var(--pd-font-name);
	font-weight: 500;
	font-size: 20px;
	line-height: 1.25;
	color: var(--pd-text);
	margin-bottom: 8px;
}
.cv2-pd-rec__price {
	font-weight: 800;
	font-size: 16px;
	margin-bottom: 14px;
}
.cv2-pd-rec__buy {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: auto;
	width: 100%;
	box-sizing: border-box;
	min-height: 40px;
	padding: 8px 22px;
	border: 0;
	border-radius: 999px;
	background: var(--pd-action);
	color: #fff;
	font-family: var(--pd-font-ui);
	font-weight: 800;
	font-size: 12px;
	letter-spacing: .06em;
	text-transform: uppercase;
	cursor: pointer;
}
.cv2-pd-rec__buy:hover { background: var(--pd-action-h); }

/* Mobile bar — hidden on desktop */
.cv2-pd-bar { display: none; }

.cv2-pd-toast {
	position: fixed;
	left: 16px;
	right: 16px;
	bottom: 24px;
	max-width: 488px;
	margin: 0 auto;
	z-index: 2147483640;
	background: #1E1E1E;
	color: #F7F2EC;
	border-radius: 14px;
	padding: 14px 16px;
	font-size: 14px;
	font-family: var(--pd-font-ui);
	opacity: 0;
	pointer-events: none;
	transition: opacity .2s ease;
}
.cv2-pd-toast.is-show { opacity: 1; }

html body.cv2-pdp-page .full-wrapper,
html body.cv2-pdp-page .disable_hscroll,
html body.cv2-pdp-page #main-container,
html body.cv2-pdp-page .main-container {
	overflow: visible !important;
}

@media (min-width: 801px) and (max-height: 820px) {
	.cv2-pd-axis { margin-bottom: 14px; }
	.cv2-pd-ref { margin-bottom: 10px; }
	.cv2-pd-pack--buy p { display: none; }
	.cv2-pd-pack--buy { padding: 14px 16px; }
}

@media (max-width: 1100px) {
	.cv2-pd-wrap { padding-left: 16px; padding-right: 16px; }
	.cv2-pd-grid { grid-template-columns: minmax(0, 1fr) 380px; gap: 32px; }
	.cv2-pd-name { font-size: 36px !important; }
	.cv2-pd-details__grid { grid-template-columns: 1fr; }
}

@media (max-width: 800px) {
	html body.cv2-pdp-page,
	html body.cv2-pdp-page .full-wrapper,
	html body.cv2-pdp-page .cv2-pd,
	html body.cv2-pdp-page #main-content {
		overflow-x: hidden !important;
		max-width: 100%;
	}
	.cv2-pd-wrap,
	.cv2-pd-grid,
	.cv2-pd-gal,
	.cv2-pd-gal__main,
	.cv2-pd-buy,
	.cv2-pd-rail,
	.cv2-pd-thumbs,
	.cv2-pd-details,
	.cv2-pd-desc {
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}
	.cv2-pd-gal img,
	.cv2-pd-gal video,
	.cv2-pd-gal iframe,
	.cv2-pd-thumb img,
	.cv2-pd-rec__media img {
		max-width: 100% !important;
		height: 100%;
	}
	.cv2-pd-desc img,
	.cv2-pd-desc video,
	.cv2-pd-desc iframe {
		max-width: 100% !important;
		height: auto;
	}
	.cv2-pd-desc div[style*="text-align: center"] > a:has(> img),
	.cv2-pd-desc p[style*="text-align: center"] > a:has(> img),
	.cv2-pd-desc p[align="center"] > a:has(> img) {
		margin: 6px 10px;
	}
	.cv2-pd-desc div[style*="text-align: center"] > a:has(> img) img,
	.cv2-pd-desc p[style*="text-align: center"] > a:has(> img) img,
	.cv2-pd-desc p[align="center"] > a:has(> img) img {
		max-width: 100% !important;
	}
	.cv2-pd-desc div[style*="text-align: center"] > img:not(:only-of-type),
	.cv2-pd-desc p[style*="text-align: center"] > img:not(:only-of-type),
	.cv2-pd-desc p[align="center"] > img:not(:only-of-type) {
		margin: 6px;
		max-width: calc(50% - 12px) !important;
	}
	.cv2-pd-wrap { padding: 12px 16px 28px; }
	.cv2-pd-grid { grid-template-columns: 1fr; gap: 22px; }
	.cv2-pd-left { display: contents; }
	.cv2-pd-gal { order: 1; }
	.cv2-pd-buy {
		order: 2;
		position: static;
		top: auto;
		max-height: none;
		overflow: visible;
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
		box-sizing: border-box;
	}
	.cv2-pd-details { order: 3; padding-top: 8px; }
	.cv2-pd-gal { flex-direction: column; gap: 12px; }
	.cv2-pd-gal__main { max-width: none; }
	.cv2-pd-gal__nav { display: flex; align-items: center; justify-content: center; }
	.cv2-pd-rail { order: 0; width: 100%; flex: none; }
	.cv2-pd-rail__btn { display: none !important; }
	.cv2-pd-thumbs {
		flex-direction: row;
		width: 100%;
		max-width: none;
		max-height: none;
		overflow-x: auto;
		overflow-y: hidden;
	}
	.cv2-pd-thumb { width: 64px; height: 64px; flex: 0 0 64px; }
	.cv2-pd-bc li.is-home,
	.cv2-pd-bc li.is-last { display: none; }
	.cv2-pd-name { font-size: 32px !important; }
	.cv2-pd-sizes { display: grid; grid-template-columns: 1fr 1fr; }
	.cv2-pd-size { width: 100%; box-sizing: border-box; }
	.cv2-pd-tabs__nav { display: none; }
	.cv2-pd-acc__btn {
		display: block;
		width: 100%;
		text-align: left;
		border: 0;
		border-bottom: 1px solid var(--pd-line);
		background: transparent;
		padding: 16px 0;
		font-family: var(--pd-font-title);
		font-weight: 900;
		font-size: 13px;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--pd-text);
		cursor: pointer;
	}
	.cv2-pd-acc__btn.is-on { color: var(--pd-action); }
	.cv2-pd-pane {
		position: static;
		max-height: 0;
		overflow: hidden;
		padding: 0;
		opacity: 0;
		visibility: hidden;
	}
	.cv2-pd-pane.is-on {
		position: static;
		max-height: none;
		overflow: visible;
		padding: 8px 0 16px;
		opacity: 1;
		visibility: visible;
	}
	.cv2-pd-pane[data-pane="ship"] { display: block; }
	.cv2-pd-pane[data-pane="ship"].is-on { display: block !important; }
	.cv2-pd-recs__title { font-size: 26px !important; }
	.cv2-pd-rec {
		flex: 0 0 180px;
		padding: 0 0 12px;
		background: transparent;
	}
	.cv2-pd-rec__fav,
	.cv2-pd-rec__brand,
	.cv2-pd-rec__buy { display: none; }
	.cv2-pd-rec__name { font-size: 16px; }
	.cv2-pd-bar {
		display: flex;
		align-items: center;
		gap: 10px;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 80;
		background: #fff;
		padding: 8px 12px calc(8px + env(safe-area-inset-bottom));
		box-shadow: 0 -8px 24px rgba(27,20,22,.12);
		transform: translateY(110%);
		opacity: 0;
		pointer-events: none;
		transition: transform .28s ease, opacity .28s ease;
	}
	.cv2-pd-bar.is-on {
		transform: none;
		opacity: 1;
		pointer-events: auto;
	}
	.cv2-pd-bar__img {
		width: 52px;
		height: 66px;
		flex: 0 0 52px;
		object-fit: cover;
		border-radius: 10px;
		background: var(--pd-blush);
	}
	.cv2-pd-bar__copy {
		min-width: 0;
		flex: 1;
	}
	.cv2-pd-bar__name {
		font-family: var(--pd-font-name);
		font-size: 15px;
		font-weight: 500;
		line-height: 1.2;
		color: var(--pd-text);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		margin: 0 0 6px;
	}
	.cv2-pd-bar__row {
		display: flex;
		align-items: center;
		gap: 8px;
	}
	.cv2-pd-bar__price { min-width: 0; flex: 0 0 auto; }
	.cv2-pd-bar__price strong { display: block; font-size: 14px; font-weight: 800; white-space: nowrap; }
	.cv2-pd-bar .cv2-pd-fav--bar {
		width: 36px;
		height: 36px;
		min-width: 36px;
		box-shadow: none;
	}
	.cv2-pd-bar .cv2-pd-cta {
		flex: 1;
		height: 40px;
		min-width: 0;
		font-size: 12px;
		padding: 0 12px;
	}
	.cv2-pd { padding-bottom: 28px; }
	.cv2-pd.cv2-pd--bar-on { padding-bottom: 96px; }
}

.cv2-pd-notify__cancel{
	margin-top:10px;
	background:none;
	border:0;
	padding:0;
	color:#8b737b;
	font:inherit;
	font-size:13px;
	font-weight:700;
	text-decoration:underline;
	cursor:pointer;
}
.cv2-pd-notify__cancel:hover{color:#1b1416;}

/* t1630: mobile — Notificar-me em linha própria (texto completo) */
@media (max-width: 800px) {
	.cv2-pd-actions.cv2-pd-actions--notify {
		flex-wrap: wrap;
		align-items: stretch;
	}
	.cv2-pd-actions.cv2-pd-actions--notify .cv2-pd-stepper {
		display: none;
	}
	.cv2-pd-actions.cv2-pd-actions--notify .cv2-pd-cta.is-notify {
		flex: 1 1 calc(100% - 58px);
		width: auto;
		min-width: 0;
		height: auto;
		min-height: 48px;
		padding: 12px 18px;
		white-space: normal;
		line-height: 1.3;
		font-size: 14px;
		text-align: center;
	}
	.cv2-pd-actions.cv2-pd-actions--notify .cv2-pd-fav--row {
		flex: 0 0 48px;
		align-self: center;
	}
}

/* t1486: aviso OOS sem tamanhos — abaixo da linha do botão */
.cv2-pd-notify--below {
	margin-top: 12px;
}
