@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600&display=swap');

/* Homepage viva — hero slider, mock overlay (BO sec=hero). Isolado do homepage-v2. */

html body.cv2-home-blank,
html body.cv2-home-blank #full-wrapper,
html body.cv2-home-blank .full-wrapper,
html body.cv2-home-blank #main-container.main-container,
html body.cv2-home-blank .main-container,
html body.cv2-home-blank #main-content.main-content,
html body.cv2-home-blank .main-content,
html body.cv2-home-blank .cv2-home-blank__main {
	background: #f7f3ef !important;
	background-color: #f7f3ef !important;
}

html body.cv2-home-blank #main-container.main-container,
html body.cv2-home-blank .main-container,
html body.cv2-home-blank #main-content.main-content,
html body.cv2-home-blank .main-content {
	display: block !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	text-align: left !important;
}
html body.cv2-home-blank .main-menu {
	display: none !important;
	width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.cv2-home-blank .cv2-home-blank__main {
	display: block;
	width: 100%;
	min-height: 0;
	padding: 0;
	text-align: left;
}

.cv2-hh {
	--cv2-menu-h: 48px;
	position: relative;
	z-index: 1;
	width: 100%;
	margin: 0;
	overflow: hidden;
	background: #1a0c14;
	color: #fff;
	text-align: left;
}

/* Homepage: menu principal sobre o hero (transparente). Outras paginas: opaco no mega-menu.css */
html body.cv2-home-blank #topm-cats.cv2mm-host,
html body.cv2-home-blank .topm-cats.cv2mm-host {
	background: #85003ebd !important;
}
@media only screen and (min-width: 801px) {
	.cv2-hh__slide.is-on {
		padding-top: var(--cv2-menu-h, 48px);
	}
	.cv2-hh__thumbs {
		max-height: calc(100% - 8px);
	}
	.cv2-hh__thumb {
		width: clamp(56px, 10vh, 100px);
		height: clamp(56px, 10vh, 100px);
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
	}
	html.cv2-hh-pinned body.cv2-home-blank #full-wrapper,
	html.cv2-hh-pinned body.cv2-home-blank .full-wrapper {
		position: relative;
	}
	html.cv2-hh-pinned body.cv2-home-blank #topm-cats.cv2mm-host,
	html.cv2-hh-pinned body.cv2-home-blank .topm-cats.cv2mm-host {
		position: absolute !important;
		left: 0;
		right: 0;
		top: var(--cv2-hdr-h);
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		z-index: 80;
		background: #85003ebd !important;
	}
	html.cv2-hh-pinned body.cv2-home-blank .cv2-hh {
		margin-top: 0 !important;
	}
}

.cv2-hh__track {
	position: relative;
}

.cv2-hh__slide {
position: relative;
display: none;
min-height: 270px;
aspect-ratio: auto;
height: calc(100vw * 8 / 21);
max-height: calc(100vh - var(--cv2-hdr-h, 80px));
box-sizing: border-box;
}

.cv2-hh__slide.is-on {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}

.cv2-hh__media {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.cv2-hh__media picture, .cv2-hh__media img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	object-position: center 68%;
}
.cv2-hh__media img.cv2-hh__peek,
.cv2-hh__peek {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 90%;
	opacity: 0;
	pointer-events: none;
	-webkit-transform: none;
	transform: none;
}
@-webkit-keyframes cv2hh-peek {
	0% { opacity: 0; object-position: center 90%; }
	6% { opacity: 1; object-position: center 90%; }
	72% { opacity: 1; object-position: center top; }
	100% { opacity: 0; object-position: center top; }
}
@keyframes cv2hh-peek {
	0% { opacity: 0; object-position: center 90%; }
	6% { opacity: 1; object-position: center 90%; }
	72% { opacity: 1; object-position: center top; }
	100% { opacity: 0; object-position: center top; }
}
.cv2-hh__media img.cv2-hh__peek.is-on,
.cv2-hh__peek.is-on {
	-webkit-animation: cv2hh-peek 5.6s ease-in-out forwards;
	animation: cv2hh-peek 5.6s ease-in-out forwards;
}
.cv2-hh__thumb.is-peek {
	border-color: #fff;
	box-shadow: 0 8px 22px rgba(0,0,0,0.4);
}
@media (prefers-reduced-motion: reduce) {
	.cv2-hh__media img.cv2-hh__peek.is-on,
	.cv2-hh__peek.is-on {
		-webkit-animation: none;
		animation: none;
		opacity: 1;
		object-position: center 50%;
	}
}

.cv2-hh__slide:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: linear-gradient(48deg, rgb(45 11 27) 0%, rgb(55 0 36 / 42%) 38%, rgba(18, 6, 14, 0.08) 68%, rgb(0 0 0 / 18%) 100%);
	pointer-events: none;
}

