/* Valentino brand page - roim-bamoshava.co.il. Everything is scoped to body.rv-page. */
body.rv-page {
	--rv-ivory: #f4efe8;
	--rv-paper: #fbf9f5;
	--rv-ink: #171412;
	--rv-body: #3d3631;
	--rv-muted: #7a6f65;
	--rv-rosso: #a3141d;
	--rv-rosso-deep: #7e0f17;
	--rv-gold: #a07d48;
	--rv-gold-soft: #e7c98f;
	--rv-line: rgba(23, 20, 18, .14);
	--rv-serif-he: "Frank Ruhl Libre", "David", serif;
	--rv-serif-lat: "Bodoni Moda", "Didot", "Bodoni 72", serif;
}

/* ---------- section shells ---------- */
body.rv-page .rv-sec {
	--flex-direction: row !important;
	--flex-wrap: nowrap !important;
	--gap: 0px !important;
	--column-gap: 0px !important;
	--row-gap: 0px !important;
	--padding-top: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
	align-items: stretch;
	background: var(--rv-ivory);
	color: var(--rv-body);
	position: relative;
}
body.rv-page .rv-col {
	--padding-top: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
	--gap: 0px !important;
	--row-gap: 0px !important;
	width: 50%;
	min-width: 0;
}
body.rv-page .rv-copy {
	--justify-content: center !important;
	justify-content: center;
	padding: clamp(48px, 7vw, 110px) clamp(24px, 6vw, 96px) !important;
}
body.rv-page .rv-copy > .e-con-inner,
body.rv-page .rv-copy { max-width: none; }
body.rv-page .rv-copy .elementor-widget { max-width: 620px; width: 100%; }

/* ---------- type ---------- */
body.rv-page .rv-eyebrow .elementor-heading-title {
	font-family: "Rubik", sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: .32em !important;
	text-transform: uppercase;
	color: var(--rv-gold) !important;
	direction: ltr;
	unicode-bidi: plaintext;
	text-align: right;
	margin: 0 0 18px !important;
	line-height: 1.4 !important;
}
body.rv-page .rv-title .elementor-heading-title {
	font-family: var(--rv-serif-lat) !important;
	font-weight: 400 !important;
	font-size: clamp(44px, 4.8vw, 84px) !important;
	line-height: 1 !important;
	letter-spacing: .07em !important;
	white-space: nowrap;
	text-transform: uppercase;
	color: var(--rv-ink) !important;
	margin: 0 0 22px !important;
}
body.rv-page .rv-sub .elementor-heading-title {
	font-family: var(--rv-serif-he) !important;
	font-weight: 500 !important;
	font-size: clamp(20px, 1.7vw, 25px) !important;
	line-height: 1.45 !important;
	color: var(--rv-ink) !important;
	margin: 0 0 22px !important;
}
body.rv-page .rv-h2 .elementor-heading-title {
	font-family: var(--rv-serif-he) !important;
	font-weight: 500 !important;
	font-size: clamp(28px, 2.9vw, 44px) !important;
	line-height: 1.2 !important;
	color: var(--rv-ink) !important;
	margin: 0 0 26px !important;
}
body.rv-page .rv-body,
body.rv-page .rv-body p {
	font-family: "Rubik", sans-serif;
	font-size: 17px !important;
	line-height: 1.8 !important;
	color: var(--rv-body) !important;
}
body.rv-page .rv-body p { margin: 0 0 1.05em; }
body.rv-page .rv-body p:last-child { margin-bottom: 0; }
body.rv-page .rv-body a { color: var(--rv-rosso) !important; text-decoration: underline; text-underline-offset: 3px; }

/* ---------- hero ---------- */
body.rv-page .rv-hero { min-height: min(88vh, 860px); background: var(--rv-ivory); overflow: hidden; }
body.rv-page .rv-hero .rv-copy { width: 48%; }
body.rv-page .rv-hero .rv-media {
	width: 52%;
	--justify-content: center !important;
	justify-content: center;
	align-items: center;
	padding: clamp(40px, 5vw, 80px) !important;
	background:
		radial-gradient(120% 90% at 30% 40%, #fffdf9 0%, rgba(255, 253, 249, 0) 60%),
		linear-gradient(160deg, #efe8de, #e6ddd1);
}
body.rv-page .rv-hero .elementor-widget-breadcrumbs { margin-bottom: 26px; font-size: 13px; color: var(--rv-muted); }
body.rv-page .rv-hero .elementor-widget-breadcrumbs a { color: var(--rv-muted); }
body.rv-page .rv-postcard { width: min(100%, 520px) !important; max-width: 520px; }
body.rv-page .rv-postcard img {
	display: block;
	width: 100% !important;
	height: auto !important;
	background: #fff;
	padding: 14px 14px 46px;
	box-shadow: 0 30px 60px -28px rgba(60, 25, 20, .45), 0 2px 6px rgba(0, 0, 0, .06);
	transform: rotate(-2.2deg);
}
body.rv-page .rv-postcard .widget-image-caption,
body.rv-page .rv-postcard figcaption {
	font-family: var(--rv-serif-lat);
	font-style: italic;
	font-size: 15px;
	color: var(--rv-muted);
	margin-top: -38px;
	position: relative;
	transform: rotate(-2.2deg);
	text-align: center;
	direction: ltr;
}

/* icon list */
body.rv-page .rv-list { margin: 6px 0 30px !important; }
body.rv-page .rv-list .elementor-icon-list-item { padding: 7px 0 !important; border-bottom: 1px solid var(--rv-line); }
body.rv-page .rv-list .elementor-icon-list-item:first-child { border-bottom: 0; padding-bottom: 2px !important; }
body.rv-page .rv-list .elementor-icon-list-item:last-child { border-bottom: 0; }
body.rv-page .rv-list .elementor-icon-list-text { color: var(--rv-body) !important; font-size: 16px; }
body.rv-page .rv-list .elementor-icon-list-icon svg,
body.rv-page .rv-list .elementor-icon-list-icon i { fill: var(--rv-rosso) !important; color: var(--rv-rosso) !important; }

/* chip nav */
body.rv-page .rv-chips {
	--flex-direction: row !important;
	--flex-wrap: wrap !important;
	--gap: 10px 10px !important;
	--column-gap: 10px !important;
	--row-gap: 10px !important;
	--padding-top: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
	max-width: 620px;
}
body.rv-page .rv-chip { width: auto !important; max-width: none !important; }
body.rv-page .rv-chip .elementor-button {
	background: transparent !important;
	border: 1px solid var(--rv-ink) !important;
	border-radius: 0 !important;
	color: var(--rv-ink) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	letter-spacing: .02em;
	padding: 11px 18px !important;
	transition: background .25s, color .25s;
}
body.rv-page .rv-chip .elementor-button:hover,
body.rv-page .rv-chip .elementor-button:focus-visible { background: var(--rv-ink) !important; color: var(--rv-paper) !important; }
body.rv-page .rv-chip--rosso .elementor-button { border-color: var(--rv-rosso) !important; background: var(--rv-rosso) !important; color: #fff !important; }
body.rv-page .rv-chip--rosso .elementor-button:hover { background: var(--rv-rosso-deep) !important; }

/* ---------- full-bleed media columns ---------- */
body.rv-page .rv-fill { position: relative; overflow: hidden; }
body.rv-page .rv-fill .elementor-widget-image,
body.rv-page .rv-fill .elementor-widget-image .elementor-widget-container { height: 100%; width: 100%; }
body.rv-page .rv-fill .elementor-widget-image img {
	width: 100% !important;
	height: 100% !important;
	min-height: 560px;
	max-height: 860px;
	object-fit: cover;
	object-position: var(--rv-pos, center);
	display: block;
}

/* rosso */
body.rv-page .rv-rosso { background: var(--rv-rosso); }
body.rv-page .rv-rosso .rv-eyebrow .elementor-heading-title { color: var(--rv-gold-soft) !important; }
body.rv-page .rv-rosso .rv-h2 .elementor-heading-title,
body.rv-page .rv-rosso .rv-body,
body.rv-page .rv-rosso .rv-body p { color: #fff6ef !important; }
body.rv-page .rv-rosso .rv-copy { background: linear-gradient(200deg, var(--rv-rosso) 0%, var(--rv-rosso-deep) 100%); }
body.rv-page .rv-quote .elementor-heading-title {
	font-family: var(--rv-serif-lat) !important;
	font-style: italic;
	font-weight: 400 !important;
	font-size: clamp(20px, 1.6vw, 24px) !important;
	color: var(--rv-gold-soft) !important;
	direction: ltr;
	text-align: right;
	margin-top: 30px !important;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 246, 239, .28);
}

/* v-logo */
body.rv-page .rv-vlogo { background: var(--rv-paper); }

/* cat-eye: two overlapping photos */
body.rv-page .rv-cateye { background: var(--rv-ivory); }
body.rv-page .rv-duo {
	position: relative;
	padding: clamp(40px, 5vw, 80px) clamp(24px, 4vw, 70px) !important;
	--justify-content: center !important;
	justify-content: center;
	align-items: center;
}
body.rv-page .rv-duo__a { width: 72% !important; max-width: 470px; margin-inline-end: auto; }
body.rv-page .rv-duo__a img { width: 100% !important; height: auto !important; display: block; box-shadow: 0 24px 50px -30px rgba(0, 0, 0, .45); }
body.rv-page .rv-duo__b {
	position: absolute !important;
	width: 34% !important;
	max-width: 240px;
	inset-inline-end: clamp(12px, 2vw, 34px);
	bottom: clamp(24px, 3vw, 48px);
	z-index: 2;
}
body.rv-page .rv-duo__b img { width: 100% !important; height: auto !important; display: block; border: 10px solid #fff; box-shadow: 0 20px 40px -18px rgba(0, 0, 0, .4); }

/* rx */
body.rv-page .rv-rx { background: var(--rv-paper); }
body.rv-page .rv-rx .rv-fill .elementor-widget-image img { max-height: 760px; --rv-pos: center 30%; }
body.rv-page .rv-facts {
	display: flex;
	gap: 0;
	margin: 30px 0 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--rv-line);
}
body.rv-page .rv-facts li { flex: 1; padding: 18px 0 0; }
body.rv-page .rv-facts li + li { padding-inline-start: 20px; margin-inline-start: 20px; border-inline-start: 1px solid var(--rv-line); }
body.rv-page .rv-facts b { display: block; font-family: var(--rv-serif-he); font-weight: 500; font-size: 36px; letter-spacing: -.01em; line-height: 1; color: var(--rv-rosso); margin-bottom: 8px; direction: ltr; text-align: right; }
body.rv-page .rv-facts span { font-size: 14px; line-height: 1.5; color: var(--rv-muted); display: block; }

/* atelier shortcode section */
body.rv-page .rv-atelier { background: var(--rv-paper); display: block; }
.rva {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	gap: clamp(28px, 5vw, 80px);
	align-items: center;
	max-width: 1280px;
	margin: 0 auto;
	padding: clamp(56px, 7vw, 110px) clamp(20px, 4vw, 48px);
}
.rva__eyebrow { font: 500 12px/1.4 "Rubik", sans-serif; letter-spacing: .32em; text-transform: uppercase; color: var(--rv-gold, #a07d48); margin: 0 0 18px; direction: ltr; text-align: right; }
.rva__h2 { font-family: var(--rv-serif-he, serif); font-weight: 500; font-size: clamp(28px, 2.9vw, 44px); line-height: 1.2; color: var(--rv-ink, #171412); margin: 0 0 18px; }
.rva__lead { font-size: 17px; line-height: 1.75; color: var(--rv-body, #3d3631); margin: 0 0 26px; }
.rva__tabs { display: inline-flex; border: 1px solid var(--rv-ink, #171412); margin-bottom: 18px; }
.rva__tab {
	display: inline-flex; align-items: center; gap: 10px;
	background: transparent; border: 0; color: var(--rv-ink, #171412);
	padding: 12px 20px; cursor: pointer;
	font: 400 20px/1 var(--rv-serif-lat, serif); font-style: italic; letter-spacing: .02em;
	transition: background .25s, color .25s;
}
.rva__tab small { font: 400 13px/1 "Rubik", sans-serif; font-style: normal; color: inherit; opacity: .7; }
.rva__tab + .rva__tab { border-inline-start: 1px solid var(--rv-ink, #171412); }
.rva__tab[aria-pressed="true"] { background: var(--rv-ink, #171412); color: #fff; }
.rva__tab:hover:not([aria-pressed="true"]) { background: rgba(23, 20, 18, .06); }
.rva__dot { width: 14px; height: 14px; border-radius: 50%; box-shadow: 0 0 0 2px #fff, 0 0 0 3px rgba(0, 0, 0, .2); }
.rva__list { list-style: none; margin: 0; padding: 0; display: none; }
.rva__list.is-on { display: block; }
.rva__list li { border-bottom: 1px solid var(--rv-line, rgba(0, 0, 0, .14)); }
.rva__item {
	display: flex; gap: 18px; width: 100%; text-align: right;
	background: transparent; border: 0; border-radius: 0; padding: 16px 4px; cursor: pointer; color: inherit;
	align-items: flex-start; transition: background .2s;
	white-space: normal; font: inherit; line-height: inherit;
}
.rva__txt { flex: 1; min-width: 0; }
.rva__item:hover { background: rgba(23, 20, 18, .035); }
.rva__num { font: 400 22px/1.1 var(--rv-serif-lat, serif); color: var(--rv-muted, #7a6f65); min-width: 30px; transition: color .2s; }
.rva__txt strong { display: block; font-family: var(--rv-serif-he, serif); font-weight: 500; font-size: 19px; color: var(--rv-ink, #171412); margin-bottom: 2px; }
.rva__txt span { display: block; font-size: 15px; line-height: 1.65; color: var(--rv-body, #3d3631); max-height: 0; overflow: hidden; opacity: 0; transition: max-height .35s ease, opacity .3s; }
.rva__item.is-on .rva__txt span { max-height: 12em; opacity: 1; margin-top: 4px; }
.rva__item.is-on .rva__num { color: var(--rv-rosso, #a3141d); }
.rva__item:focus-visible, .rva__tab:focus-visible, .rva__pin:focus-visible { outline: 2px solid var(--rv-rosso, #a3141d); outline-offset: 2px; }

.rva__stage { position: relative; touch-action: pan-y; user-select: none; -webkit-user-select: none; }
.rva__fig { margin: 0; position: relative; display: none; }
.rva__fig.is-on { display: block; }
.rva__fig img { display: block; width: 100%; height: auto; cursor: crosshair; box-shadow: 0 30px 60px -32px rgba(60, 25, 20, .5); }
.rva__pin {
	position: absolute; left: var(--x); top: var(--y);
	width: 30px; height: 30px; margin: -15px 0 0 -15px; border-radius: 50%;
	border: 1px solid #fff; background: rgba(23, 20, 18, .78); color: #fff;
	font: 500 13px/28px "Rubik", sans-serif; text-align: center; padding: 0; cursor: pointer; z-index: 3;
	box-shadow: 0 0 0 4px rgba(255, 255, 255, .35);
	transition: background .2s, transform .2s;
}
.rva__pin.is-on, .rva__pin:hover { background: var(--rv-rosso, #a3141d); transform: scale(1.12); }
.rva__loupe {
	position: absolute; left: 0; top: 0; z-index: 4;
	width: clamp(150px, 15vw, 210px); height: clamp(150px, 15vw, 210px); border-radius: 50%;
	background-color: #fff; background-repeat: no-repeat;
	box-shadow: 0 0 0 5px #fff, 0 0 0 6px rgba(160, 125, 72, .9), 0 18px 40px rgba(0, 0, 0, .35);
	opacity: 0; transition: opacity .25s;
	touch-action: none; cursor: grab;
}
.rva.has-loupe .rva__loupe { opacity: 1; }
.rva__hint { margin: 14px 0 0; font-size: 13px; color: var(--rv-muted, #7a6f65); text-align: center; }
.rva__hint-touch { display: none; }
@media (hover: none) {
	.rva__hint-mouse { display: none; }
	.rva__hint-touch { display: inline; }
}

/* ---------- FAQ / CTA touches ---------- */
body.rv-page .rv-faq .elementor-heading-title { font-family: var(--rv-serif-he) !important; font-weight: 500 !important; }
body.rv-page .rv-faq .elementor-tab-title.elementor-active,
body.rv-page .rv-faq .elementor-tab-title.elementor-active a,
body.rv-page .rv-faq .elementor-tab-title:hover a { color: var(--rv-rosso) !important; }
body.rv-page .rv-faq .elementor-tab-title.elementor-active .elementor-accordion-icon,
body.rv-page .rv-faq .elementor-tab-title.elementor-active .elementor-accordion-icon i { color: var(--rv-rosso) !important; }
body.rv-page .rv-cta { background: var(--rv-ivory) !important; }
body.rv-page .rv-cta .elementor-heading-title { font-family: var(--rv-serif-he) !important; color: var(--rv-ink) !important; }
body.rv-page .rv-cta .elementor-widget-heading:first-child .elementor-heading-title { color: var(--rv-rosso) !important; }
body.rv-page .rv-cta .elementor-button { border-radius: 0 !important; color: var(--rv-rosso) !important; border-color: var(--rv-rosso) !important; background: transparent !important; }
body.rv-page .rv-cta .elementor-button .elementor-button-icon svg { fill: var(--rv-rosso) !important; }
body.rv-page .rv-cta .elementor-button:hover { background: var(--rv-rosso) !important; color: #fff !important; }
body.rv-page .rv-cta .elementor-button:hover .elementor-button-icon svg { fill: #fff !important; }

/* ---------- reveal on scroll (progressive, motion-safe) ---------- */
@media (prefers-reduced-motion: no-preference) {
	@supports (animation-timeline: view()) {
		body.rv-page .rv-reveal {
			animation: rv-rise linear both;
			animation-timeline: view();
			animation-range: entry 5% cover 30%;
		}
		@keyframes rv-rise {
			from { opacity: 0; transform: translateY(40px); }
			to { opacity: 1; transform: none; }
		}
	}
}

/* ---------- tablet / mobile ---------- */
@media (max-width: 1024px) {
	body.rv-page .rv-sec { --flex-direction: column !important; flex-direction: column; }
	body.rv-page .rv-col,
	body.rv-page .rv-hero .rv-copy,
	body.rv-page .rv-hero .rv-media { width: 100% !important; }
	body.rv-page .rv-media { order: -1; }
	body.rv-page .rv-fill .elementor-widget-image img { min-height: 0; height: auto !important; aspect-ratio: 4 / 3; max-height: 70vh; }
	body.rv-page .rv-rx .rv-fill .elementor-widget-image img { aspect-ratio: 4 / 3.4; }
	.rva { grid-template-columns: 1fr; }
	.rva__stage { order: -1; max-width: 560px; width: 100%; margin: 0 auto; }
}
@media (max-width: 767px) {
	body.rv-page .rv-hero { min-height: 0; }
	body.rv-page .rv-hero .rv-media { padding: 34px 34px 22px !important; }
	body.rv-page .rv-postcard { width: 82% !important; margin: 0 auto; }
	body.rv-page .rv-postcard img { padding: 9px 9px 30px; }
	body.rv-page .rv-copy { padding: 36px 20px 48px !important; }
	body.rv-page .rv-title .elementor-heading-title { font-size: 52px !important; }
	body.rv-page .rv-body, body.rv-page .rv-body p { font-size: 16px !important; }
	body.rv-page .rv-chip .elementor-button { padding: 9px 13px !important; font-size: 13px !important; }
	body.rv-page .rv-duo { padding: 30px 20px 40px !important; }
	body.rv-page .rv-duo__a { width: 74% !important; }
	body.rv-page .rv-duo__b { width: 44% !important; bottom: 24px; inset-inline-end: 16px; }
	body.rv-page .rv-facts { flex-direction: column; }
	body.rv-page .rv-facts li + li { padding-inline-start: 0; margin-inline-start: 0; border-inline-start: 0; border-top: 1px solid var(--rv-line); margin-top: 14px; }
	.rva { padding: 44px 20px 56px; gap: 26px; }
	.rva__tab { padding: 11px 15px; font-size: 18px; }
	.rva__loupe { width: 130px; height: 130px; }
}

/* =========================================================
   Hero options (round 2, 2026-10-21): a = calla, b = rosso full-bleed, c = nero
   ========================================================= */
body.rv-page .rv-heromedia { padding: 0 !important; position: relative; overflow: hidden; }
body.rv-page .rv-heromedia .elementor-widget-image,
body.rv-page .rv-heromedia .elementor-widget-image .elementor-widget-container { height: 100%; width: 100%; }
body.rv-page .rv-heromedia { --justify-content: center !important; justify-content: center; }
body.rv-page .rv-heroimg img { display: block; width: 100% !important; height: auto !important; max-height: none !important; }

/* A - calla photo bleeding into a matching ivory ground */
body.rv-page .rv-hero--a { background: #ece6de; min-height: min(90vh, 860px); }
body.rv-page .rv-hero--a .rv-copy { width: 46%; }
body.rv-page .rv-hero--a .rv-heromedia { width: 54%; }
body.rv-page .rv-hero--a .rv-heroimg img {
	-webkit-mask-image: linear-gradient(to left, transparent 0, #000 16%);
	mask-image: linear-gradient(to left, transparent 0, #000 16%);
}
body.rv-page .rv-hero--a .rv-copy::before {
	content: "V";
	position: absolute;
	inset-inline-start: -2%;
	top: 50%;
	transform: translateY(-50%);
	font: 400 clamp(380px, 42vw, 640px)/1 var(--rv-serif-lat);
	color: rgba(163, 20, 29, .06);
	pointer-events: none;
	z-index: 0;
}
body.rv-page .rv-hero--a .rv-copy > * { position: relative; z-index: 1; }

/* B - full-bleed rosso photo under a glass card (the site's brand-page pattern) */
body.rv-page .rv-hero--b { min-height: min(88vh, 820px); background-color: #eae9e3; }
body.rv-page .rv-hero--b .rv-copy {
	width: 46% !important;
	margin: 4% 4% 4% auto !important;
	padding: clamp(32px, 3.4vw, 52px) clamp(28px, 3.2vw, 50px) !important;
	background: rgba(251, 249, 245, .84);
	-webkit-backdrop-filter: blur(14px) saturate(1.1);
	backdrop-filter: blur(14px) saturate(1.1);
	box-shadow: 0 30px 70px -30px rgba(80, 10, 15, .45);
	border-top: 3px solid var(--rv-rosso);
}
body.rv-page .rv-hero--b .rv-title .elementor-heading-title { font-size: clamp(44px, 4.4vw, 76px) !important; }

/* C - black panel beside the hanger campaign photo */
body.rv-page .rv-hero--c { background: #f3f1ec; min-height: min(90vh, 860px); }
body.rv-page .rv-hero--c .rv-copy { width: 50%; background: #141211; }
body.rv-page .rv-hero--c .rv-heromedia { width: 50%; background: #f3f1ec; }
body.rv-page .rv-hero--c .rv-heromedia { --justify-content: stretch !important; justify-content: stretch; }
body.rv-page .rv-hero--c .rv-heroimg { flex: 1 1 auto; }
@media (min-width: 1025px) { body.rv-page .rv-hero--c .rv-heroimg img { position: absolute; inset: 0; height: 100% !important; object-fit: cover; object-position: 50% 35%; } body.rv-page .rv-hero--c .rv-heroimg .elementor-widget-container { position: relative; } body.rv-page .rv-hero--c .rv-heroimg { position: absolute !important; inset: 0; } }
body.rv-page .rv-hero--c .rv-title .elementor-heading-title,
body.rv-page .rv-hero--c .rv-sub .elementor-heading-title { color: #f6efe6 !important; }
body.rv-page .rv-hero--c .rv-eyebrow .elementor-heading-title { color: var(--rv-gold-soft) !important; }
body.rv-page .rv-hero--c .rv-body,
body.rv-page .rv-hero--c .rv-body p,
body.rv-page .rv-hero--c .rv-list .elementor-icon-list-text { color: rgba(246, 239, 230, .78) !important; }
body.rv-page .rv-hero--c .rv-list .elementor-icon-list-item { border-color: rgba(246, 239, 230, .14); }
body.rv-page .rv-hero--c .rv-list .elementor-icon-list-item:first-child .elementor-icon-list-text { color: #f6efe6 !important; }
body.rv-page .rv-hero--c .rv-list .elementor-icon-list-icon svg,
body.rv-page .rv-hero--c .rv-list .elementor-icon-list-icon i { fill: var(--rv-gold-soft) !important; color: var(--rv-gold-soft) !important; }
body.rv-page .rv-hero--c .elementor-widget-breadcrumbs,
body.rv-page .rv-hero--c .elementor-widget-breadcrumbs a { color: rgba(246, 239, 230, .55) !important; }
body.rv-page .rv-hero--c .rv-chip .elementor-button { border-color: rgba(246, 239, 230, .6) !important; color: #f6efe6 !important; }
body.rv-page .rv-hero--c .rv-chip .elementor-button:hover { background: #f6efe6 !important; color: #141211 !important; }
body.rv-page .rv-hero--c .rv-chip--rosso .elementor-button { border-color: var(--rv-rosso) !important; background: var(--rv-rosso) !important; }

@media (max-width: 1024px) {
	body.rv-page .rv-hero--a .rv-heroimg img { -webkit-mask-image: linear-gradient(to top, transparent 0, #000 14%); mask-image: linear-gradient(to top, transparent 0, #000 14%); }
	body.rv-page .rv-hero--a .rv-copy::before { display: none; }
	body.rv-page .rv-hero--b { background-size: 100% auto !important; }
	body.rv-page .rv-hero--b .rv-copy { width: auto !important; margin: 44vw 14px 18px !important; }
}

/* =========================================================
   Rosso section, round 2 (2026-10-21): depth, measure, swatch card
   ========================================================= */
body.rv-page .rv-rosso { overflow: visible; isolation: isolate; }
body.rv-page .rv-rosso .rv-copy {
	position: relative;
	overflow: hidden;
	padding-inline-start: clamp(28px, 7vw, 120px) !important;
	padding-inline-end: clamp(28px, 9vw, 150px) !important;
	background:
		radial-gradient(70% 60% at 78% 22%, rgba(255, 120, 110, .22) 0%, rgba(255, 120, 110, 0) 70%),
		radial-gradient(90% 80% at 10% 100%, rgba(40, 0, 4, .45) 0%, rgba(40, 0, 4, 0) 70%),
		linear-gradient(200deg, #ad1620 0%, #8a1018 55%, #6d0b12 100%);
}
/* fine grain, like lacquered acetate under light */
body.rv-page .rv-rosso .rv-copy::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	opacity: .16;
	mix-blend-mode: overlay;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
/* oversized italic word behind the heading */
body.rv-page .rv-rosso .rv-copy::before {
	content: "Rosso";
	position: absolute;
	inset-inline-end: -1.5vw;
	top: clamp(10px, 3vw, 50px);
	font: italic 400 clamp(140px, 15vw, 260px)/1 var(--rv-serif-lat);
	letter-spacing: -.01em;
	color: rgba(255, 236, 225, .07);
	pointer-events: none;
	direction: ltr;
}
body.rv-page .rv-rosso .rv-copy > .elementor-element { position: relative; z-index: 1; max-width: 560px !important; }
body.rv-page .rv-rosso .rv-h2 .elementor-heading-title { font-size: clamp(30px, 3vw, 46px) !important; }
body.rv-page .rv-rosso .rv-body p:first-child { font-family: var(--rv-serif-he); font-size: 20px !important; line-height: 1.65 !important; color: #fff !important; }
body.rv-page .rv-rosso .rv-body p { font-size: 16px !important; color: rgba(255, 244, 236, .86) !important; }
body.rv-page .rv-rosso .rv-quote .elementor-heading-title {
	border-top: 0;
	padding-top: 0;
	margin-top: 26px !important;
	display: flex;
	align-items: center;
	gap: 16px;
}
body.rv-page .rv-rosso .rv-quote .elementor-heading-title::before { content: ""; width: 48px; height: 1px; background: var(--rv-gold-soft); flex: none; }

/* the photo column keeps the image clipped, but lets the swatch card hang over the seam */
body.rv-page .rv-rosso .rv-fill { overflow: visible; z-index: 2; }
body.rv-page .rv-rosso .rv-fill .elementor-widget-image { overflow: hidden; }
body.rv-page .rv-swatch-w {
	position: absolute !important;
	inset-inline-start: -92px;
	bottom: 11%;
	width: 184px !important;
	max-width: none !important;
	z-index: 3;
	margin: 0 !important;
}
body.rv-page .rv-swatch {
	background: #fff;
	padding: 10px 10px 14px;
	box-shadow: 0 28px 50px -22px rgba(30, 0, 4, .6), 0 2px 6px rgba(0, 0, 0, .12);
	transform: rotate(3deg);
	display: flex;
	flex-direction: column;
	direction: ltr;
	text-align: left;
}
body.rv-page .rv-swatch__chip {
	display: block;
	aspect-ratio: 1 / .92;
	background:
		radial-gradient(80% 70% at 30% 25%, rgba(255, 140, 130, .35) 0%, rgba(255, 140, 130, 0) 70%),
		linear-gradient(160deg, #b5141f, #8a1018);
	margin-bottom: 12px;
}
body.rv-page .rv-swatch__name { font: 500 11px/1.3 "Rubik", sans-serif; letter-spacing: .22em; text-transform: uppercase; color: #171412; }
body.rv-page .rv-swatch__meta { font: italic 400 13px/1.4 var(--rv-serif-lat); color: #7a6f65; margin-top: 4px; }
body.rv-page .rv-swatch-w p { margin: 0 !important; }

@media (max-width: 1024px) {
	body.rv-page .rv-rosso .rv-copy { padding-inline: 22px !important; }
	body.rv-page .rv-rosso .rv-copy::before { font-size: 120px; top: 0; }
	body.rv-page .rv-swatch-w { inset-inline-start: auto; inset-inline-end: 18px; bottom: -34px; width: 132px !important; }
	body.rv-page .rv-swatch { padding: 7px 7px 10px; }
	body.rv-page .rv-swatch__name { font-size: 9px; letter-spacing: .16em; }
	body.rv-page .rv-swatch__meta { font-size: 11px; }
	body.rv-page .rv-rosso .rv-body p:first-child { font-size: 18px !important; }
}

/* =========================================================
   Atelier section, round 2 (2026-10-21): lit display case
   ========================================================= */
body.rv-page .rv-atelier {
	background:
		radial-gradient(42% 60% at 27% 50%, rgba(255, 226, 190, .13) 0%, rgba(255, 226, 190, 0) 70%),
		radial-gradient(120% 90% at 50% 120%, #060505 0%, rgba(6, 5, 5, 0) 60%),
		#16120f !important;
	position: relative;
}
body.rv-page .rv-atelier::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	opacity: .12;
	mix-blend-mode: overlay;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .55 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
body.rv-page .rv-atelier .rva { position: relative; z-index: 1; }

/* panel type on dark */
body.rv-page .rv-atelier .rva__eyebrow { color: var(--rv-gold-soft); }
body.rv-page .rv-atelier .rva__h2 { color: #f6efe6; }
body.rv-page .rv-atelier .rva__lead { color: rgba(246, 239, 230, .72); max-width: 520px; }

/* colour tabs: two quiet pills */
body.rv-page .rv-atelier .rva__tabs { border: 0; gap: 10px; display: flex; margin-bottom: 26px; }
body.rv-page .rv-atelier .rva__tab {
	border: 1px solid rgba(246, 239, 230, .28) !important;
	border-radius: 999px;
	color: #f6efe6;
	padding: 10px 20px 10px 16px;
}
body.rv-page .rv-atelier .rva__tab[aria-pressed="true"] { background: #f6efe6; color: #16120f; border-color: #f6efe6 !important; }
body.rv-page .rv-atelier .rva__tab:hover:not([aria-pressed="true"]) { background: rgba(246, 239, 230, .08); }
body.rv-page .rv-atelier .rva__dot { box-shadow: 0 0 0 2px rgba(255, 255, 255, .9), 0 0 0 3px rgba(0, 0, 0, .25); }

/* numbered details */
body.rv-page .rv-atelier .rva__list { max-width: 540px; border-top: 1px solid rgba(246, 239, 230, .12); }
body.rv-page .rv-atelier .rva__list li { border-bottom: 1px solid rgba(246, 239, 230, .12); }
body.rv-page .rv-atelier .rva__item { position: relative; padding: 18px 16px 18px 4px; }
body.rv-page .rv-atelier .rva__item::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 14px;
	bottom: 14px;
	width: 2px;
	background: var(--rv-gold-soft);
	transform: scaleY(0);
	transition: transform .3s ease;
}
body.rv-page .rv-atelier .rva__item.is-on::before { transform: scaleY(1); }
body.rv-page .rv-atelier .rva__item:hover { background: rgba(246, 239, 230, .04); }
body.rv-page .rv-atelier .rva__num { color: rgba(231, 201, 143, .45); font-size: 26px; font-style: italic; }
body.rv-page .rv-atelier .rva__item.is-on .rva__num { color: var(--rv-gold-soft); }
body.rv-page .rv-atelier .rva__txt strong { color: #f6efe6; }
body.rv-page .rv-atelier .rva__txt span { color: rgba(246, 239, 230, .7); }

/* the photo as a lit, framed display */
body.rv-page .rv-atelier .rva__fig { padding: 12px; background: linear-gradient(145deg, rgba(231, 201, 143, .55), rgba(120, 92, 52, .35)); box-shadow: 0 50px 90px -40px rgba(0, 0, 0, .9), 0 0 120px -20px rgba(255, 220, 180, .18); }
body.rv-page .rv-atelier .rva__fig img { box-shadow: none; outline: 1px solid rgba(0, 0, 0, .35); }
body.rv-page .rv-atelier .rva__hint { color: rgba(246, 239, 230, .5); letter-spacing: .02em; }

/* brass jeweller's loupe with a lens glare */
body.rv-page .rv-atelier .rva__loupe {
	box-shadow:
		0 0 0 2px #f3dfae,
		0 0 0 6px #b48a4c,
		0 0 0 7px #5c4322,
		0 22px 44px rgba(0, 0, 0, .55),
		inset 0 0 18px rgba(0, 0, 0, .25);
}
body.rv-page .rv-atelier .rva__loupe::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: radial-gradient(60% 45% at 30% 22%, rgba(255, 255, 255, .38) 0%, rgba(255, 255, 255, 0) 60%);
	pointer-events: none;
}
body.rv-page .rv-atelier .rva__pin { box-shadow: 0 0 0 4px rgba(255, 255, 255, .28), 0 4px 10px rgba(0, 0, 0, .35); }

@media (max-width: 767px) {
	body.rv-page .rv-atelier { background: radial-gradient(90% 40% at 50% 22%, rgba(255, 226, 190, .12) 0%, rgba(255, 226, 190, 0) 70%), #16120f !important; }
	body.rv-page .rv-atelier .rva__fig { padding: 8px; }
	body.rv-page .rv-atelier .rva__tab { padding: 9px 16px 9px 12px; }
}

/* =========================================================
   Round 3 (2026-10-21): V-logo, RX, CTA, FAQ
   ========================================================= */

/* ---------- V-logo: monogram watermark, framed macro photo, checklist ---------- */
body.rv-page .rv-vlogo .rv-copy { position: relative; overflow: hidden; }
body.rv-page .rv-vlogo .rv-copy::before {
	content: "V";
	position: absolute;
	inset-inline-end: -70px;
	top: 34px;
	width: 330px;
	height: 200px;
	box-sizing: border-box;
	border: 2px solid rgba(160, 125, 72, .26);
	border-radius: 50%;
	font: 600 170px/196px var(--rv-serif-lat);
	font-variation-settings: "opsz" 6;
	text-align: center;
	color: rgba(160, 125, 72, .32);
	pointer-events: none;
}
body.rv-page .rv-vlogo .rv-copy > .elementor-element { position: relative; z-index: 1; max-width: 560px !important; }
body.rv-page .rv-frame .elementor-widget-container { position: relative; height: 100%; }
body.rv-page .rv-frame .elementor-widget-container::after {
	content: "";
	position: absolute;
	inset: clamp(14px, 2vw, 26px);
	border: 1px solid rgba(255, 246, 230, .85);
	pointer-events: none;
}
body.rv-page .rv-checks { list-style: none; margin: 26px 0 0; padding: 0; border-top: 1px solid var(--rv-line); }
body.rv-page .rv-checks li {
	position: relative;
	padding: 16px 40px 16px 0;
	border-bottom: 1px solid var(--rv-line);
}
body.rv-page .rv-checks li::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 19px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	border: 1px solid var(--rv-gold);
}
body.rv-page .rv-checks li::after {
	content: "";
	position: absolute;
	inset-inline-start: 8px;
	top: 24px;
	width: 5px;
	height: 9px;
	border: solid var(--rv-gold);
	border-width: 0 1.5px 1.5px 0;
	transform: rotate(45deg);
}
body.rv-page .rv-checks b { display: block; font-family: var(--rv-serif-he); font-weight: 500; font-size: 19px; color: var(--rv-ink); margin-bottom: 2px; }
body.rv-page .rv-checks span { display: block; font-size: 15px; line-height: 1.6; color: var(--rv-body); }

/* ---------- RX: portrait in an arch, process steps ---------- */
body.rv-page .rv-archcol {
	--justify-content: center !important;
	justify-content: center;
	align-items: center;
	padding: clamp(50px, 6vw, 96px) clamp(24px, 4vw, 64px) !important;
	background: linear-gradient(180deg, #f2ece4 0%, #ebe3d8 100%);
}
body.rv-page .rv-arch { width: min(100%, 430px) !important; max-width: 430px; }
body.rv-page .rv-arch figure { position: relative; margin: 0; }
body.rv-page .rv-arch figure::before {
	content: "";
	position: absolute;
	top: 22px;
	inset-inline-start: -22px;
	width: 100%;
	aspect-ratio: 3 / 4;
	border: 1px solid var(--rv-gold);
	border-radius: 999px 999px 0 0;
	z-index: 0;
}
body.rv-page .rv-arch img {
	position: relative;
	z-index: 1;
	display: block;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	object-position: 50% 16%;
	border-radius: 999px 999px 0 0;
	box-shadow: 0 34px 60px -34px rgba(40, 20, 10, .45);
}
body.rv-page .rv-arch .widget-image-caption,
body.rv-page .rv-arch figcaption {
	position: relative;
	z-index: 1;
	margin-top: 22px !important;
	font: italic 400 18px/1.4 var(--rv-serif-he);
	color: var(--rv-muted);
	text-align: center;
}
body.rv-page .rv-steps {
	list-style: none;
	counter-reset: rvstep;
	margin: 30px 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}
body.rv-page .rv-steps li { counter-increment: rvstep; padding-top: 16px; border-top: 1px solid var(--rv-ink); }
body.rv-page .rv-steps li::before {
	content: "0" counter(rvstep);
	display: block;
	font: 500 26px/1 var(--rv-serif-he);
	color: var(--rv-rosso);
	margin-bottom: 10px;
	direction: ltr;
	text-align: right;
}
body.rv-page .rv-steps b { display: block; font-family: var(--rv-serif-he); font-weight: 500; font-size: 18px; color: var(--rv-ink); margin-bottom: 4px; }
body.rv-page .rv-steps span { display: block; font-size: 14px; line-height: 1.6; color: var(--rv-body); }
body.rv-page .rv-rx .rv-facts { margin-top: 34px; }

/* ---------- CTA: red band, storefront postcard breaking out ---------- */
body.rv-page .rv-cta2 {
	overflow: visible;
	margin: 0 !important;
	z-index: 3;
	background:
		radial-gradient(60% 80% at 80% 20%, rgba(255, 120, 110, .2) 0%, rgba(255, 120, 110, 0) 70%),
		linear-gradient(200deg, #ad1620 0%, #8a1018 60%, #6d0b12 100%) !important;
}
body.rv-page .rv-cta2 .rv-copy { width: 58%; padding-inline-end: clamp(28px, 9vw, 150px) !important; }
body.rv-page .rv-cta2 .rv-copy > .elementor-element { max-width: 600px !important; }
body.rv-page .rv-cta2 .rv-eyebrow .elementor-heading-title { color: var(--rv-gold-soft) !important; }
body.rv-page .rv-cta2 .rv-h2 .elementor-heading-title { color: #fff !important; margin-bottom: 10px !important; }
body.rv-page .rv-cta2 .rv-sub .elementor-heading-title { color: rgba(255, 244, 236, .9) !important; font-size: 20px !important; }
body.rv-page .rv-cta2 .rv-body p { color: rgba(255, 244, 236, .82) !important; font-size: 16px !important; }
body.rv-page .rv-btns {
	--flex-direction: row !important;
	--flex-wrap: wrap !important;
	--gap: 12px 12px !important;
	--column-gap: 12px !important;
	--row-gap: 12px !important;
	--padding-top: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
	margin-top: 30px !important;
}
body.rv-page .rv-btn { width: auto !important; max-width: none !important; }
body.rv-page .rv-btn .elementor-button {
	background: transparent !important;
	border: 1px solid rgba(255, 244, 236, .7) !important;
	border-radius: 0 !important;
	color: #fff6ef !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	padding: 15px 24px !important;
	transition: background .25s, color .25s;
}
body.rv-page .rv-btn .elementor-button svg { fill: currentColor !important; width: 14px; }
body.rv-page .rv-btn .elementor-button:hover { background: rgba(255, 244, 236, .12) !important; }
body.rv-page .rv-btn--solid .elementor-button { background: #fff6ef !important; color: var(--rv-rosso) !important; border-color: #fff6ef !important; }
body.rv-page .rv-btn--solid .elementor-button:hover { background: #fff !important; color: var(--rv-rosso-deep) !important; }
body.rv-page .rv-storecol {
	width: 42%;
	--justify-content: center !important;
	justify-content: center;
	align-items: center;
	padding: 0 !important;
}
body.rv-page .rv-store { width: min(78%, 360px) !important; max-width: 360px; margin: -70px 0 !important; z-index: 2; }
body.rv-page .rv-store figure { margin: 0; background: #fff; padding: 12px 12px 48px; transform: rotate(2.5deg); box-shadow: 0 40px 70px -30px rgba(30, 0, 4, .65), 0 2px 8px rgba(0, 0, 0, .15); position: relative; }
body.rv-page .rv-store img { display: block; width: 100% !important; height: auto !important; aspect-ratio: 3 / 3.7; object-fit: cover; object-position: 50% 40%; }
body.rv-page .rv-store .widget-image-caption,
body.rv-page .rv-store figcaption {
	position: absolute;
	inset-inline: 0;
	bottom: 14px;
	margin: 0 !important;
	font: italic 400 16px/1 var(--rv-serif-lat);
	color: var(--rv-muted);
	text-align: center;
	direction: ltr;
}

/* ---------- FAQ: sticky heading + clean accordion ---------- */
body.rv-page .rv-faq2 {
	background: var(--rv-paper);
	padding: clamp(60px, 7vw, 110px) max(24px, calc((100% - 1200px) / 2)) !important;
	--gap: 0px !important;
	align-items: flex-start;
}
body.rv-page .rv-faqhead {
	width: 36%;
	position: sticky;
	top: 150px;
	align-self: flex-start;
	padding-inline-end: clamp(20px, 5vw, 80px) !important;
}
body.rv-page .rv-faqhead .rv-h2 .elementor-heading-title { font-size: clamp(30px, 3vw, 46px) !important; }
body.rv-page .rv-faqhead .elementor-widget-text-editor p { font-size: 16px; color: var(--rv-body); margin: 0 0 8px; }
body.rv-page .rv-faqhead .rv-tel { font: 400 30px/1.2 var(--rv-serif-lat); color: var(--rv-rosso) !important; text-decoration: none; direction: ltr; display: inline-block; border-bottom: 1px solid currentColor; }
body.rv-page .rv-faqlist { width: 64%; }
body.rv-page .rv-acc .elementor-accordion { border-top: 1px solid var(--rv-ink); }
body.rv-page .rv-acc .elementor-accordion-item { border: 0 !important; border-bottom: 1px solid var(--rv-line) !important; }
body.rv-page .rv-acc .elementor-tab-title {
	border: 0 !important;
	padding: 24px 0 !important;
	display: flex;
	align-items: center;
	gap: 18px;
	cursor: pointer;
}
body.rv-page .rv-acc .elementor-tab-title a,
body.rv-page .rv-acc .elementor-accordion-title {
	font-family: var(--rv-serif-he) !important;
	font-weight: 500 !important;
	font-size: clamp(18px, 1.5vw, 21px) !important;
	line-height: 1.4 !important;
	color: var(--rv-ink) !important;
	order: 1;
	flex: 1;
}
body.rv-page .rv-acc .elementor-accordion-icon {
	order: 2;
	flex: none;
	width: 34px !important;
	height: 34px;
	border: 1px solid var(--rv-line);
	border-radius: 50%;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	color: var(--rv-gold) !important;
	transition: background .25s, border-color .25s;
}
body.rv-page .rv-acc .elementor-accordion-icon svg { width: 11px; height: 11px; fill: currentColor !important; }
body.rv-page .rv-acc .elementor-accordion-icon i { font-size: 11px; color: currentColor !important; }
body.rv-page .rv-acc .elementor-tab-title.elementor-active a,
body.rv-page .rv-acc .elementor-tab-title.elementor-active .elementor-accordion-title { color: var(--rv-rosso) !important; }
body.rv-page .rv-acc .elementor-tab-title.elementor-active .elementor-accordion-icon { background: var(--rv-rosso); border-color: var(--rv-rosso); color: #fff !important; }
body.rv-page .rv-acc .elementor-tab-title:hover .elementor-accordion-icon { border-color: var(--rv-gold); }
body.rv-page .rv-acc .elementor-tab-content {
	border: 0 !important;
	padding: 0 0 26px !important;
	max-width: 640px;
	font-size: 16px;
	line-height: 1.8;
	color: var(--rv-body);
}
body.rv-page .rv-acc .elementor-tab-content p { margin: 0 0 .9em; }

@media (max-width: 1024px) {
	body.rv-page .rv-steps { grid-template-columns: 1fr; gap: 14px; }
	body.rv-page .rv-steps li { display: grid; grid-template-columns: 44px 1fr; column-gap: 8px; }
	body.rv-page .rv-steps li::before { grid-row: span 2; margin: 0; }
	body.rv-page .rv-vlogo .rv-copy::before { width: 200px; height: 122px; top: 18px; inset-inline-end: -50px; font-size: 104px; line-height: 118px; }
	body.rv-page .rv-cta2 { margin: 0 !important; }
	body.rv-page .rv-cta2 .rv-copy,
	body.rv-page .rv-storecol { width: 100% !important; }
	body.rv-page .rv-cta2 .rv-copy { padding: 40px 22px 54px !important; }
	body.rv-page .rv-store { margin: -40px auto 0 !important; width: 70% !important; }
	body.rv-page .rv-faq2 { --flex-direction: column !important; flex-direction: column; padding: 50px 20px !important; }
	body.rv-page .rv-faqhead,
	body.rv-page .rv-faqlist { width: 100% !important; position: static; padding-inline-end: 0 !important; }
	body.rv-page .rv-faqhead { margin-bottom: 26px; }
}

/* =========================================================
   Round 4 (2026-10-21): Hebrew type = Heebo (light), digits never in Bodoni.
   Bodoni stays only for Latin display words (wordmark, Rosso, quote, tabs).
   ========================================================= */
body.rv-page { --rv-serif-he: "Heebo", "Rubik", sans-serif; --rv-num: "Heebo", "Rubik", sans-serif; }

body.rv-page .rv-h2 .elementor-heading-title,
body.rv-page .rva__h2 {
	font-weight: 300 !important;
	letter-spacing: -.015em;
	line-height: 1.18 !important;
}
body.rv-page .rv-sub .elementor-heading-title { font-weight: 400 !important; letter-spacing: -.005em; }
body.rv-page .rv-rosso .rv-body p:first-child { font-weight: 300; font-size: 21px !important; }
body.rv-page .rva__txt strong,
body.rv-page .rv-checks b,
body.rv-page .rv-steps b { font-weight: 500; letter-spacing: -.005em; }
body.rv-page .rv-acc .elementor-tab-title a,
body.rv-page .rv-acc .elementor-accordion-title { font-weight: 400 !important; }
body.rv-page .rv-arch .widget-image-caption,
body.rv-page .rv-arch figcaption { font-style: normal; font-weight: 300; font-size: 16px; letter-spacing: .02em; }

/* numbers */
body.rv-page .rv-facts b { font-family: var(--rv-num); font-weight: 200; font-size: 44px; letter-spacing: -.02em; }
body.rv-page .rv-steps li::before { font: 300 28px/1 var(--rv-num); letter-spacing: -.01em; }
body.rva__num, body.rv-page .rv-atelier .rva__num { font-family: var(--rv-num); font-style: normal; font-weight: 200; font-size: 26px; }
body.rv-page .rv-faqhead .rv-tel { font: 300 32px/1.2 var(--rv-num); letter-spacing: -.01em; }
body.rv-page .rv-acc .elementor-accordion-icon span { line-height: 0; }
body.rv-page .rv-acc .elementor-accordion-icon svg, body.rv-page .rv-acc .elementor-accordion-icon i { display: block; margin: 0 auto; }

/* =========================================================
   Round 5 (2026-10-21): readable Bodoni + cat-eye guide
   ========================================================= */
/* Bodoni Moda auto-picks its display optical size at large sizes, whose hairlines vanish.
   Pin a text optical size everywhere Bodoni is used. */
body.rv-page .rv-title .elementor-heading-title,
body.rv-page .rv-quote .elementor-heading-title,
body.rv-page .rv-rosso .rv-copy::before,
body.rv-page .rv-vlogo .rv-copy::before,
body.rv-page .rva__tab,
body.rv-page .rv-swatch__meta,
body.rv-page .rv-postcard figcaption,
body.rv-page .rv-postcard .widget-image-caption,
body.rv-page .rv-store figcaption,
body.rv-page .rv-store .widget-image-caption {
	font-optical-sizing: none;
	font-variation-settings: "opsz" 11;
}
body.rv-page .rv-title .elementor-heading-title { font-weight: 500 !important; letter-spacing: .06em !important; }

/* cat-eye: face-shape guide */
body.rv-page .rv-faces__title { font-weight: 500; font-size: 18px !important; color: var(--rv-ink) !important; margin: 26px 0 14px !important; }
body.rv-page .rv-faces {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}
body.rv-page .rv-faces li {
	background: #fbf8f3;
	border: 1px solid var(--rv-line);
	padding: 18px 12px 16px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}
body.rv-page .rv-faces svg { width: 34px; height: 42px; fill: none; stroke: var(--rv-gold); stroke-width: 1.4; margin-bottom: 6px; }
body.rv-page .rv-faces li.is-best { border-color: rgba(163, 20, 29, .35); background: #fff; }
body.rv-page .rv-faces li.is-best svg { stroke: var(--rv-rosso); }
body.rv-page .rv-faces b { font-size: 15px; font-weight: 500; color: var(--rv-ink); line-height: 1.3; }
body.rv-page .rv-faces span { font-size: 13px; line-height: 1.5; color: var(--rv-body); }
body.rv-page .rv-faces__note { font-size: 15px !important; color: var(--rv-muted) !important; margin: 14px 0 0 !important; }

/* cat-eye: optometrist tip */
body.rv-page .rv-tip {
	margin-top: 26px;
	padding: 20px 22px;
	background: rgba(160, 125, 72, .08);
	border-inline-start: 2px solid var(--rv-gold);
}
body.rv-page .rv-tip__label { font-size: 12px !important; font-weight: 500; letter-spacing: .12em; color: var(--rv-gold) !important; margin: 0 0 6px !important; }
body.rv-page .rv-tip p:last-child { font-size: 15px !important; margin: 0 !important; }

/* cat-eye: small photo as a tilted postcard */
body.rv-page .rv-duo__b img { transform: rotate(-3deg); border-width: 10px 10px 30px; }

@media (max-width: 767px) {
	body.rv-page .rv-faces { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