.cv2-hh__inner {
	position: relative;
	z-index: 2;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
	width: 100%;
	max-width: 1440px;
	height: 100%;
	min-height: 0;
	margin: 0 auto;
	padding: 0 16px;
	box-sizing: border-box;
	gap: 24px;
}

.cv2-hh__copy {
	position: relative;
	z-index: 2;
	-webkit-align-self: center;
	align-self: center;
	box-sizing: border-box;
	max-width: 640px;
	margin: 0;
	padding: 0;
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
	text-align: left !important;
}

.cv2-hh__kicker,
.cv2-hh__badge,
.cv2-hh__sub,
.cv2-hh__price,
.cv2-hh__cta,
.cv2-hh__actions,
.cv2-hh__more,
.cv2-hh__thumbs {
	text-align: left !important;
}

.cv2-hh__kicker {
	display: block;
	margin: 0 0 8px;
	font-family: Poppins, Helvetica, Arial, sans-serif;
	font-weight: 700;
	font-size: clamp(28px, 4.2vw, 56px);
	line-height: 1.1;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #fff;
}

html body.cv2-home-blank h2.cv2-hh__title,
.cv2-hh h2.cv2-hh__title {
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-family: "Cormorant Garamond", Georgia, serif !important;
	font-weight: 500 !important;
	font-size: clamp(18px, 2.1vw, 32px) !important;
	line-height: 1.15 !important;
	letter-spacing: 0 !important;
	color: #fff !important;
	text-align: left !important;
	display: block !important;
}

.cv2-hh__sub {
	margin: 0 0 28px;
	max-width: 360px;
	font-family: Inter, Manrope, Arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.9);
}


.cv2-hh__price {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: baseline;
	align-items: baseline;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 8px 12px;
	margin: 0 0 22px;
	font-family: Inter, Manrope, Arial, sans-serif;
}
.cv2-hh__price-now {
	font-size: 28px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
	letter-spacing: -0.02em;
}
.cv2-hh__price-old {
	font-size: 16px;
	font-weight: 400;
	color: rgba(255,255,255,0.55);
	text-decoration: line-through;
}

.cv2-hh__cta {
	display: inline-block;
	float: none;
	margin: 0;
	padding: 12px 22px;
	border: 1px solid #fff;
	border-radius: 999px;
	background: #9D0048;
	color: #fff !important;
	font-family: Inter, Manrope, Arial, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
}

.cv2-hh__cta:hover,
.cv2-hh__cta:focus {
	background: #b30052;
	color: #fff !important;
}

.cv2-hh__actions {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 10px 16px;
	margin: 0;
}

.cv2-hh button.cv2-hh__cta,
.cv2-hh button.cv2-hh__cta.cv2-qb-btn,
.cv2-hh button.cv2-hh__cta.cv2-qb-btn--buy {
	display: inline-block;
	width: auto;
	max-width: 100%;
	min-height: 0;
	border: 1px solid #fff;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	font-family: Inter, Manrope, Arial, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border-radius: 999px;
	padding: 12px 22px;
	background: #9D0048;
	color: #fff !important;
}

.cv2-hh button.cv2-hh__cta:hover,
.cv2-hh button.cv2-hh__cta:focus {
	background: #b30052;
	color: #fff !important;
}

.cv2-hh__more {
	display: inline-block;
	margin: 0;
	padding: 0;
	color: #fff !important;
	font-family: Inter, Manrope, Arial, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.cv2-hh__more:hover,
.cv2-hh__more:focus {
	color: #fff !important;
	opacity: 0.85;
}

.cv2-hh__thumbs {
	position: relative;
	z-index: 2;
	-webkit-align-self: center;
	align-self: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	gap: 12px;
	margin: 0;
	padding: 0;
	-webkit-flex: 0 0 auto;
	flex: 0 0 auto;
}

.cv2-hh__thumb {
	display: block;
	width: 100px;
	height: 100px;
	-webkit-flex: 0 0 100px;
	flex: 0 0 100px;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,0.35);
	background: rgba(0,0,0,0.2);
	box-shadow: 0 8px 22px rgba(0,0,0,0.28);
	opacity: 0.9;
}

.cv2-hh__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cv2-hh__pills {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 18px;
	z-index: 4;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	gap: 8px;
	pointer-events: none;
}
.cv2-hh__pill {
	pointer-events: auto;
	width: 56px;
	height: 22px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
.cv2-hh__pill-track {
	display: block;
	width: 100%;
	height: 12px;
	margin-bottom: 20px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .34);
	overflow: hidden;
}
.cv2-hh__pill-fill {
	display: block;
	width: 0;
	height: 100%;
	border-radius: inherit;
	background: #9e00484d;
}
.cv2-hh__pill.is-done .cv2-hh__pill-fill {
	width: 100%;
}
.cv2-hh__pill.is-on .cv2-hh__pill-fill {
	-webkit-animation: cv2-hh-pill-fill var(--cv2-hh-ms, 7000ms) linear forwards;
	animation: cv2-hh-pill-fill var(--cv2-hh-ms, 7000ms) linear forwards;
}
.cv2-hh.is-paused .cv2-hh__pill.is-on .cv2-hh__pill-fill {
	-webkit-animation-play-state: paused;
	animation-play-state: paused;
}
@-webkit-keyframes cv2-hh-pill-fill {
	from { width: 0; }
	to { width: 100%; }
}
@keyframes cv2-hh-pill-fill {
	from { width: 0; }
	to { width: 100%; }
}


@media only screen and (min-width: 801px) and (max-height: 760px) {
	.cv2-hh__kicker { font-size: clamp(24px, 3.6vw, 40px); }
	html body.cv2-home-blank h2.cv2-hh__title,
	.cv2-hh h2.cv2-hh__title { font-size: clamp(16px, 1.8vw, 24px) !important; }
	.cv2-hh__sub { font-size: 14px; margin-bottom: 14px; }
	.cv2-hh__price-now { font-size: 20px; }
	.cv2-hh__copy { padding: 0; }
	.cv2-hh__thumbs { margin-right: 0; gap: 8px; }
	.cv2-hh__thumb {
		width: clamp(48px, 9vh, 72px);
		height: clamp(48px, 9vh, 72px);
	}
}
@media only screen and (max-width: 800px) {
    .cv2-hh__slide {
min-height: 420px;
height: auto;
max-height: none;
aspect-ratio: auto;
}
	.cv2-hh__inner { padding: 0 16px; height: auto; }
	.cv2-hh__copy {
		max-width: 100%;
		padding: 24px 0;
		text-align: left !important;
	}
	.cv2-hh__kicker { font-size: 34px; }
	html body.cv2-home-blank h2.cv2-hh__title,
	.cv2-hh h2.cv2-hh__title {
		font-size: 22px !important;
	}
	.cv2-hh__price-now { font-size: 22px; }
	.cv2-hh__slide.is-on {
		-webkit-flex-direction: column;
		flex-direction: column;
		-webkit-align-items: stretch;
		align-items: stretch;
		-webkit-justify-content: center;
		justify-content: center;
	}
	.cv2-hh__thumbs,
	.cv2-hh__peek {
		display: none !important;
	}
}

/* Hero intro: fade em cascata */
@-webkit-keyframes cv2hh-in-img {
	from { opacity: 0; -webkit-transform: scale(1.045); transform: scale(1.045); }
	to { opacity: 1; -webkit-transform: none; transform: none; }
}
@keyframes cv2hh-in-img {
	from { opacity: 0; -webkit-transform: scale(1.045); transform: scale(1.045); }
	to { opacity: 1; -webkit-transform: none; transform: none; }
}
@-webkit-keyframes cv2hh-in {
	from { opacity: 0; -webkit-transform: translateY(14px); transform: translateY(14px); }
	to { opacity: 1; -webkit-transform: none; transform: none; }
}
@keyframes cv2hh-in {
	from { opacity: 0; -webkit-transform: translateY(14px); transform: translateY(14px); }
	to { opacity: 1; -webkit-transform: none; transform: none; }
}

.cv2-hh__slide.is-on .cv2-hh__media {
	-webkit-animation: cv2hh-in-img 1.05s ease both;
	animation: cv2hh-in-img 1.05s ease both;
}
.cv2-hh__slide.is-on:after {
	-webkit-animation: cv2hh-in 0.9s ease both;
	animation: cv2hh-in 0.9s ease both;
	-webkit-animation-delay: 0.12s;
	animation-delay: 0.12s;
}
.cv2-hh__slide.is-on .cv2-hh__kicker {
	-webkit-animation: cv2hh-in 0.62s ease both;
	animation: cv2hh-in 0.62s ease both;
	-webkit-animation-delay: 0.32s;
	animation-delay: 0.32s;
}
.cv2-hh__slide.is-on h2.cv2-hh__title,
.cv2-hh__slide.is-on .cv2-hh__title {
	-webkit-animation: cv2hh-in 0.68s ease both;
	animation: cv2hh-in 0.68s ease both;
	-webkit-animation-delay: 0.52s;
	animation-delay: 0.52s;
}
.cv2-hh__slide.is-on .cv2-hh__sub {
	-webkit-animation: cv2hh-in 0.62s ease both;
	animation: cv2hh-in 0.62s ease both;
	-webkit-animation-delay: 0.74s;
	animation-delay: 0.74s;
}
.cv2-hh__slide.is-on .cv2-hh__price {
	-webkit-animation: cv2hh-in 0.62s ease both;
	animation: cv2hh-in 0.62s ease both;
	-webkit-animation-delay: 0.86s;
	animation-delay: 0.86s;
}
.cv2-hh__slide.is-on .cv2-hh__cta,
.cv2-hh__slide.is-on .cv2-hh__actions {
	-webkit-animation: cv2hh-in 0.62s ease both;
	animation: cv2hh-in 0.62s ease both;
	-webkit-animation-delay: 0.96s;
	animation-delay: 0.96s;
}
.cv2-hh__slide.is-on .cv2-hh__thumbs {
	-webkit-animation: cv2hh-in 0.62s ease both;
	animation: cv2hh-in 0.62s ease both;
	-webkit-animation-delay: 1.14s;
	animation-delay: 1.14s;
}

@media (prefers-reduced-motion: reduce) {
	.cv2-hh__slide.is-on .cv2-hh__media,
	.cv2-hh__slide.is-on:after,
	.cv2-hh__slide.is-on .cv2-hh__kicker,
	.cv2-hh__slide.is-on h2.cv2-hh__title,
	.cv2-hh__slide.is-on .cv2-hh__title,
	.cv2-hh__slide.is-on .cv2-hh__sub,
	.cv2-hh__slide.is-on .cv2-hh__price,
	.cv2-hh__slide.is-on .cv2-hh__cta,
	.cv2-hh__slide.is-on .cv2-hh__actions,
	.cv2-hh__slide.is-on .cv2-hh__thumbs {
		-webkit-animation: none;
		animation: none;
	}
}
