:root {
	--rose-quartz: #F6C9C8; /* PANTONE 7520C */
	--coral: #F1774D; /* 2025C */
	--mandevilla: #DA392C; /* 179C */
	--cerise: #A41247; /* 7420C */
	--purple: #501F5F; /* 2613C Imperial Purple */
	--purple-2: #3A1646; /* nuantele lui 2613C */
	--purple-3: #250F2C;
	--purple-4: #100613;
	--night: #131551; /* 273C Dark Night */
	--peacock: #00A3B4; /* 3115C */
	--emerald: #009C77; /* 563C */
	--meadow: #006D51; /* 3298C Lush Meadow */
	/* foil-uri (detalii): Gold Private (cuplul), Copper Sleek (ea), Silver Sharp (el), Holographic Party (prietenele) */
	--foil-gold: linear-gradient(135deg, #B88A2E 0%, #F3DD8E 38%, #C99A3E 62%, #F7E7A8 100%);
	--foil-copper: linear-gradient(135deg, #A35A2E 0%, #F0A877 40%, #B5683A 65%, #F5C39C 100%);
	--foil-silver: linear-gradient(135deg, #8D9097 0%, #F4F5F7 40%, #A9ACB3 65%, #FFFFFF 100%);
	--foil-holo: linear-gradient(120deg, #F6C9C8, #C9B6F2, #A6E3F0, #B8F2C9, #F7E7A8, #F6C9C8);
	/* Neutrele temei, mapate pe brand (numele vechi raman, ca restul CSS-ului sa nu se schimbe) */
	--creta: #F6E1E1; /* fundalul de pagina din manual: Rose Quartz deschis */
	--creta-2: #F1D2D1;
	--piatra: #E3BFC0;
	--lut: var(--coral);
	--arama: #B5683A; /* copper sleek */
	--aur: #C99A3E; /* gold private */
	--cerneala: #250F2C; /* text: umbra inchisa a lui Imperial Purple */
	--cerneala-2: #6A4A72;
	--linie: rgba(80, 31, 95, .16);
	--prune: var(--purple);
	--rubin: var(--cerise);
	--foita: var(--rose-quartz);
	/* Tonul activ: suprascris de .tone-* (PDP, carduri, capitole) si de ziua de pe home */
	--ch-bg: var(--creta);
	--ch-text: var(--cerneala);
	--ch-text-soft: color-mix(in oklab, var(--ch-text) 62%, var(--ch-bg));
	--ch-primary: var(--cerise);
	--ch-border: color-mix(in oklab, var(--ch-text) 14%, transparent);
	--ch-light: #FDF1F0;
	--ch-glass: rgba(255, 244, 244, .55);
	/* Titluri: Lingerie XO (fontul de brand, licenta comerciala) -> pana la licenta webfont, Bodoni Moda tine acelasi contrast */
	--ch-font-display: 'Lingerie XO', 'Bodoni Moda', 'Didot', 'Bodoni 72', Georgia, serif;
	/* Text-suport: Abhaya Libre, fontul de suport din manual */
	--ch-font-text: 'Abhaya Libre', 'Libre Baskerville', Georgia, serif;
	/* UI (preturi, butoane, filtre): Hanken Grotesk tine locul lui Neue Haas Display din manual */
	--ch-font-ui: 'Hanken Grotesk', 'Neue Haas Display', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', sans-serif;
	--fs-hero: clamp(3.4rem, 10.5vw, 11rem);
	--fs-1: clamp(2.6rem, 6.4vw, 6.4rem);
	--fs-2: clamp(2rem, 4.2vw, 3.9rem);
	--fs-3: clamp(1.45rem, 2.4vw, 2.1rem);
	--fs-lead: clamp(1.15rem, 1.5vw, 1.4rem);
	--gutter: clamp(16px, 4vw, 56px);
	--max: 1440px;
	--r: 22px;
	--ease: cubic-bezier(.22, 1, .36, 1);
	--ease-io: cubic-bezier(.65, 0, .35, 1);
	--header-h: 76px;
}

/* Tonurile vinurilor, toate din paleta brandului */
.tone-alb {
	--ch-bg: #F7EFF0;
	--ch-text: #250F2C;
	--ch-primary: var(--meadow);
	--ch-light: #FFFFFF;
	--ch-glass: rgba(255, 252, 252, .6);
}

.tone-rose {
	--ch-bg: var(--rose-quartz);
	--ch-text: #3A1646;
	--ch-primary: #8E0F3D;
	--ch-light: #FCE9E8;
	--ch-glass: rgba(255, 238, 237, .55);
}

.tone-rosu {
	--ch-bg: var(--purple-2);
	--ch-text: #F6E1E1;
	--ch-primary: #E2BE6A;
	--ch-light: #6B2E7E;
	--ch-glass: rgba(80, 31, 95, .5);
}

.tone-spumant {
	--ch-bg: var(--night);
	--ch-text: #F6E1E1;
	--ch-primary: #3FD0DE;
	--ch-light: #2B2F86;
	--ch-glass: rgba(40, 44, 120, .5);
}

.tone-noapte {
	--ch-bg: var(--purple-4);
	--ch-text: #F6E1E1;
	--ch-primary: #19C79A;
	--ch-light: #0E3A2E;
	--ch-glass: rgba(37, 15, 44, .6);
}

section[class*='tone-'] {
	color: var(--ch-text);
}

[class*='tone-'] {
	--ch-text-soft: color-mix(in oklab, var(--ch-text) 64%, var(--ch-bg));
	--ch-border: color-mix(in oklab, var(--ch-text) 16%, transparent);
}

/* Baza */
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

html.lenis,
html.lenis body {
	height: auto;
}

.lenis.lenis-smooth {
	scroll-behavior: auto !important;
}

body {
	margin: 0;
	background: var(--ch-bg);
	color: var(--ch-text);
	font: 400 18px/1.55 var(--ch-font-text);
	letter-spacing: .005em;
	-webkit-font-smoothing: antialiased;
	overflow-x: clip;
	transition: background-color .9s var(--ease), color .9s var(--ease);
}

img,
svg,
video {
	display: block;
	max-width: 100%;
}

a {
	color: inherit;
	text-decoration: none;
}

button {
	font: inherit;
	color: inherit;
	background: none;
	border: 0;
	padding: 0;
	cursor: pointer;
}

input,
select,
textarea {
	font: inherit;
	color: inherit;
}

::selection {
	background: var(--ch-primary);
	color: var(--ch-bg);
}

:focus-visible {
	outline: 2px solid var(--ch-primary);
	outline-offset: 3px;
	border-radius: 4px;
}

.ic {
	width: 22px;
	height: 22px;
}

.sr {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.wrap {
	width: min(100% - 2 * var(--gutter), var(--max));
	margin-inline: auto;
}

.serif {
	font-family: var(--ch-font-display);
	font-optical-sizing: auto;
}

.kicker {
	font: 500 .92rem/1.35 var(--ch-font-ui);
	letter-spacing: .005em;
	color: var(--ch-text-soft);
}

.kicker--accent {
	color: var(--ch-primary);
}

.h-hero,
.h1,
.h2,
.h3 {
	font-family: var(--ch-font-display);
	font-weight: 400;
	line-height: .95;
	letter-spacing: -.02em;
	margin: 0;
	text-wrap: balance;
}

.h-hero {
	font-size: var(--fs-hero);
	line-height: .86;
	letter-spacing: -.035em;
}

.h1 {
	font-size: var(--fs-1);
}

.h2 {
	font-size: var(--fs-2);
	line-height: 1;
}

.h3 {
	font-size: var(--fs-3);
	line-height: 1.08;
	letter-spacing: -.01em;
}

.h-hero em,
.h1 em,
.h2 em,
.h3 em {
	font-style: inherit;
	color: inherit;
}

.lead {
	font-size: var(--fs-lead);
	line-height: 1.55;
	color: var(--ch-text-soft);
	max-width: 38ch;
	text-wrap: pretty;
}

.muted {
	color: var(--ch-text-soft);
}

.btn {
	--b: var(--ch-text);
	--t: var(--ch-bg);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .7em;
	min-height: 52px;
	padding: 0 1.6em;
	border-radius: 999px;
	background: var(--b);
	color: var(--t);
	font: 600 .95rem/1 var(--ch-font-ui);
	letter-spacing: .01em;
	transition: transform .5s var(--ease), background-color .3s, color .3s, box-shadow .5s var(--ease);
	position: relative;
	overflow: hidden;
	isolation: isolate;
	white-space: nowrap;
}

.btn::after {
	content: '';
	position: absolute;
	inset: 0;
	background: var(--ch-primary);
	transform: translateY(101%);
	transition: transform .55s var(--ease);
	z-index: -1;
	border-radius: inherit;
}

.btn:hover::after {
	transform: none;
}

.btn:hover {
	color: #fff;
}

.btn:active {
	transform: scale(.97);
}

.btn .ic {
	width: 18px;
	height: 18px;
	transition: transform .5s var(--ease);
}

.btn:hover .ic {
	transform: translateX(4px);
}

.btn--ghost {
	--b: transparent;
	--t: var(--ch-text);
	box-shadow: inset 0 0 0 1px var(--ch-border);
}

.btn--ghost:hover {
	box-shadow: inset 0 0 0 1px var(--ch-primary);
}

.btn--accent {
	--b: var(--ch-primary);
	--t: #fff;
}

.btn--accent::after {
	background: var(--ch-text);
}

.btn--block {
	width: 100%;
}

.btn[disabled] {
	opacity: .45;
	pointer-events: none;
}

.link-arrow {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	font-weight: 600;
	border-bottom: 1px solid var(--ch-border);
	padding-bottom: .2em;
	transition: border-color .3s, gap .4s var(--ease);
}

.link-arrow:hover {
	border-color: var(--ch-primary);
	gap: .9em;
}

.link-arrow .ic {
	width: 16px;
	height: 16px;
}

.chip {
	display: inline-flex;
	align-items: center;
	gap: .45em;
	min-height: 40px;
	padding: 0 1.05em;
	border-radius: 999px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	font-size: .9rem;
	font-weight: 500;
	transition: background-color .3s, color .3s, box-shadow .3s;
	white-space: nowrap;
}

.chip:hover {
	box-shadow: inset 0 0 0 1px var(--ch-text);
}

.chip[aria-pressed='true'],
.chip.is-on {
	background: var(--ch-text);
	color: var(--ch-bg);
	box-shadow: none;
}

/* Emblema eclipsei */
.eclipse {
	width: 100%;
	height: auto;
	overflow: visible;
}

.eclipse__rays {
	fill: var(--aur);
}

.eclipse__sun {
	fill: var(--aur);
}

.eclipse__moon {
	fill: var(--cerneala);
}

.eclipse__shadow {
	fill: var(--ch-bg);
	transition: fill .9s var(--ease);
}

/* Header */
.hdr {
	position: fixed;
	inset: 0 0 auto;
	z-index: 60;
	height: var(--header-h);
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 24px;
	padding-inline: var(--gutter);
	color: var(--ch-text);
	transition: transform .6s var(--ease), background-color .5s, color .5s, backdrop-filter .5s;
}

.hdr.is-solid {
	background: color-mix(in oklab, var(--ch-bg) 90%, transparent);
	backdrop-filter: blur(18px) saturate(1.4);
	-webkit-backdrop-filter: blur(18px) saturate(1.4);
	box-shadow: 0 1px 0 var(--ch-border);
}

.hdr.is-hidden {
	transform: translateY(-100%);
}

.hdr__nav {
	display: flex;
	gap: clamp(14px, 2.2vw, 34px);
	font-size: .92rem;
	font-weight: 500;
}

.hdr__nav a,
.hdr__nav button {
	position: relative;
	padding-block: 8px;
}

.hdr__nav a::after,
.hdr__nav button::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2px;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .45s var(--ease);
}

.hdr__nav a:hover::after,
.hdr__nav button:hover::after,
.hdr__nav [aria-expanded='true']::after {
	transform: scaleX(1);
	transform-origin: left;
}

.logo {
	display: flex;
	flex-direction: column;
	align-items: center;
	line-height: 1;
}

.logo__word {
	font: 400 1.65rem/1 var(--ch-font-display);
	letter-spacing: .2em;
	margin-right: -.2em;
}

.logo__sub {
	font: 600 .55rem/1 var(--ch-font-ui);
	letter-spacing: .42em;
	text-transform: uppercase;
	margin-top: 6px;
	opacity: .7;
	margin-right: -.42em;
}

.hdr__tools {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 6px;
}

.hdr__tools a,
.hdr__tools button {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	transition: background-color .3s;
	position: relative;
}

.hdr__tools a:hover,
.hdr__tools button:hover {
	background: var(--ch-border);
}

.hdr__somm {
	width: auto !important;
	padding: 0 16px;
	border-radius: 999px !important;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	font-size: .85rem;
	font-weight: 600;
	gap: 8px;
	display: flex !important;
}

.cart-count {
	position: absolute;
	top: 6px;
	right: 4px;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 9px;
	background: var(--ch-primary);
	color: #fff;
	font: 700 .66rem/18px var(--ch-font-ui);
	text-align: center;
	transform: scale(0);
	transition: transform .45s var(--ease);
}

.cart-count.has {
	transform: scale(1);
}

.cart-count.bump {
	animation: bump .6s var(--ease);
}

@keyframes bump {
	40% {
		transform: scale(1.5);
	}
}

.hdr__burger {
	display: none !important;
}

/* Mega-meniu */
.mega {
	position: fixed;
	inset: var(--header-h) 0 auto;
	z-index: 55;
	color: var(--cerneala);
	background: var(--creta);
	box-shadow: 0 30px 80px rgba(30, 21, 25, .18);
	clip-path: inset(0 0 100% 0);
	visibility: hidden;
	transition: clip-path .7s var(--ease), visibility 0s .7s;
}

.mega.is-open {
	clip-path: inset(0 0 0 0);
	visibility: visible;
	transition: clip-path .7s var(--ease);
}

.mega__in {
	display: grid;
	grid-template-columns: 1.25fr .8fr .8fr .9fr 1.15fr;
	gap: clamp(20px, 3vw, 48px);
	padding-block: 40px 48px;
}

.mega .mega__h {
	margin: 0 0 16px;
	font: 600 .7rem/1 var(--ch-font-ui);
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--cerneala-2);
}

.mega ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 4px;
}

.mega__ranges a {
	display: flex;
	align-items: baseline;
	gap: 12px;
	padding: 5px 0;
	font: 400 1.45rem/1.1 var(--ch-font-display);
	transition: color .3s, padding .45s var(--ease);
}

.mega__ranges a small {
	font: 500 .72rem/1 var(--ch-font-ui);
	letter-spacing: .08em;
	color: var(--cerneala-2);
	text-transform: uppercase;
}

.mega__ranges a:hover {
	color: var(--rubin);
	padding-left: 8px;
}

.mega__col a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 6px 0;
	font-size: .98rem;
	transition: color .3s;
}

.mega__col a:hover {
	color: var(--rubin);
}

.dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	flex: none;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .12);
}

.dot--alb {
	background: #EBDDA9;
}

.dot--rose {
	background: var(--rose-quartz);
}

.dot--rosu {
	background: var(--purple);
}

.dot--spumant {
	background: var(--foil-silver);
}

.dot--noapte {
	background: #19C79A;
	box-shadow: 0 0 8px #19C79A;
}

.mega__preview {
	position: relative;
	border-radius: var(--r);
	overflow: hidden;
	background: var(--foita);
	min-height: 300px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 22px;
	isolation: isolate;
}

.mega__preview img {
	position: absolute;
	right: 14px;
	bottom: 14px;
	height: 86%;
	width: auto;
	z-index: -1;
	filter: drop-shadow(0 20px 24px rgba(58, 20, 32, .25));
	transition: transform .8s var(--ease), opacity .4s;
}

.mega__preview strong {
	font: 400 1.7rem/1.05 var(--ch-font-display);
	max-width: 10ch;
}

.mega__preview p {
	margin: 8px 0 14px;
	font-size: .88rem;
	max-width: 20ch;
	color: var(--cerneala-2);
}

.mega__preview .btn {
	align-self: flex-start;
	min-height: 42px;
	font-size: .85rem;
	--b: var(--cerneala);
	--t: var(--creta);
}

.mega__veil {
	position: fixed;
	inset: 0;
	z-index: 50;
	background: rgba(20, 12, 16, .3);
	opacity: 0;
	pointer-events: none;
	transition: opacity .5s;
}

.mega__veil.is-on {
	opacity: 1;
	pointer-events: auto;
}

/* Ceasul zilei (home) */
.dayclock {
	position: fixed;
	left: var(--gutter);
	bottom: 22px;
	z-index: 40;
	display: flex;
	align-items: center;
	gap: 12px;
	font: 500 .78rem/1 var(--ch-font-ui);
	letter-spacing: .08em;
	pointer-events: none;
	color: var(--ch-text);
	transition: opacity .5s, color .9s;
}

.dayclock.is-off {
	opacity: 0;
}

.dayclock__t {
	font: 400 1.35rem/1 var(--ch-font-display);
	letter-spacing: 0;
	font-variant-numeric: tabular-nums;
}

.dayclock__orb {
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--aur);
	box-shadow: 0 0 22px var(--aur);
	position: relative;
	overflow: hidden;
}

.dayclock__orb::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: var(--ch-bg);
	transform: translateX(calc(var(--moon, 0) * 70% - 110%));
	transition: background-color .9s;
}

.dayclock__lbl {
	text-transform: uppercase;
	opacity: .7;
}

/* Age gate */
.gate {
	position: fixed;
	inset: 0;
	z-index: 200;
	display: grid;
	place-items: center;
	padding: 24px;
	background: rgba(30, 21, 25, .55);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}

.gate[hidden] {
	display: none;
}

.gate__card {
	width: min(440px, 100%);
	background: var(--creta);
	color: var(--cerneala);
	border-radius: 28px;
	padding: 44px 36px 32px;
	text-align: center;
	box-shadow: 0 40px 120px rgba(0, 0, 0, .35);
	--ch-bg: var(--creta);
}

.gate__card .eclipse {
	width: 64px;
	margin: 0 auto 18px;
}

.gate__card h2 {
	font: 400 2rem/1.05 var(--ch-font-display);
	margin: 6px 0 10px;
}

.gate__card p {
	color: var(--cerneala-2);
	margin: 0 0 24px;
	font-size: .95rem;
}

.gate__btns {
	display: grid;
	gap: 10px;
}

.gate__no {
	font-size: .88rem;
	color: var(--cerneala-2);
	text-decoration: underline;
	text-underline-offset: 3px;
	margin-top: 6px;
}

.gate__msg {
	margin-top: 14px;
	font-size: .9rem;
}

/* Sertarul de cos */
.drawer {
	position: fixed;
	inset: 0;
	z-index: 120;
	pointer-events: none;
	overflow: hidden;
}

.drawer__veil {
	position: absolute;
	inset: 0;
	background: rgba(20, 12, 16, .4);
	opacity: 0;
	transition: opacity .5s;
}

.drawer__panel {
	position: absolute;
	top: 10px;
	right: 10px;
	bottom: 10px;
	width: min(460px, calc(100% - 20px));
	background: var(--creta);
	color: var(--cerneala);
	border-radius: 26px;
	display: flex;
	flex-direction: column;
	transform: translateX(calc(100% + 140px));
	transition: transform .7s var(--ease);
	box-shadow: 0 30px 90px rgba(0, 0, 0, .3);
	--ch-bg: var(--creta);
	--ch-text: var(--cerneala);
	--ch-border: var(--linie);
	--ch-primary: var(--rubin);
}

.drawer.is-open {
	pointer-events: auto;
}

.drawer.is-open .drawer__veil {
	opacity: 1;
}

.drawer.is-open .drawer__panel {
	transform: none;
}

.drawer__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 22px 24px 14px;
}

.drawer__head h2 {
	font: 400 1.8rem/1 var(--ch-font-display);
	margin: 0;
}

.drawer__x {
	width: 44px;
	height: 44px;
	display: grid;
	place-items: center;
	border-radius: 50%;
}

.drawer__x:hover {
	background: var(--linie);
}

.box6 {
	margin: 0 24px;
	padding: 18px;
	border-radius: 18px;
	background: #fff;
	box-shadow: inset 0 0 0 1px var(--linie);
}

.box6__slots {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 6px;
	margin-bottom: 12px;
}

.box6__slot {
	aspect-ratio: 1 / 2.2;
	border-radius: 8px;
	background: var(--creta-2);
	position: relative;
	overflow: hidden;
}

.box6__slot.is-full {
	background: var(--foita);
}

.box6__slot img {
	position: absolute;
	inset: 6% 0 0;
	height: 94%;
	width: 100%;
	object-fit: contain;
	animation: drop .7s var(--ease) both;
}

@keyframes drop {
	from {
		transform: translateY(-60%);
		opacity: 0;
	}
}

.box6__txt {
	font-size: .88rem;
	color: var(--cerneala-2);
	margin: 0;
}

.box6__txt strong {
	color: var(--cerneala);
}

.ship {
	margin: 12px 24px 0;
	font-size: .82rem;
	color: var(--cerneala-2);
}

.ship__bar {
	height: 3px;
	border-radius: 3px;
	background: var(--creta-2);
	margin-top: 6px;
	overflow: hidden;
}

.ship__bar i {
	display: block;
	height: 100%;
	width: 100%;
	background: var(--rubin);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .8s var(--ease);
}

.drawer__items {
	flex: 1;
	overflow: auto;
	padding: 8px 24px;
	overscroll-behavior: contain;
}

.line {
	display: grid;
	grid-template-columns: 64px 1fr auto;
	gap: 14px;
	align-items: center;
	padding: 14px 0;
	border-bottom: 1px solid var(--linie);
}

.line__img {
	width: 64px;
	height: 84px;
	border-radius: 12px;
	background: var(--creta-2);
	display: grid;
	place-items: center;
	overflow: hidden;
}

.line__img img {
	height: 92%;
	width: 90%;
	object-fit: contain;
}

.line__name {
	font: 400 1.05rem/1.2 var(--ch-font-display);
	margin: 0;
}

.line__range {
	font-size: .72rem;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--cerneala-2);
	margin: 0 0 3px;
}

.qty {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	margin-top: 8px;
	border-radius: 999px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
}

.qty button {
	width: 32px;
	height: 32px;
	display: grid;
	place-items: center;
	border-radius: 50%;
}

.qty button .ic {
	width: 15px;
	height: 15px;
}

.qty span,
.qty input {
	min-width: 24px;
	text-align: center;
	font-weight: 600;
	font-size: .9rem;
	border: 0;
	background: none;
	width: 34px;
	-moz-appearance: textfield;
}

.qty input::-webkit-inner-spin-button {
	-webkit-appearance: none;
}

.line__price {
	text-align: right;
	font-weight: 600;
	font-size: .95rem;
}

.line__rm {
	display: block;
	font-size: .75rem;
	color: var(--cerneala-2);
	text-decoration: underline;
	margin-top: 6px;
	margin-left: auto;
}

/* Ecrane joase: tot sertarul deruleaza, lista de vinuri nu se mai strange la zero */
.drawer__panel {
	overflow-y: auto;
	overscroll-behavior: contain;
}

.drawer__items {
	flex: 1 0 auto;
	min-height: 120px;
	overflow: visible;
}

.drawer__foot {
	position: sticky;
	bottom: 0;
	background: var(--creta);
	border-radius: 0 0 26px 26px;
}

@media (max-height: 760px) {
	.box6 {
		padding: 12px;
	}
	.box6__slot {
		aspect-ratio: 1 / 1.6;
	}
	.drawer__head {
		padding-block: 14px 8px;
	}
}

.drawer__alert {
	margin: 8px 0 4px;
	padding: 14px;
	border-radius: 14px;
	background: #F7DDE3;
	color: var(--rubin);
	font-size: .86rem;
}

.drawer__alert p {
	margin: 0 0 10px;
}

.drawer__alert .btn {
	--b: var(--rubin);
	--t: #fff;
	min-height: 38px;
	font-size: .82rem;
}

.line.is-out {
	opacity: .55;
}

.line.is-out .line__range b {
	color: var(--rubin);
}

.qty button[disabled] {
	opacity: .3;
	cursor: not-allowed;
}

.drawer__foot [aria-disabled='true'] {
	opacity: .45;
}

.drawer__empty {
	text-align: center;
	padding: 40px 10px;
	color: var(--cerneala-2);
}

.drawer__empty .h3 {
	color: var(--cerneala);
	margin-bottom: 10px;
}

.drawer__foot {
	padding: 16px 24px 22px;
	border-top: 1px solid var(--linie);
}

.drawer__row {
	display: flex;
	justify-content: space-between;
	font-size: .92rem;
	margin-bottom: 6px;
}

.drawer__row--save {
	color: var(--rubin);
	font-weight: 600;
}

.drawer__row--total {
	font: 400 1.5rem/1 var(--ch-font-display);
	margin: 12px 0 16px;
}

.drawer__note {
	font-size: .75rem;
	color: var(--cerneala-2);
	text-align: center;
	margin: 10px 0 0;
}

.toast {
	position: fixed;
	left: 50%;
	bottom: 24px;
	z-index: 130;
	transform: translate(-50%, calc(100% + 60px));
	background: var(--cerneala);
	color: var(--creta);
	padding: 12px 20px;
	border-radius: 999px;
	font-size: .9rem;
	transition: transform .6s var(--ease);
	display: flex;
	gap: 10px;
	align-items: center;
}

.toast.is-on {
	transform: translate(-50%, 0);
}

/* Carduri de produs */
.grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr));
	gap: clamp(14px, 1.6vw, 24px);
}

.card {
	position: relative;
	display: flex;
	flex-direction: column;
	border-radius: var(--r);
	background: var(--ch-bg);
	color: var(--ch-text);
	overflow: hidden;
	isolation: isolate;
	transition: transform .7s var(--ease), box-shadow .7s var(--ease);
}

.card:hover {
	transform: translateY(-6px);
	box-shadow: 0 30px 60px -30px color-mix(in oklab, var(--ch-text) 45%, transparent);
}

.card__link {
	position: absolute;
	inset: 0;
	z-index: 2;
}

.card__stage {
	position: relative;
	aspect-ratio: 4 / 4.6;
	overflow: hidden;
}

.card__halo {
	position: absolute;
	left: 50%;
	top: 52%;
	width: 74%;
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(circle, var(--ch-light) 0, transparent 70%);
	transform: translate(-50%, -50%) scale(.85);
	transition: transform 1s var(--ease);
}

.card:hover .card__halo {
	transform: translate(-50%, -50%) scale(1.15);
}

.card__bottle {
	position: absolute;
	left: 7%;
	right: 7%;
	bottom: 5%;
	height: 84%;
	width: 86%;
	object-fit: contain;
	object-position: 50% 100%;
	transform-origin: 50% 100%;
	transition: transform 1s var(--ease);
	filter: drop-shadow(0 26px 20px rgba(0, 0, 0, .22));
}

.card:hover .card__bottle {
	transform: translateY(-4%) rotate(-3deg) scale(1.03);
}

.card__medal {
	position: absolute;
	top: 14px;
	left: 14px;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	font: 700 .72rem/1 var(--ch-font-ui);
	color: #4A3510;
	background: var(--foil-gold);
	box-shadow: 0 4px 10px rgba(0, 0, 0, .18);
}

.card__flag {
	position: absolute;
	top: 16px;
	right: 14px;
	font: 600 .7rem/1 var(--ch-font-ui);
	letter-spacing: .1em;
	text-transform: uppercase;
	padding: 7px 10px;
	border-radius: 999px;
	background: var(--ch-text);
	color: var(--ch-bg);
}

.card__flag--sale {
	background: var(--ch-primary);
	color: #fff;
}

.card__body {
	padding: 4px 20px 18px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.card__range {
	margin: 0;
	font: 600 .68rem/1.3 var(--ch-font-ui);
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--ch-primary);
}

.card__name {
	margin: 6px 0 4px;
	font: 400 1.32rem/1.12 var(--ch-font-display);
	letter-spacing: -.01em;
}

.card__meta {
	margin: 0;
	font-size: .82rem;
	color: var(--ch-text-soft);
}

.card__foot {
	margin-top: auto;
	padding-top: 14px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.card__price {
	margin: 0;
	font-weight: 600;
	font-size: 1rem;
}

.card__price s {
	font-weight: 400;
	color: var(--ch-text-soft);
	font-size: .85rem;
	margin-right: 4px;
}

.card__add {
	position: relative;
	z-index: 3;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: var(--ch-text);
	color: var(--ch-bg);
	transition: transform .5s var(--ease), background-color .3s;
}

.card__add:hover {
	transform: rotate(90deg) scale(1.08);
	background: var(--ch-primary);
	color: #fff;
}

.card__add.is-done {
	background: var(--ch-primary);
	color: #fff;
}

.card__add .ic {
	width: 18px;
	height: 18px;
}

/* Sectiuni comune */
.sec {
	padding-block: clamp(80px, 13vw, 180px);
	position: relative;
}

.sec__head {
	display: flex;
	justify-content: space-between;
	align-items: end;
	gap: 32px;
	flex-wrap: wrap;
	margin-bottom: clamp(32px, 5vw, 64px);
}

.sec__head .h1,
.sec__head .h2 {
	max-width: 14ch;
	margin-top: 14px;
}

.reveal-line {
	overflow: hidden;
	display: block;
	padding-bottom: .06em;
}

.reveal-line > span {
	display: inline-block;
}

/* HOME */
.hero {
	position: relative;
	min-height: 100svh;
	display: grid;
	place-items: center;
	overflow: hidden;
	isolation: isolate;
	padding: calc(var(--header-h) + 20px) var(--gutter) 90px;
}

.hero__sky {
	position: absolute;
	inset: 0;
	z-index: -2;
	background: radial-gradient(120% 80% at 50% 105%, #F4B3A4 0%, #F6CFCB 32%, var(--ch-bg) 70%);
}

/* Clipul de fundal sta sub cerul pastel: voalul il tine luminos, ca textul si sticlele sa ramana primul plan */
.hero__video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -2;
	opacity: 0;
	transition: opacity 1.6s var(--ease);
}

.hero__video.is-on {
	opacity: 1;
}

.hero__veil {
	position: absolute;
	inset: 0;
	z-index: -2;
	pointer-events: none;
	background: linear-gradient(180deg, color-mix(in oklab, var(--ch-bg) 92%, transparent) 0%, color-mix(in oklab, var(--ch-bg) 55%, transparent) 38%, color-mix(in oklab, var(--ch-bg) 20%, transparent) 70%, color-mix(in oklab, var(--ch-bg) 70%, transparent) 100%);
}

.hero:has(.hero__video) .hero__sun {
	mix-blend-mode: soft-light;
	opacity: .8;
}

/* Arcada: clipul gamei, vertical, ca o fereastra spre seara in spatele sticlei */
.rpanel__arch {
	position: absolute;
	left: 50%;
	bottom: 2%;
	height: 92%;
	width: auto;
	aspect-ratio: 9 / 15;
	max-width: 100%;
	transform: translateX(-50%);
	object-fit: cover;
	border-radius: 999px 999px 18px 18px;
	z-index: 0;
	box-shadow: 0 40px 80px -30px rgba(0, 0, 0, .55);
	background: #120c0e;
}

.rpanel__bottle.has-arch img {
	position: relative;
	z-index: 1;
	height: 82%;
}

.rpanel__bottle.has-arch::before {
	z-index: 2;
}

.hero__sun {
	position: absolute;
	left: 50%;
	top: 62%;
	width: min(70vw, 760px);
	aspect-ratio: 1;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	z-index: -1;
	background: radial-gradient(circle, #FDE6DD 0%, #F7B7A3 38%, rgba(241, 119, 77, 0) 70%);
}

.hero__title {
	text-align: center;
	position: relative;
	z-index: 2;
	margin-top: -30vh;
}

.hero__title .h-hero {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.hero__title .h-hero .l2 {
	font-style: italic;
	margin-top: -.02em;
}

.hero__emb {
	width: clamp(70px, 9vw, 120px);
	margin: 0 auto clamp(18px, 3vw, 30px);
}

.hero__emb .eclipse__rays {
	transform-origin: 100px 100px;
	animation: spin 60s linear infinite;
}

@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

.hero__bottles {
	position: absolute;
	inset: auto 0 4%;
	height: 47%;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap: clamp(8px, 4vw, 70px);
	z-index: 1;
	pointer-events: none;
}

.hero__bottles::after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -1.5%;
	width: min(560px, 70vw);
	height: 5%;
	transform: translateX(-50%);
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(40, 20, 20, .35), transparent);
	z-index: -1;
}

.hero__bottles img {
	height: 100%;
	width: auto;
	object-fit: contain;
	filter: drop-shadow(0 40px 40px rgba(80, 31, 60, .28));
	will-change: transform;
}

.hero__bottles img:nth-child(1),
.hero__bottles img:nth-child(3) {
	height: 80%;
}

.hero__copy {
	position: absolute;
	left: var(--gutter);
	bottom: 34px;
	z-index: 3;
	max-width: 320px;
}

.hero__copy p {
	margin: 0;
	font-size: .98rem;
	line-height: 1.5;
}

.hero__cta {
	position: absolute;
	right: var(--gutter);
	bottom: 34px;
	z-index: 3;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

.hero__scroll {
	position: absolute;
	left: 50%;
	bottom: 26px;
	transform: translateX(-50%);
	z-index: 3;
	font: 600 .66rem/1 var(--ch-font-ui);
	letter-spacing: .3em;
	text-transform: uppercase;
	display: none;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	opacity: .7;
}

/* Manifest */
.manifest {
	padding-block: clamp(110px, 18vw, 240px);
}

.manifest__txt {
	font: 400 clamp(1.8rem, 4.1vw, 4rem)/1.12 var(--ch-font-display);
	letter-spacing: -.015em;
	max-width: 22ch;
	margin: 22px 0 0;
	text-wrap: balance;
}

/* cuvintele "se aprind" la scroll: de la gri lizibil (>=3:1, text mare) la cerneala plina */
.manifest__txt .w {
	color: color-mix(in oklab, var(--ch-text) 58%, var(--ch-bg));
	transition: color .25s;
}

.manifest__txt .w.on {
	color: var(--ch-text);
}

.manifest__txt em {
	font-style: italic;
}

.manifest__meta {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	margin-top: clamp(60px, 8vw, 110px);
	border-top: 1px solid var(--ch-border);
	padding-top: 26px;
}

.stat__n {
	font: 400 clamp(2.4rem, 5vw, 4.6rem)/1 var(--ch-font-display);
	letter-spacing: -.03em;
}

.stat__l {
	font-size: .88rem;
	color: var(--ch-text-soft);
	margin-top: 8px;
	max-width: 22ch;
}

/* Terroir: harta desenata la scroll */
.terroir__pin {
	position: relative;
	height: 100svh;
	display: grid;
	grid-template-columns: 1fr 1.05fr;
	align-items: center;
	gap: var(--gutter);
	padding-inline: var(--gutter);
	overflow: hidden;
}

.terroir__steps {
	position: relative;
	max-width: 480px;
	display: grid;
	gap: 48px;
}

.js .terroir__steps {
	height: 56vh;
	display: block;
}

.tstep {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.js .tstep {
	position: absolute;
	inset: 0;
	opacity: 0;
}

.js .tstep:first-child {
	opacity: 1;
}

.tstep .h2 {
	margin: 14px 0 18px;
}

.tstep p {
	margin: 0;
	max-width: 40ch;
	color: var(--ch-text-soft);
	font-size: 1.05rem;
}

.map {
	position: relative;
	height: 82vh;
}

.map svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

.map .contour {
	fill: none;
	stroke: var(--ch-text);
	stroke-opacity: .13;
	stroke-width: 1;
}

.map .river {
	fill: none;
	stroke: #5F82A8;
	stroke-width: 3.2;
	stroke-linecap: round;
}

.map .river-glow {
	fill: none;
	stroke: #9DB8D6;
	stroke-width: 16;
	stroke-opacity: .28;
	stroke-linecap: round;
}

.map .border-lbl {
	font: italic 400 16px var(--ch-font-display);
	fill: #5F82A8;
	letter-spacing: .08em;
}

.map .vines path {
	stroke: #6D7A3A;
	stroke-width: 1.8;
	stroke-linecap: round;
}

.pin circle.c {
	fill: var(--ch-primary);
}

.pin circle.r {
	fill: none;
	stroke: var(--ch-primary);
	stroke-opacity: .5;
	transform-box: fill-box;
	transform-origin: center;
	animation: ping 2.6s var(--ease) infinite;
}

@keyframes ping {
	from {
		transform: scale(.4);
		opacity: 1;
	}
	to {
		transform: scale(2.6);
		opacity: 0;
	}
}

.pin text {
	font: 600 12px var(--ch-font-ui);
	letter-spacing: .14em;
	text-transform: uppercase;
	fill: var(--ch-text);
}

.pin text.s {
	font: italic 400 15px var(--ch-font-display);
	letter-spacing: 0;
	text-transform: none;
	fill: var(--ch-text-soft);
}

.map__photo {
	position: absolute;
	right: 0;
	bottom: 4%;
	width: 40%;
	aspect-ratio: 4 / 5;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 30px 60px -20px rgba(0, 0, 0, .35);
}

.map__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Gamele: carusel orizontal, fiecare panou isi schimba fundalul */
.ranges__pin {
	height: 100svh;
	overflow: hidden;
	position: relative;
}

.ranges__track {
	display: flex;
	height: 100%;
	will-change: transform;
}

.rpanel {
	flex: 0 0 100vw;
	height: 100%;
	position: relative;
	display: grid;
	grid-template-columns: 1fr minmax(260px, 34vw) 1fr;
	align-items: center;
	padding: calc(var(--header-h) + 10px) var(--gutter) 70px;
	gap: 3vw;
	isolation: isolate;
	color: var(--ch-text);
	background: var(--ch-bg);
}

.rpanel__ghost {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -54%);
	font: italic 400 clamp(6rem, 22vw, 24rem)/.8 var(--ch-font-display);
	letter-spacing: -.05em;
	white-space: nowrap;
	color: var(--ch-text);
	opacity: .07;
	z-index: -1;
	pointer-events: none;
}

.rpanel__bottle {
	height: min(70vh, 740px);
	display: flex;
	justify-content: center;
	align-items: flex-end;
	position: relative;
}

.rpanel__bottle::before {
	content: '';
	position: absolute;
	bottom: -2%;
	left: 50%;
	width: 70%;
	height: 6%;
	border-radius: 50%;
	transform: translateX(-50%);
	background: radial-gradient(closest-side, rgba(0, 0, 0, .28), transparent);
}

.rpanel__bottle img {
	height: 100%;
	width: 100%;
	min-height: 0;
	object-fit: contain;
	object-position: 50% 100%;
	filter: drop-shadow(0 30px 30px rgba(0, 0, 0, .25));
}

.rpanel__bottle.is-wide img {
	height: 62%;
}

.rpanel__hour {
	font: 400 clamp(3rem, 7vw, 6.6rem)/1 var(--ch-font-display);
	letter-spacing: -.03em;
	font-variant-numeric: tabular-nums;
}

.rpanel__left .kicker {
	color: var(--ch-primary);
}

.rpanel__name {
	font: 400 var(--fs-2)/1 var(--ch-font-display);
	margin: 10px 0 0;
	letter-spacing: -.02em;
}

.rpanel__right {
	max-width: 360px;
	justify-self: end;
}

.rpanel__right .h3 {
	margin: 0 0 14px;
}

.rpanel__right p {
	color: var(--ch-text-soft);
	margin: 0 0 24px;
}

.rpanel__mini {
	display: flex;
	gap: 6px;
	margin-top: 26px;
	flex-wrap: wrap;
}

.rpanel__mini a {
	width: 54px;
	height: 72px;
	border-radius: 10px;
	background: var(--ch-glass);
	display: grid;
	place-items: center;
	transition: transform .4s var(--ease);
}

.rpanel__mini a:hover {
	transform: translateY(-4px);
}

.rpanel__mini img {
	height: 88%;
	width: 90%;
	object-fit: contain;
}

.rpanel.tone-noapte .rpanel__bottle img {
	filter: drop-shadow(0 0 40px rgba(25, 199, 154, .35)) drop-shadow(0 30px 30px rgba(0, 0, 0, .6));
	animation: glow 3.2s ease-in-out infinite;
}

@keyframes glow {
	50% {
		filter: drop-shadow(0 0 70px rgba(25, 199, 154, .6)) drop-shadow(0 30px 30px rgba(0, 0, 0, .6));
	}
}

.ranges__progress {
	position: absolute;
	left: var(--gutter);
	right: var(--gutter);
	bottom: 28px;
	height: 1px;
	background: rgba(128, 128, 128, .3);
	z-index: 3;
}

.ranges__progress i {
	display: block;
	height: 100%;
	width: 100%;
	transform: scaleX(0);
	transform-origin: left;
	background: var(--ch-primary);
}

/* Bestsellers */
.picks .grid {
	grid-template-columns: repeat(4, 1fr);
}

/* Cutia de 6 - teaser */
.box-tease {
	display: grid;
	grid-template-columns: 1.05fr 1fr;
	gap: clamp(30px, 5vw, 90px);
	align-items: center;
}

.box-visual {
	position: relative;
	aspect-ratio: 1.15;
	border-radius: 30px;
	background: linear-gradient(160deg, #EADCC8, #D7BB97);
	overflow: hidden;
}

.box-visual__crate {
	position: absolute;
	left: 6%;
	right: 6%;
	bottom: 8%;
	height: 34%;
	border-radius: 10px;
	background: linear-gradient(180deg, #E8CFA9, #C9A276);
	box-shadow: 0 30px 40px -20px rgba(70, 40, 10, .5), inset 0 2px 0 rgba(255, 255, 255, .4);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
}

.box-visual__crate span {
	font: 400 clamp(1.2rem, 2.6vw, 2.2rem)/1 var(--ch-font-display);
	letter-spacing: .3em;
	color: rgba(90, 50, 20, .5);
}

.box-visual__bottles {
	position: absolute;
	left: 9%;
	right: 9%;
	top: 10%;
	bottom: 24%;
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: 100%;
	align-items: end;
	gap: 1%;
	z-index: 1;
}

.box-visual__bottles img {
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: contain;
	object-position: 50% 100%;
	filter: drop-shadow(0 16px 12px rgba(60, 30, 10, .3));
}

.box-tease ol {
	list-style: none;
	counter-reset: s;
	padding: 0;
	margin: 28px 0 34px;
	display: grid;
	gap: 14px;
}

.box-tease li {
	counter-increment: s;
	display: grid;
	grid-template-columns: 38px 1fr;
	gap: 12px;
	align-items: baseline;
}

.box-tease li::before {
	content: counter(s, decimal-leading-zero);
	font: italic 400 1.1rem var(--ch-font-display);
	color: var(--ch-primary);
}

.box-tease__cta {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.tiers {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

.tier {
	padding: 12px 18px;
	border-radius: 16px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
}

.tier b {
	font: 400 1.6rem/1 var(--ch-font-display);
	display: block;
}

.tier span {
	font-size: .8rem;
	color: var(--ch-text-soft);
}

/* Somelier rapid */
.somm-q {
	border-radius: 34px;
	padding: clamp(28px, 6vw, 80px);
	background: var(--prune);
	color: #F6ECF4;
	position: relative;
	overflow: hidden;
	isolation: isolate;
	--ch-text: #F6ECF4;
	--ch-bg: var(--prune);
	--ch-border: rgba(246, 236, 244, .22);
	--ch-text-soft: rgba(246, 236, 244, .72);
	--ch-primary: #F0A9C0;
}

.somm-q::before {
	content: '';
	position: absolute;
	right: -10%;
	top: -30%;
	width: 60%;
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(240, 169, 192, .35), transparent 65%);
	z-index: -1;
}

.somm-q__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(30px, 5vw, 80px);
	align-items: center;
}

.somm-q__dishes {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 28px;
}

.somm-q__res {
	min-height: 380px;
	display: grid;
	grid-template-columns: 150px 1fr;
	gap: 26px;
	align-items: center;
}

.somm-q__res img {
	height: 340px;
	width: auto;
	justify-self: center;
	filter: drop-shadow(0 30px 30px rgba(0, 0, 0, .4));
}

.somm-q__res .kicker {
	color: var(--ch-primary);
}

.somm-q__res h3 {
	font: 400 2rem/1.05 var(--ch-font-display);
	margin: 8px 0 10px;
}

.somm-q__res p {
	margin: 0 0 18px;
	color: var(--ch-text-soft);
	font-size: .95rem;
}

.somm-q .btn {
	--b: #F6ECF4;
	--t: var(--prune);
}

/* Medalii */
.medals {
	overflow: hidden;
}

.medals__counts {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	margin-bottom: clamp(40px, 6vw, 80px);
}

.medal-n {
	display: flex;
	align-items: center;
	gap: 16px;
}

.medal-n i {
	width: 54px;
	height: 54px;
	border-radius: 50%;
	flex: none;
	box-shadow: 0 8px 18px rgba(0, 0, 0, .15), inset 0 -3px 6px rgba(0, 0, 0, .15);
}

.medal-n i.aur {
	background: var(--foil-gold);
}

.medal-n i.argint {
	background: var(--foil-silver);
}

.medal-n i.bronz {
	background: var(--foil-copper);
}

.medal-n i.comp {
	background: var(--foil-holo);
}

.marquee {
	display: flex;
	white-space: nowrap;
	font: italic 400 clamp(2rem, 5vw, 4.4rem)/1.25 var(--ch-font-display);
	padding-block: 10px;
	border-block: 1px solid var(--ch-border);
	overflow: hidden;
}

.marquee__in {
	display: flex;
	flex: none;
	animation: marq 60s linear infinite;
}

.marquee__in span {
	padding-right: 60px;
}

.marquee__in span::after {
	content: '';
	display: inline-block;
	width: .18em;
	height: .18em;
	border-radius: 50%;
	vertical-align: middle;
	margin-left: 60px;
	background: var(--ch-primary);
}

@keyframes marq {
	to {
		transform: translateX(-100%);
	}
}

.medals__star {
	display: grid;
	grid-template-columns: minmax(260px, 400px) 1fr;
	gap: clamp(24px, 5vw, 80px);
	align-items: center;
	margin-top: clamp(40px, 6vw, 80px);
}

.medals__stage {
	position: relative;
	aspect-ratio: 4 / 5;
	border-radius: 28px;
	background: radial-gradient(circle at 50% 46%, var(--ch-light) 0 38%, transparent 70%), color-mix(in oklab, var(--ch-bg) 70%, #fff 30%);
	overflow: hidden;
}

.medals__stage::after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: 7%;
	width: 46%;
	height: 4%;
	transform: translateX(-50%);
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(58, 20, 32, .3), transparent);
}

.medals__stage img {
	position: absolute;
	left: 10%;
	right: 10%;
	bottom: 8%;
	height: 82%;
	width: 80%;
	object-fit: contain;
	object-position: 50% 100%;
	z-index: 1;
	filter: drop-shadow(0 26px 24px rgba(58, 20, 32, .22));
}

.medals__list {
	list-style: none;
	padding: 0;
	margin: 24px 0 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 26px;
}

.medals__list li {
	display: flex;
	gap: 10px;
	align-items: baseline;
	font-size: .9rem;
	padding: 9px 0;
	border-bottom: 1px solid var(--ch-border);
}

.medals__list li i {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	flex: none;
	transform: translateY(1px);
}

.medals__list li i.aur {
	background: var(--aur);
}

.medals__list li i.argint {
	background: #BFC4CC;
}

.medals__list li i.bronz {
	background: var(--arama);
}

.medals__list li i.rating {
	background: var(--ch-text);
}

.medals__list b {
	font-weight: 600;
}

.medals__list span {
	color: var(--ch-text-soft);
	margin-left: auto;
	white-space: nowrap;
}

/* Soiuri */
.soiuri {
	overflow: hidden;
}

.soi-rail {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding: 4px var(--gutter) 30px;
	margin-inline: calc(-1 * var(--gutter));
	scrollbar-width: none;
}

.soi-rail::-webkit-scrollbar {
	display: none;
}

.soi {
	flex: 0 0 clamp(270px, 27vw, 370px);
	scroll-snap-align: start;
	border-radius: var(--r);
	padding: 28px 26px;
	background: var(--ch-bg);
	color: var(--ch-text);
	min-height: 420px;
	display: flex;
	flex-direction: column;
	transition: transform .6s var(--ease);
}

.soi:hover {
	transform: translateY(-6px);
}

.soi h3 {
	font: 400 2rem/1 var(--ch-font-display);
	margin: 10px 0 auto;
}

.soi blockquote {
	margin: 26px 0 14px;
	font: italic 400 1.1rem/1.4 var(--ch-font-display);
}

.soi p {
	margin: 0;
	font-size: .85rem;
	color: var(--ch-text-soft);
}

.sergiu {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: clamp(20px, 4vw, 60px);
	align-items: center;
	margin-top: 40px;
}

.sergiu img {
	border-radius: var(--r);
	width: 100%;
	aspect-ratio: 16 / 8;
	object-fit: cover;
}

/* Vizita */
.visit__grid {
	display: grid;
	grid-template-columns: 1.3fr 1fr 1fr;
	grid-template-rows: auto auto;
	gap: 16px;
}

.vcard {
	position: relative;
	border-radius: var(--r);
	overflow: hidden;
	min-height: 300px;
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 26px;
	isolation: isolate;
}

.vcard img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -2;
	transition: transform 1.4s var(--ease);
}

.vcard::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(180deg, rgba(20, 10, 14, .05) 20%, rgba(20, 10, 14, .55) 55%, rgba(20, 10, 14, .88));
}

.vcard:hover img {
	transform: scale(1.06);
}

.vcard--big {
	grid-row: span 2;
	min-height: 620px;
}

.vcard--wide {
	grid-column: span 2;
}

.vcard h3 {
	font: 400 clamp(1.5rem, 2.2vw, 2.3rem)/1.04 var(--ch-font-display);
	margin: 8px 0 8px;
	text-wrap: balance;
}

.vcard--big h3 {
	font-size: clamp(2rem, 3.2vw, 3rem);
}

.vcard p {
	margin: 0 0 14px;
	font-size: .92rem;
	opacity: .88;
	max-width: 40ch;
}

.vcard .kicker {
	color: rgba(255, 255, 255, .8);
}

.vcard .link-arrow {
	border-color: rgba(255, 255, 255, .4);
	align-self: flex-start;
}

/* Magazine */
.stores {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	border-top: 1px solid var(--ch-border);
}

.store {
	padding: 26px 22px 26px 0;
	border-right: 1px solid var(--ch-border);
}

.store + .store {
	padding-left: 22px;
}

.store:last-child {
	border-right: 0;
}

.store h3 {
	font: 400 1.5rem/1.1 var(--ch-font-display);
	margin: 0 0 10px;
}

.store p {
	margin: 0 0 4px;
	font-size: .9rem;
	color: var(--ch-text-soft);
}

.store a {
	font-weight: 600;
	font-size: .95rem;
	display: inline-block;
	margin-top: 8px;
}

/* Footer */
.ftr {
	background: var(--purple-4);
	color: #F6E1E1;
	padding: clamp(80px, 10vw, 140px) 0 34px;
	position: relative;
	overflow: hidden;
	--ch-text: #F6E1E1;
	--ch-bg: var(--purple-4);
	--ch-border: rgba(246, 225, 225, .16);
	--ch-text-soft: rgba(246, 225, 225, .66);
	--ch-primary: var(--rose-quartz);
}

.ftr__big {
	font: 400 clamp(3rem, 11vw, 12rem)/.85 var(--ch-font-display);
	letter-spacing: -.04em;
	margin: 0 0 clamp(50px, 7vw, 100px);
}

.ftr__big em {
	color: var(--ch-primary);
	text-shadow: 0 0 40px rgba(25, 199, 154, .45);
}

.ftr__grid {
	display: grid;
	grid-template-columns: 1.6fr repeat(4, 1fr);
	gap: 30px;
	padding-bottom: 50px;
	border-bottom: 1px solid var(--ch-border);
}

.ftr h4,
.ftr__h {
	font: 500 .92rem/1.2 var(--ch-font-ui);
	color: var(--ch-text-soft);
	margin: 0 0 18px;
}

.ftr ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 8px;
	font-size: .95rem;
}

.ftr ul a:hover {
	color: var(--ch-primary);
}

.club p {
	color: var(--ch-text-soft);
	margin: 0 0 18px;
	max-width: 36ch;
}

.club form {
	display: flex;
	gap: 6px;
	padding: 6px;
	border-radius: 999px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	max-width: 420px;
}

.club input {
	flex: 1;
	min-width: 0;
	background: none;
	border: 0;
	padding: 0 16px;
	outline: none;
	color: var(--ch-text);
}

.club input::placeholder {
	color: var(--ch-text-soft);
}

.club .btn {
	--b: var(--ch-primary);
	--t: #0D0B0C;
	min-height: 46px;
}

.club__ok {
	color: var(--ch-primary);
	margin-top: 10px;
	font-size: .9rem;
}

.ftr__legal {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	flex-wrap: wrap;
	padding-top: 26px;
	font-size: .78rem;
	color: var(--ch-text-soft);
}

.ftr__legal p {
	margin: 0;
}

/* MAGAZIN */
.shop-hero {
	padding: calc(var(--header-h) + clamp(40px, 7vw, 90px)) 0 clamp(30px, 4vw, 50px);
}

.shop-hero .h1 {
	margin-top: 14px;
}

.shop-hero .h1 em {
	color: inherit;
}

.filters {
	position: sticky;
	top: 0;
	z-index: 30;
	background: color-mix(in oklab, var(--ch-bg) 88%, transparent);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border-block: 1px solid var(--ch-border);
	transition: top .6s var(--ease);
}

body.hdr-shown .filters {
	top: var(--header-h);
}

.filters__bar {
	display: flex;
	gap: 8px;
	align-items: center;
	padding-block: 12px;
	overflow-x: auto;
	scrollbar-width: none;
}

.filters__bar::-webkit-scrollbar {
	display: none;
}

.filters__sep {
	width: 1px;
	height: 24px;
	background: var(--ch-border);
	flex: none;
	margin-inline: 6px;
}

.filters__more {
	margin-left: auto;
}

.fpanel {
	display: none;
	padding-block: 18px 26px;
	border-top: 1px solid var(--ch-border);
}

.fpanel.is-open {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 26px;
}

.fpanel .fpanel__h {
	margin: 0 0 12px;
	font: 600 .7rem/1 var(--ch-font-ui);
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--ch-text-soft);
}

.fpanel__opts {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.fpanel__opts .chip {
	min-height: 34px;
	font-size: .84rem;
}

.range-slider {
	width: 100%;
	accent-color: var(--ch-primary);
}

.shop-count {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-block: 22px;
	font-size: .9rem;
	color: var(--ch-text-soft);
	gap: 16px;
	flex-wrap: wrap;
}

.shop-count select {
	border: 0;
	background: none;
	font-weight: 600;
	color: var(--ch-text);
	cursor: pointer;
}

.shop-grid {
	padding-bottom: clamp(80px, 10vw, 140px);
}

.shop-grid .card.is-hidden {
	display: none;
}

.shop-empty {
	text-align: center;
	padding: 80px 0;
	display: none;
}

.shop-empty.is-on {
	display: block;
}

.range-band {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 20px;
	align-items: end;
	padding: 40px 0 6px;
	border-bottom: 1px solid var(--ch-border);
}

.range-band:first-child {
	padding-top: 0;
}

.range-band.is-hidden {
	display: none;
}

.range-band h2 {
	font: 400 clamp(2rem, 4vw, 3.4rem)/1 var(--ch-font-display);
	margin: 6px 0 0;
}

.range-band p {
	margin: 0;
	color: var(--ch-text-soft);
	max-width: 46ch;
	font-size: .95rem;
}

/* PDP */
.pdp__top {
	display: grid;
	grid-template-columns: 1.05fr 1fr;
	min-height: 100svh;
}

.pdp__stage {
	position: sticky;
	top: 0;
	height: 100svh;
	display: grid;
	place-items: end center;
	padding-bottom: 9vh;
	overflow: hidden;
	isolation: isolate;
}

.pdp__ghost {
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	font: italic 400 clamp(5rem, 15vw, 16rem)/.8 var(--ch-font-display);
	letter-spacing: -.05em;
	opacity: .07;
	z-index: -1;
	white-space: nowrap;
}

.pdp__halo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 70%;
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(circle, var(--ch-light), transparent 68%);
	z-index: -1;
}

.pdp__bottle {
	height: min(74vh, 780px);
	width: min(80%, 640px);
	object-fit: contain;
	object-position: 50% 100%;
	filter: drop-shadow(0 50px 40px rgba(0, 0, 0, .28));
	will-change: transform;
}

.pdp__bottle.is-wide {
	height: min(52vh, 560px);
	width: min(72%, 560px);
}

.pdp__shadow {
	position: absolute;
	bottom: calc(9vh - 1.5vh);
	left: 35%;
	width: 30%;
	height: 3vh;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(0, 0, 0, .3), transparent);
	z-index: -1;
}

.pdp__crumbs {
	position: absolute;
	top: calc(var(--header-h) + 14px);
	left: var(--gutter);
	font-size: .8rem;
	color: var(--ch-text-soft);
	display: flex;
	gap: 8px;
}

.pdp__crumbs a:hover {
	color: var(--ch-text);
}

.pdp__info {
	padding: calc(var(--header-h) + clamp(40px, 6vw, 80px)) var(--gutter) 60px clamp(10px, 3vw, 50px);
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 640px;
}

.pdp__range {
	display: flex;
	align-items: center;
	gap: 12px;
}

.pdp__range a {
	color: var(--ch-primary);
}

.pdp__title {
	font: 400 clamp(2.6rem, 5vw, 4.8rem)/.95 var(--ch-font-display);
	letter-spacing: -.025em;
	margin: 16px 0 14px;
	text-wrap: balance;
}

.pdp__sub {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 16px;
	font-size: .9rem;
	color: var(--ch-text-soft);
	margin-bottom: 26px;
}

.pdp__sub span + span::before {
	content: '/';
	margin-right: 16px;
}

.pdp__sense {
	font: italic 400 clamp(1.2rem, 1.7vw, 1.5rem)/1.38 var(--ch-font-display);
	margin: 0 0 26px;
	max-width: 34ch;
}

.pdp__medals {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 26px;
}

.mbadge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 7px 12px 7px 8px;
	border-radius: 999px;
	background: var(--ch-glass);
	font-size: .78rem;
	font-weight: 500;
	box-shadow: inset 0 0 0 1px var(--ch-border);
}

.mbadge i {
	width: 18px;
	height: 18px;
	border-radius: 50%;
}

.mbadge i.aur {
	background: var(--foil-gold);
}

.mbadge i.argint {
	background: var(--foil-silver);
}

.mbadge i.bronz {
	background: var(--foil-copper);
}

.mbadge i.rating {
	background: var(--ch-text);
}

.buy {
	border-radius: 24px;
	background: var(--ch-glass);
	box-shadow: inset 0 0 0 1px var(--ch-border);
	padding: 18px;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.buy__opts {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin-bottom: 14px;
}

.buy__opt {
	position: relative;
	text-align: left;
	padding: 14px 16px;
	border-radius: 16px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	transition: box-shadow .3s, background-color .3s;
}

.buy__opt[aria-pressed='true'] {
	box-shadow: inset 0 0 0 2px var(--ch-text);
}

.buy__opt b {
	display: block;
	font-size: .95rem;
}

.buy__opt span {
	font-size: .8rem;
	color: var(--ch-text-soft);
}

.buy__opt em {
	position: absolute;
	top: -9px;
	right: 12px;
	font: 700 .64rem/1 var(--ch-font-ui);
	letter-spacing: .1em;
	text-transform: uppercase;
	font-style: normal;
	background: var(--ch-primary);
	color: #fff;
	padding: 5px 8px;
	border-radius: 999px;
}

.buy__row {
	display: flex;
	gap: 10px;
	align-items: center;
}

.buy__row .qty {
	margin: 0;
	height: 52px;
	padding: 0 6px;
}

.buy__row .btn {
	flex: 1;
}

.buy__price {
	display: flex;
	align-items: baseline;
	gap: 10px;
	margin: 0 0 14px;
	flex-wrap: wrap;
}

.buy__price b {
	font: 400 2rem/1 var(--ch-font-display);
}

.buy__price s {
	color: var(--ch-text-soft);
}

.buy__price small {
	color: var(--ch-primary);
	font-weight: 600;
}

.buy__trust {
	display: flex;
	gap: 18px;
	flex-wrap: wrap;
	margin: 14px 0 0;
	font-size: .78rem;
	color: var(--ch-text-soft);
}

.buy__trust span {
	display: flex;
	align-items: center;
	gap: 6px;
}

.buy__trust .ic {
	width: 16px;
	height: 16px;
}

.buy__out {
	padding: 14px;
	border-radius: 14px;
	background: var(--ch-border);
	font-size: .9rem;
}

.pdp__sticky {
	position: fixed;
	left: 50%;
	bottom: 16px;
	transform: translate(-50%, 160%);
	z-index: 45;
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 8px 8px 8px 12px;
	border-radius: 999px;
	background: color-mix(in oklab, var(--ch-bg) 82%, transparent);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	box-shadow: 0 20px 50px -10px rgba(0, 0, 0, .3), inset 0 0 0 1px var(--ch-border);
	transition: transform .6s var(--ease);
	max-width: calc(100% - 24px);
}

.pdp__sticky.is-on {
	transform: translate(-50%, 0);
}

.pdp__sticky img {
	height: 46px;
	width: auto;
}

.pdp__sticky b {
	font: 400 1.05rem/1.1 var(--ch-font-display);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 30vw;
}

.pdp__sticky .btn {
	min-height: 44px;
}

/* Banda cinematica de pe pagina vinului */
.film {
	position: relative;
	height: min(78vh, 760px);
	overflow: hidden;
	background: #0d0a0b;
	color: #F4EEE4;
	isolation: isolate;
}

.film__v {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -2;
}

.film::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(180deg, rgba(13, 10, 11, .1) 40%, rgba(13, 10, 11, .78));
}

.film__cap {
	position: absolute;
	left: 0;
	right: 0;
	bottom: clamp(28px, 6vh, 64px);
}

.film__t {
	margin: 0;
	font: italic 400 clamp(2.4rem, 6vw, 5.6rem)/1 var(--ch-font-display);
	letter-spacing: -.02em;
}

.film__s {
	margin: 14px 0 0;
	max-width: 44ch;
	font-size: 1.02rem;
	color: rgba(244, 238, 228, .82);
}

@media (max-width: 700px) {
	.film {
		height: 82svh;
	}
}

/* Profil senzorial */
.sense {
	padding-block: clamp(80px, 11vw, 150px);
}

.sense__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(30px, 6vw, 100px);
	align-items: center;
}

.wheel {
	position: relative;
	width: min(100%, 520px);
	aspect-ratio: 1;
	margin-inline: auto;
}

.wheel svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

.wheel .seg {
	stroke: var(--ch-bg);
	stroke-width: 2;
	transition: opacity .4s, transform .6s var(--ease);
	transform-origin: 260px 260px;
}

.wheel .seg.off {
	opacity: .13;
}

.wheel .seg.on:hover {
	transform: scale(1.03);
}

.wheel text {
	font: 600 10.5px var(--ch-font-ui);
	letter-spacing: .14em;
	text-transform: uppercase;
	fill: var(--ch-text);
}

.wheel text.is-off {
	fill: var(--ch-text-soft);
	font-weight: 500;
}

.wheel .center {
	font: italic 400 30px var(--ch-font-display);
	letter-spacing: 0;
	text-transform: none;
}

.wheel .center-s {
	font: 500 11px var(--ch-font-ui);
	fill: var(--ch-text-soft);
	letter-spacing: .12em;
}

.notes {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 22px 0 36px;
}

.note {
	padding: 10px 16px;
	border-radius: 999px;
	background: var(--ch-glass);
	box-shadow: inset 0 0 0 1px var(--ch-border);
	font: italic 400 1.05rem/1 var(--ch-font-display);
}

.scales {
	display: grid;
	gap: 22px;
}

.scale__top {
	display: flex;
	justify-content: space-between;
	font-size: .85rem;
	margin-bottom: 10px;
}

.scale__top b {
	font-weight: 600;
}

.scale__top span {
	color: var(--ch-text-soft);
}

.scale__bar {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 5px;
}

.scale__bar i {
	height: 8px;
	border-radius: 4px;
	background: var(--ch-border);
	transition: background-color .5s;
	transition-delay: calc(var(--i) * 90ms);
}

.scale__bar i.on {
	background: var(--ch-text);
}

.scale__ends {
	display: flex;
	justify-content: space-between;
	font-size: .72rem;
	color: var(--ch-text-soft);
	margin-top: 6px;
	letter-spacing: .04em;
}

.serve {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	margin-top: 34px;
}

.serve > div {
	border-radius: 18px;
	padding: 18px;
	background: var(--ch-glass);
	box-shadow: inset 0 0 0 1px var(--ch-border);
}

.serve .ic {
	width: 24px;
	height: 24px;
	color: var(--ch-primary);
}

.serve b {
	display: block;
	font: 400 1.5rem/1 var(--ch-font-display);
	margin: 12px 0 4px;
}

.serve span {
	font-size: .8rem;
	color: var(--ch-text-soft);
}

.thermo {
	position: relative;
	height: 6px;
	border-radius: 3px;
	background: linear-gradient(90deg, #8DB7E8, #F1D9A6, #D5664F);
	margin-top: 12px;
}

.thermo i {
	position: absolute;
	top: -4px;
	height: 14px;
	border-radius: 7px;
	background: var(--ch-text);
	box-shadow: 0 0 0 3px var(--ch-bg);
	min-width: 14px;
}

.est {
	font-size: .75rem;
	color: var(--ch-text-soft);
	margin-top: 18px;
}

/* Food pairing */
.pair {
	padding-block: clamp(70px, 10vw, 140px);
	border-top: 1px solid var(--ch-border);
}

.pair__grid {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: clamp(30px, 6vw, 100px);
	align-items: center;
}

.plates {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 14px;
}

.plate {
	aspect-ratio: 1;
	border-radius: 50%;
	display: grid;
	place-items: center;
	text-align: center;
	padding: 16%;
	background: radial-gradient(circle at 50% 50%, color-mix(in oklab, var(--ch-bg) 55%, #fff 45%) 0 55%, var(--ch-glass) 56% 100%);
	box-shadow: inset 0 0 0 1px var(--ch-border), 0 18px 30px -18px rgba(0, 0, 0, .35);
	font: italic 400 1.02rem/1.2 var(--ch-font-display);
	transition: transform .6s var(--ease);
}

.plate:hover {
	transform: rotate(-6deg) scale(1.04);
}

.plate small {
	display: block;
	font: 600 .6rem/1 var(--ch-font-ui);
	letter-spacing: .16em;
	text-transform: uppercase;
	font-style: normal;
	color: var(--ch-primary);
	margin-bottom: 6px;
}

/* Parerea oenologului (editabila din /administrare/) */
.oenolog {
	padding-block: clamp(70px, 10vw, 130px);
	border-top: 1px solid var(--ch-border);
}

.oenolog__in {
	max-width: 920px;
	text-align: center;
}

.oenolog__q {
	margin: 22px auto 0;
	font: italic 400 clamp(1.6rem, 3.2vw, 2.8rem)/1.2 var(--ch-font-display);
	letter-spacing: -.01em;
	text-wrap: balance;
}

.oenolog__cmp {
	margin: 26px auto 0;
	max-width: 58ch;
	color: var(--ch-text-soft);
	font-size: 1.05rem;
}

.oenolog__sig {
	margin-top: 26px;
	font: 600 .74rem/1 var(--ch-font-ui);
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--ch-primary);
}

.buy__low {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 12px;
	padding: 7px 12px;
	border-radius: 999px;
	background: color-mix(in oklab, var(--ch-primary) 16%, transparent);
	color: var(--ch-text);
	font-size: .82rem;
	font-weight: 600;
}

.buy__low::before {
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--ch-primary);
	animation: ping 2s var(--ease) infinite;
}

/* Fisa tehnica */
.tech {
	padding-block: clamp(60px, 9vw, 120px);
	border-top: 1px solid var(--ch-border);
}

.tech__grid {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: clamp(30px, 6vw, 100px);
}

.acc {
	border-top: 1px solid var(--ch-border);
}

.acc details {
	border-bottom: 1px solid var(--ch-border);
}

.acc summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 22px 0;
	font: 400 1.5rem/1.1 var(--ch-font-display);
}

.acc summary::-webkit-details-marker {
	display: none;
}

.acc summary .ic {
	transition: transform .5s var(--ease);
}

.acc details[open] summary .ic {
	transform: rotate(45deg);
}

.acc .acc__body {
	padding: 0 0 26px;
	color: var(--ch-text-soft);
}

.acc .acc__body p {
	margin: 0 0 12px;
	max-width: 62ch;
}

.spec {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 24px;
	margin: 0;
}

.spec div {
	padding: 14px 0;
	border-bottom: 1px solid var(--ch-border);
}

.spec dt {
	font-size: .72rem;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--ch-text-soft);
}

.spec dd {
	margin: 4px 0 0;
	font: 400 1.2rem/1.2 var(--ch-font-display);
	color: var(--ch-text);
}

.related {
	padding-block: clamp(60px, 9vw, 120px);
	border-top: 1px solid var(--ch-border);
}

/* Pagini: Cutia de 6, Somelier, Vizita, generic */
.page-hero {
	padding: calc(var(--header-h) + clamp(50px, 8vw, 110px)) 0 clamp(30px, 5vw, 60px);
}

.page-hero .h1 {
	margin: 14px 0 20px;
	max-width: 16ch;
}

.page-hero .h1 em {
	color: inherit;
}

.builder {
	display: grid;
	grid-template-columns: 1fr 400px;
	gap: clamp(20px, 3vw, 44px);
	padding-bottom: 120px;
	align-items: start;
}

.builder__side {
	position: sticky;
	top: calc(var(--header-h) + 16px);
	border-radius: 28px;
	padding: 22px;
	background: #fff;
	box-shadow: inset 0 0 0 1px var(--linie), 0 30px 60px -40px rgba(0, 0, 0, .4);
	color: var(--cerneala);
	--ch-border: var(--linie);
	--ch-text: var(--cerneala);
	--ch-bg: #fff;
	--ch-primary: var(--rubin);
}

.crate {
	position: relative;
	border-radius: 18px;
	background: linear-gradient(180deg, #F0DEC5, #DDBF98);
	padding: 18px 14px 0;
	overflow: hidden;
}

.crate__slots {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}

.crate__slot {
	position: relative;
	aspect-ratio: 1 / 1.6;
	border-radius: 10px;
	background: rgba(110, 70, 30, .1);
	box-shadow: inset 0 3px 8px rgba(80, 40, 10, .18);
	display: grid;
	place-items: end center;
}

.crate__slot > span {
	position: absolute;
	top: 8px;
	left: 10px;
	font: italic 400 .9rem var(--ch-font-display);
	color: rgba(90, 50, 20, .45);
}

.crate__slot img {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 4%;
	height: 90%;
	width: 100%;
	object-fit: contain;
	object-position: bottom;
	animation: drop .8s var(--ease) both;
	filter: drop-shadow(0 10px 8px rgba(60, 30, 10, .3));
}

.crate__slot button {
	position: absolute;
	top: 6px;
	right: 6px;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .9);
	display: grid;
	place-items: center;
}

.crate__slot button .ic {
	width: 14px;
	height: 14px;
}

.crate__front {
	margin: 14px -14px 0;
	height: 50px;
	background: linear-gradient(180deg, #E3C59D, #C9A276);
	display: grid;
	place-items: center;
	font: 400 1.1rem/1 var(--ch-font-display);
	letter-spacing: .3em;
	color: rgba(90, 50, 20, .55);
}

.builder__meter {
	margin: 18px 0 6px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: .88rem;
}

.builder__meter b {
	font: 400 1.6rem/1 var(--ch-font-display);
}

.builder__badge {
	display: inline-block;
	padding: 6px 10px;
	border-radius: 999px;
	font: 700 .68rem/1 var(--ch-font-ui);
	letter-spacing: .1em;
	text-transform: uppercase;
	background: var(--creta-2);
	color: var(--cerneala-2);
	transition: background-color .4s, color .4s;
}

.builder__badge.is-on {
	background: var(--rubin);
	color: #fff;
}

.builder__msg {
	font-size: .85rem;
	color: var(--cerneala-2);
	min-height: 2.6em;
	margin: 6px 0 14px;
}

.builder__chips {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 22px;
}

.builder__grid .card__add {
	width: auto;
	padding: 0 14px;
	border-radius: 999px;
	font-size: .8rem;
	font-weight: 600;
	gap: 6px;
	display: flex;
}

.builder__grid .card__add:hover {
	transform: scale(1.05);
}

.quiz {
	min-height: 100svh;
	padding: calc(var(--header-h) + 40px) 0 80px;
	display: grid;
	align-items: center;
}

.quiz__step {
	display: none;
}

.quiz__step.is-on {
	display: block;
	animation: fadeup .8s var(--ease) both;
}

@keyframes fadeup {
	from {
		opacity: 0;
		transform: translateY(24px);
	}
}

.quiz__q {
	font: 400 var(--fs-1)/1 var(--ch-font-display);
	letter-spacing: -.025em;
	margin: 18px 0 40px;
	max-width: 18ch;
	text-wrap: balance;
}

.quiz__q em {
	font-style: inherit;
	color: inherit;
}

.quiz__opts {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 12px;
}

.qopt {
	text-align: left;
	padding: 22px;
	border-radius: 22px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	transition: box-shadow .3s, transform .5s var(--ease), background-color .3s;
	min-height: 130px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 18px;
}

.qopt:hover {
	box-shadow: inset 0 0 0 1px var(--ch-text);
	transform: translateY(-3px);
}

.qopt b {
	font: 400 1.5rem/1.1 var(--ch-font-display);
}

.qopt span {
	font-size: .85rem;
	color: var(--ch-text-soft);
}

.quiz__prog {
	display: flex;
	gap: 6px;
	margin-bottom: 8px;
	max-width: 420px;
}

.quiz__prog i {
	height: 3px;
	flex: 1;
	border-radius: 2px;
	background: var(--ch-border);
	transition: background-color .5s;
}

.quiz__prog i.on {
	background: var(--ch-text);
}

.quiz__back {
	margin-top: 30px;
	font-size: .9rem;
	color: var(--ch-text-soft);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.verdict {
	display: grid;
	grid-template-columns: .9fr 1.1fr;
	gap: clamp(30px, 6vw, 90px);
	align-items: center;
}

.verdict__bottle {
	height: min(70vh, 640px);
	display: flex;
	justify-content: center;
	align-items: flex-end;
	position: relative;
}

.verdict__bottle img {
	height: 100%;
	width: auto;
	filter: drop-shadow(0 40px 40px rgba(0, 0, 0, .3));
}

.verdict__why {
	list-style: none;
	padding: 0;
	margin: 20px 0 30px;
	display: grid;
	gap: 8px;
}

.verdict__why li {
	display: flex;
	gap: 10px;
	align-items: baseline;
	color: var(--ch-text-soft);
}

.verdict__why li::before {
	content: '';
	flex: none;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--ch-primary);
	align-self: center;
}

.verdict__actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.verdict__alt {
	margin-top: clamp(50px, 7vw, 90px);
}

.exp {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
}

.exp button {
	text-align: left;
	border-radius: 22px;
	padding: 22px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	min-height: 220px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	transition: box-shadow .3s, background-color .3s, color .3s;
}

.exp button[aria-checked='true'] {
	background: var(--ch-text);
	color: var(--ch-bg);
}

.exp button[aria-checked='true'] .kicker {
	color: inherit;
	opacity: .8;
}

.exp button[aria-checked='true'] p {
	color: inherit;
	opacity: .8;
}

.exp b {
	font: 400 1.5rem/1.05 var(--ch-font-display);
}

.exp p {
	margin: 0;
	font-size: .86rem;
	color: var(--ch-text-soft);
}

.exp small {
	margin-top: auto;
	font-weight: 600;
	font-size: .8rem;
}

.form {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
	margin-top: 30px;
	position: relative;
}

.form label {
	display: grid;
	gap: 6px;
	font-size: .8rem;
	font-weight: 600;
	letter-spacing: .04em;
}

.form input,
.form textarea,
.form select {
	width: 100%;
	min-height: 54px;
	padding: 14px 18px;
	border-radius: 16px;
	border: 0;
	background: var(--ch-glass);
	box-shadow: inset 0 0 0 1px var(--ch-border);
	font-weight: 400;
	font-size: 1rem;
	outline: none;
	transition: box-shadow .3s;
}

.form input:focus,
.form textarea:focus,
.form select:focus {
	box-shadow: inset 0 0 0 2px var(--ch-text);
}

.form .full {
	grid-column: 1 / -1;
}

.form .check {
	display: flex;
	gap: 10px;
	align-items: center;
	font-weight: 500;
	font-size: .92rem;
	letter-spacing: 0;
}

.form .check input {
	width: 20px;
	min-height: 20px;
	accent-color: var(--ch-primary);
	box-shadow: none;
}

.form__ok {
	border-radius: 26px;
	padding: 40px;
	background: var(--ch-text);
	color: var(--ch-bg);
	text-align: center;
}

.form__ok .h2 {
	margin: 10px 0;
}

.form__err {
	color: var(--rubin);
	font-size: .9rem;
	margin: 0;
}

.hp {
	position: absolute;
	left: -9999px;
}

.prose {
	max-width: 720px;
	font-size: 1.08rem;
	line-height: 1.75;
}

.prose h2 {
	font: 400 2.2rem/1.1 var(--ch-font-display);
	margin: 2em 0 .6em;
}

.prose p {
	margin: 0 0 1.2em;
}

.prose blockquote {
	margin: 2em 0;
	padding-left: 24px;
	border-left: 2px solid var(--ch-primary);
	font: italic 400 1.5rem/1.35 var(--ch-font-display);
}

/* WooCommerce: cos / finalizare / cont (blocuri) */
.woo-page {
	padding: calc(var(--header-h) + 50px) 0 120px;
}

.woo-page > .wrap > h1 {
	font: 400 var(--fs-1)/1 var(--ch-font-display);
	margin: 0 0 40px;
}

.woo-page .wc-block-components-button:not(.is-link) {
	border-radius: 999px !important;
	background: var(--cerneala) !important;
	color: var(--creta) !important;
	min-height: 52px;
}

/* Ajustari pentru ecrane mici (320-430 px) */
.pdp__top > *,
.sense__grid > *,
.pair__grid > *,
.tech__grid > *,
.box-tease > *,
.somm-q__grid > *,
.verdict > * {
	min-width: 0;
}

.buy__row .btn {
	white-space: normal;
	text-align: center;
	line-height: 1.2;
	padding: 0 1.1em;
}

.agents .agent {
	min-width: 0;
}

.agents .agent a {
	overflow-wrap: anywhere;
}

/* Responsive */
@media (max-width: 1100px) {
	.mega__in {
		grid-template-columns: 1fr 1fr 1fr;
	}
	.mega__preview {
		display: none;
	}
	.picks .grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.visit__grid {
		grid-template-columns: 1fr 1fr;
	}
	.vcard--big {
		grid-column: 1 / -1;
		grid-row: auto;
		min-height: 420px;
	}
	.vcard--wide {
		grid-column: 1 / -1;
	}
	.exp {
		grid-template-columns: 1fr 1fr;
	}
	.builder {
		grid-template-columns: 1fr;
	}
	.builder__side {
		position: relative;
		top: 0;
	}
	.fpanel.is-open {
		grid-template-columns: 1fr 1fr;
	}
	.rpanel {
		grid-template-columns: 1fr minmax(220px, 32vw) 1fr;
	}
}

@media (max-width: 860px) {
	:root {
		--header-h: 64px;
	}
	body {
		font-size: 16px;
	}
	.hdr {
		grid-template-columns: auto 1fr auto;
		gap: 8px;
	}
	.hdr__nav {
		display: none;
	}
	.hdr__burger {
		display: grid !important;
	}
	.logo {
		align-items: flex-start;
	}
	.logo__word {
		font-size: 1.3rem;
	}
	.hdr__somm,
	.hdr__acct {
		display: none !important;
	}
	.mega {
		inset: var(--header-h) 0 0;
		overflow: auto;
	}
	.mega__in {
		grid-template-columns: 1fr 1fr;
		padding-block: 24px 60px;
	}
	.mega__ranges {
		grid-column: 1 / -1;
	}
	.hero__title {
		margin-top: 0;
	}
	.hero__copy {
		left: var(--gutter);
		right: var(--gutter);
		bottom: 108px;
		max-width: none;
		text-align: center;
	}
	.hero__cta {
		left: var(--gutter);
		right: var(--gutter);
		justify-content: center;
		bottom: 34px;
	}
	.hero__bottles {
		height: 40%;
		bottom: 196px;
	}
	.hero__copy p {
		font-size: .9rem;
	}
	.hero__bottles img:nth-child(1),
	.hero__bottles img:nth-child(3) {
		display: none;
	}
	.hero {
		align-items: start;
		padding-top: calc(var(--header-h) + 36px);
	}
	.manifest__meta {
		grid-template-columns: 1fr 1fr;
		row-gap: 34px;
	}
	.terroir__pin {
		grid-template-columns: 1fr;
		grid-template-rows: auto 1fr;
		align-content: start;
		padding-top: calc(var(--header-h) + 16px);
		gap: 0;
	}
	.js .terroir__steps {
		height: 34vh;
	}
	.tstep .h2 {
		font-size: 2rem;
	}
	.tstep p {
		font-size: .95rem;
	}
	.map {
		height: 54vh;
	}
	.map__photo {
		width: 38%;
	}
	.rpanel {
		grid-template-columns: 1fr;
		grid-template-rows: auto 1fr auto;
		text-align: center;
		padding-bottom: 60px;
		gap: 10px;
	}
	.rpanel__bottle {
		height: 40vh;
	}
	.rpanel__right {
		justify-self: center;
	}
	.rpanel__right p:not(.h3),
	.rpanel__mini {
		display: none;
	}
	.rpanel__right .h3 {
		font-size: 1.15rem;
		margin-bottom: 14px;
	}
	.rpanel__hour {
		font-size: 2.2rem;
	}
	.rpanel__name {
		font-size: 2.6rem;
	}
	.box-tease,
	.somm-q__grid,
	.sense__grid,
	.pair__grid,
	.tech__grid,
	.verdict,
	.sergiu {
		grid-template-columns: 1fr;
	}
	.somm-q__res {
		grid-template-columns: 100px 1fr;
		min-height: 0;
		gap: 16px;
	}
	.somm-q__res img {
		height: 220px;
	}
	.medals__counts {
		grid-template-columns: 1fr 1fr;
	}
	.medals__star {
		grid-template-columns: 1fr;
	}
	.medals__stage {
		max-width: 320px;
		width: 100%;
		margin-inline: auto;
	}
	.medals__list {
		grid-template-columns: 1fr;
	}
	.stores {
		grid-template-columns: 1fr 1fr;
	}
	.store {
		border-right: 0;
		border-bottom: 1px solid var(--ch-border);
		padding: 22px 0 !important;
	}
	.ftr__grid {
		grid-template-columns: 1fr 1fr;
	}
	.club {
		grid-column: 1 / -1;
	}
	.pdp__top {
		grid-template-columns: 1fr;
	}
	.pdp__stage {
		position: relative;
		height: 70svh;
		padding-bottom: 5svh;
	}
	.pdp__shadow {
		bottom: 3.5svh;
	}
	.pdp__bottle {
		height: 56svh;
		width: 86%;
	}
	.pdp__info {
		padding: 10px var(--gutter) 50px;
	}
	.pdp__crumbs {
		display: none;
	}
	.pdp__sticky b {
		display: none;
	}
	.verdict__bottle {
		height: 46vh;
	}
	.form {
		grid-template-columns: 1fr;
	}
	.dayclock__lbl {
		display: none;
	}
}

@media (max-width: 520px) {
	.grid.agents {
		grid-template-columns: 1fr;
	}
	.buy__row .qty {
		flex: none;
	}
	.picks .grid,
	.grid {
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}
	.card__body {
		padding: 2px 12px 14px;
	}
	.card__name {
		font-size: 1.08rem;
	}
	.card__add {
		width: 38px;
		height: 38px;
	}
	.card__medal {
		width: 28px;
		height: 28px;
		top: 10px;
		left: 10px;
	}
	.card__flag {
		top: 10px;
		right: 10px;
	}
	.stores {
		grid-template-columns: 1fr;
	}
	.visit__grid {
		grid-template-columns: 1fr;
	}
	.exp {
		grid-template-columns: 1fr;
	}
	.exp button {
		min-height: 0;
	}
	.serve {
		grid-template-columns: 1fr 1fr;
	}
	.serve > div:last-child {
		grid-column: 1 / -1;
	}
	.buy__opts {
		grid-template-columns: 1fr;
	}
	.fpanel.is-open {
		grid-template-columns: 1fr;
	}
	.spec {
		grid-template-columns: 1fr;
	}
	.hero__cta .btn {
		padding: 0 1.1em;
		font-size: .88rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
	.manifest__txt .w {
		color: var(--ch-text);
	}
}

@view-transition {
	navigation: auto;
}

::view-transition-group(*) {
	animation-duration: .55s;
	animation-timing-function: cubic-bezier(.22, 1, .36, 1);
}

::view-transition-old(root) {
	animation: vt-out .28s cubic-bezier(.55, 0, 1, .45) both;
}

::view-transition-new(root) {
	animation: vt-in .45s cubic-bezier(.16, 1, .3, 1) .08s both;
}

@keyframes vt-out {
	to {
		opacity: 0;
	}
}

@keyframes vt-in {
	from {
		opacity: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	@view-transition {
		navigation: none;
	}
}

.btn,
.chip,
.link-arrow,
.card__price,
.card__meta,
.card__range,
.card__flag,
.hdr__nav,
.hdr__tools,
.mega .mega__h,
.mega__col a,
.filters,
.fpanel,
.shop-count,
.buy,
.buy__opt,
.qty,
.drawer__row,
.drawer__note,
.line__price,
.line__range,
.box6,
.ship,
.form label,
.form input,
.form select,
.form textarea,
.tier span,
.stat__l,
.scale,
.serve span,
.spec dt,
.pdp__sub,
.dayclock,
.toast,
.cart-count,
.club input,
.ftr h4,
.ftr__h,
.ftr__legal,
.builder__meter,
.builder__badge,
.quiz__prog,
.qopt span,
.exp small,
.store a,
.mbadge,
.medals__list,
.card__medal,
.rpanel__right .btn,
.gate__no,
input,
select,
textarea,
button {
	font-family: var(--ch-font-ui);
}

.kicker {
	font-family: var(--ch-font-text);
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	font-size: .8rem;
}

.lead,
.prose,
.tstep p,
.pdp__info p,
.rpanel__right p,
.soi p,
.store p,
.vcard p {
	font-family: var(--ch-font-text);
}

.lead {
	font-size: var(--fs-lead);
}

/* Logo oficial (SVG din ghid). Nu se rescrie cu alt font, nu se recoloreaza pe bucati, pastreaza marginea de siguranta = inaltimea lui H. */
.logo {
	display: block;
	color: currentColor;
	line-height: 0;
	padding: 6px 0;
}

.logo svg {
	height: 46px;
	width: auto;
	overflow: visible;
}

.admin-bar .hdr {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar .hdr {
		top: 46px;
	}
}

.logo__h {
	display: none;
}

.brand-lockup {
	display: block;
	color: currentColor;
}

.brand-lockup svg {
	width: 100%;
	height: auto;
}

.hero__tag {
	display: block;
	margin: 0 0 clamp(12px, 1.6vw, 20px);
	font: 600 clamp(.8rem, 1.1vw, 1rem)/1 var(--ch-font-text);
	letter-spacing: .5em;
	margin-right: -.5em;
	text-transform: uppercase;
	color: var(--cerise);
}

.ftr__brand {
	width: min(320px, 70%);
	color: var(--rose-quartz);
	margin-bottom: clamp(36px, 5vw, 60px);
}

.gate__card .brand-lockup {
	width: 210px;
	margin: 0 auto 22px;
	color: var(--purple);
}

.gate__card {
	background: #FBEDED;
}

@media (max-width: 860px) {
	.logo__word-svg {
		display: none;
	}
	.logo__h {
		display: block;
	}
	.logo svg {
		height: 40px;
	}
}

.crate-logo {
	display: block;
	width: 46%;
	max-width: 260px;
	color: rgba(80, 31, 95, .55);
	line-height: 0;
}

.crate__front .crate-logo {
	width: 54%;
}

.box-visual__crate span.crate-logo {
	font-size: 0;
	letter-spacing: 0;
}

/* Manualul de brand, "Grosime logo": sub 75 px inaltime se adauga un contur de 0,75; la 125-150 px, 0,25-0,5 */
.logo svg path,
.crate-logo svg path {
	stroke: currentColor;
	stroke-width: .75px;
	vector-effect: non-scaling-stroke;
	paint-order: stroke;
}

.ftr__brand svg path,
.gate__card .brand-lockup svg path {
	stroke: currentColor;
	stroke-width: .4px;
	vector-effect: non-scaling-stroke;
}

.logo__h svg path {
	stroke: none;
}

.prose h3 {
	font: 600 1.15rem/1.3 var(--ch-font-ui);
	margin: 1.8em 0 .5em;
}

:root {
	--fs-display: clamp(3.1rem, 8.6vw, 9.2rem);
	--fs-1: clamp(2.7rem, 6.8vw, 7rem);
	--fs-num: clamp(3.6rem, 10vw, 10rem);
	--col-gap: clamp(16px, 2.4vw, 40px);
}

/* Textura sidefata din manual (hartia "Manter"): reflexe perlate + granulatie fina, sub continut */
.pearl {
	position: relative;
	isolation: isolate;
}

.pearl::before,
.pearl::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
}

.pearl::before {
	background: radial-gradient(55% 60% at 14% 18%, rgba(255, 255, 255, .7), transparent 70%), radial-gradient(40% 45% at 86% 22%, color-mix(in oklab, var(--peacock) 26%, transparent), transparent 72%), radial-gradient(50% 50% at 70% 92%, color-mix(in oklab, var(--coral) 24%, transparent), transparent 72%), radial-gradient(38% 42% at 34% 78%, rgba(201, 182, 242, .45), transparent 72%);
	mix-blend-mode: soft-light;
}

.pearl::after {
	opacity: .07;
	mix-blend-mode: multiply;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .3 0 0 0 0 .12 0 0 0 0 .37 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

[class*='tone-'].pearl::after {
	mix-blend-mode: overlay;
	opacity: .12;
}

/* Utilitare editoriale */
.ed {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--col-gap);
}

.pull {
	margin: 0;
	font: italic 400 clamp(1.6rem, 2.9vw, 2.7rem)/1.16 var(--ch-font-display);
	letter-spacing: -.012em;
	text-wrap: balance;
	color: var(--ch-text);
}

.pull cite {
	display: block;
	margin-top: 18px;
	font: 600 .8rem/1.3 var(--ch-font-text);
	font-style: normal;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--ch-text-soft);
}

.rule {
	height: 1px;
	border: 0;
	margin: 0;
	background: var(--ch-border);
}

/* Hero editorial: titlu mare pe 8 coloane, text sau date pe dreapta, aliniate jos */
.page-hero--ed {
	padding-bottom: clamp(50px, 7vw, 100px);
}

.page-hero--ed .wrap {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--col-gap);
	align-items: end;
}

.page-hero--ed .kicker {
	grid-column: 1 / -1;
}

.page-hero--ed .h1 {
	grid-column: 1 / span 8;
	font-size: var(--fs-display);
	line-height: .9;
	letter-spacing: -.035em;
	max-width: 12ch;
	margin-bottom: 0;
}

.page-hero--ed .h1--long {
	font-size: var(--fs-2);
	line-height: 1.02;
	max-width: 22ch;
	letter-spacing: -.02em;
}

.page-hero--ed .ph__aside {
	grid-column: 9 / -1;
	padding-bottom: .5em;
}

.page-hero--ed .ph__aside .lead {
	max-width: none;
}

.ph__links {
	display: grid;
	gap: 6px;
	margin-top: 22px;
	font: 600 1.05rem/1.3 var(--ch-font-ui);
}

.ph__links a {
	width: fit-content;
	background: linear-gradient(currentColor, currentColor) 0 100% / 0 1px no-repeat;
	transition: background-size .5s var(--ease);
}

.ph__links a:hover {
	background-size: 100% 1px;
}

/* Povestea */
.bento {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 12px;
	margin: 22px 0 0;
}

.bento > div {
	grid-column: span var(--s, 4);
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-height: 170px;
	padding: clamp(20px, 2.4vw, 32px);
	border-radius: var(--r);
	background: var(--ch-glass);
	box-shadow: inset 0 0 0 1px var(--ch-border);
}

.bento > div[class*='tone-'] {
	background: var(--ch-bg);
	color: var(--ch-text);
	box-shadow: none;
}

.bento dt {
	font: 600 .74rem/1.2 var(--ch-font-text);
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--ch-text-soft);
}

.bento dd {
	margin: auto 0 0;
	font: 400 clamp(1.2rem, 1.7vw, 1.6rem)/1.22 var(--ch-font-display);
	text-wrap: pretty;
}

.bento dd b {
	display: block;
	font-weight: 400;
	font-size: var(--fs-num);
	line-height: .82;
	letter-spacing: -.05em;
	margin-bottom: 14px;
}

.bento--num dd {
	font-size: 1.15rem;
}

.ed-split {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--col-gap);
	row-gap: 28px;
	align-items: center;
}

.ed-split > :first-child {
	grid-column: 1 / span 7;
}

.ed-split > :last-child {
	grid-column: 9 / -1;
}

.ed-split--rev > :first-child {
	grid-column: 6 / -1;
	order: 2;
}

.ed-split--rev > :last-child {
	grid-column: 1 / span 5;
	order: 1;
}

.ed-split img {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	border-radius: var(--r);
}

.ed-split .muted {
	margin-top: 22px;
	max-width: 42ch;
}

.ranges-ed {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.ranges-ed .soi {
	min-height: 340px;
	position: relative;
}

/* Medalii: grafic pe ani + cronologie desenata */
.page-hero--ed .medals__counts {
	grid-template-columns: 1fr 1fr;
	gap: 22px 18px;
	margin: 0;
}

.mchart {
	padding-block: clamp(40px, 6vw, 80px) 10px;
}

.mchart ol {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(0, 1fr);
	gap: clamp(8px, 1.4vw, 20px);
	align-items: end;
	height: clamp(180px, 24vw, 300px);
	border-bottom: 1px solid var(--ch-border);
}

.mchart li {
	height: 100%;
}

.mchart a {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 10px;
	border-radius: 12px;
}

.mchart__bar {
	display: flex;
	flex-direction: column-reverse;
	width: min(100%, 72px);
	height: calc(var(--n) / var(--max) * 78%);
	border-radius: 10px 10px 2px 2px;
	overflow: hidden;
	transform-origin: bottom;
	transition: transform .6s var(--ease), filter .4s;
}

.mchart__bar i {
	display: block;
	width: 100%;
}

.mchart__bar i + i {
	border-bottom: 2px solid var(--ch-bg);
}

.mchart i.aur {
	background: var(--foil-gold);
}

.mchart i.argint {
	background: var(--foil-silver);
}

.mchart i.bronz {
	background: var(--foil-copper);
}

.mchart i.rating {
	background: var(--foil-holo);
}

.mchart__l {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 6px;
	padding-bottom: 12px;
	font: 500 .85rem/1 var(--ch-font-ui);
	font-variant-numeric: tabular-nums;
}

.mchart__l b {
	font: 400 clamp(1.1rem, 1.8vw, 1.6rem)/1 var(--ch-font-display);
}

.mchart__l span {
	color: var(--ch-text-soft);
}

.mchart a:hover .mchart__bar {
	transform: scaleY(1.04);
	filter: brightness(1.06);
}

.mchart__legend {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
	font: 500 .85rem/1 var(--ch-font-ui);
	color: var(--ch-text-soft);
}

.mchart__legend i {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	margin-right: 8px;
	vertical-align: -1px;
}

.tl {
	padding-block: clamp(30px, 5vw, 70px) clamp(80px, 10vw, 140px);
}

.tl__year {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: var(--col-gap);
	padding-top: clamp(36px, 5vw, 70px);
	scroll-margin-top: calc(var(--header-h) + 20px);
}

.tl__head {
	grid-column: 1 / span 4;
	align-self: start;
	position: sticky;
	top: calc(var(--header-h) + 28px);
}

.tl__an {
	margin: 0;
	font: 400 var(--fs-num)/.8 var(--ch-font-display);
	letter-spacing: -.05em;
	font-variant-numeric: lining-nums;
}

.tl__sum {
	margin: 18px 0 0;
	font: 500 .9rem/1.5 var(--ch-font-ui);
	color: var(--ch-text-soft);
}

.tl__list {
	grid-column: 5 / -1;
	list-style: none;
	margin: 0;
	padding: 0 0 0 clamp(26px, 3vw, 46px);
	position: relative;
}

.tl__list::before,
.tl__list::after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 1px;
	background: var(--ch-border);
}

.tl__list::after {
	width: 2px;
	left: -.5px;
	background: linear-gradient(var(--ch-primary), color-mix(in oklab, var(--ch-primary) 40%, var(--coral)));
	transform-origin: top;
}

.tl__m {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 4px 20px;
	align-items: baseline;
	padding: 16px 0 18px;
	border-bottom: 1px solid var(--ch-border);
}

.tl__m i {
	position: absolute;
	top: 22px;
	left: calc(-1 * clamp(26px, 3vw, 46px) - 7px);
	width: 14px;
	height: 14px;
	border-radius: 50%;
	box-shadow: 0 0 0 4px var(--ch-bg), 0 4px 10px rgba(37, 15, 44, .18);
	z-index: 1;
}

.tl__m i.aur {
	background: var(--foil-gold);
}

.tl__m i.argint {
	background: var(--foil-silver);
}

.tl__m i.bronz {
	background: var(--foil-copper);
}

.tl__m i.rating {
	background: var(--foil-holo);
}

.tl__m b {
	font: 600 .95rem/1.3 var(--ch-font-ui);
}

.tl__m span {
	grid-column: 1;
	font: 400 clamp(1.15rem, 1.5vw, 1.4rem)/1.25 var(--ch-font-display);
}

.tl__m em {
	grid-column: 2;
	grid-row: 1 / span 2;
	align-self: center;
	font: 600 .74rem/1 var(--ch-font-text);
	font-style: normal;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--ch-text-soft);
}

@supports (animation-timeline: view()) {
	@media (prefers-reduced-motion: no-preference) {
		.tl__list::after {
			animation: hz-draw linear both;
			animation-timeline: view();
			animation-range: entry 20% cover 55%;
		}
	}
}

@keyframes hz-draw {
	from {
		transform: scaleY(0);
	}
	to {
		transform: scaleY(1);
	}
}

/* Soiuri: index + capitole */
.soi-index {
	grid-column: 1 / -1;
	margin-top: clamp(40px, 6vw, 80px);
}

.soi-index ol {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--ch-border);
}

.soi-index li {
	border-bottom: 1px solid var(--ch-border);
}

.soi-index a {
	display: grid;
	grid-template-columns: 34px 18px minmax(0, 1fr);
	align-items: center;
	gap: 14px;
	padding: 18px 14px 18px 0;
	transition: padding .5s var(--ease), color .3s;
}

.soi-index a:hover {
	padding-left: 10px;
	color: var(--ch-primary);
}

.soi-index b {
	font: 400 clamp(1.15rem, 1.6vw, 1.5rem)/1.15 var(--ch-font-display);
}

.soi-index small {
	display: block;
	margin-top: 3px;
	font: 500 .8rem/1.3 var(--ch-font-ui);
	color: var(--ch-text-soft);
}

.soi-index .sw {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: var(--ch-bg);
	box-shadow: inset 0 0 0 1px var(--ch-border), 0 0 0 3px color-mix(in oklab, var(--ch-primary) 30%, transparent);
}

.soi-ed {
	padding-block: clamp(70px, 10vw, 140px);
	background: var(--ch-bg);
	scroll-margin-top: var(--header-h);
}

.soi-ed__grid {
	row-gap: clamp(28px, 4vw, 56px);
}

.soi-ed__head {
	grid-column: 1 / span 5;
}

.soi-ed__head .h1 {
	margin: 12px 0 22px;
}

.soi-ed__fact {
	margin: 0;
	max-width: 34ch;
	font-size: var(--fs-lead);
	line-height: 1.5;
	color: var(--ch-text-soft);
}

.soi-ed__body {
	grid-column: 7 / -1;
	display: grid;
	gap: clamp(28px, 3vw, 44px);
	align-content: start;
	padding-top: clamp(0px, 4vw, 60px);
}

.soi-ed.is-alt .soi-ed__head {
	grid-column: 8 / -1;
	grid-row: 1;
}

.soi-ed.is-alt .soi-ed__body {
	grid-column: 1 / span 6;
	grid-row: 1;
}

.soi-ed__wines {
	grid-column: 1 / -1;
}

.soi-ed__wines-h {
	display: flex;
	justify-content: space-between;
	align-items: end;
	gap: 20px;
	flex-wrap: wrap;
	margin-bottom: 20px;
	padding-top: 22px;
	border-top: 1px solid var(--ch-border);
}

.soi-ed__wines .grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* Contact */
.contact-hq {
	padding-block: clamp(70px, 9vw, 120px);
}

.contact-hq > div:first-child {
	grid-column: 1 / span 5;
}

.contact-hq .spec {
	grid-column: 7 / -1;
}

/* Pagini legale si informative: cuprins lipicios */
.legal {
	padding-bottom: clamp(80px, 10vw, 140px);
}

.legal .ed {
	align-items: start;
}

.toc {
	grid-column: 1 / span 4;
	position: sticky;
	top: calc(var(--header-h) + 28px);
	max-height: calc(100svh - var(--header-h) - 56px);
	overflow: auto;
	padding-right: 10px;
	scrollbar-width: thin;
}

.toc p {
	margin: 0 0 14px;
	font: 600 .74rem/1.2 var(--ch-font-text);
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--ch-text-soft);
}

.toc ol {
	list-style: none;
	margin: 0;
	padding: 0;
	border-left: 1px solid var(--ch-border);
}

.toc a {
	display: block;
	padding: 7px 0 7px 18px;
	margin-left: -1px;
	border-left: 2px solid transparent;
	font: 500 .9rem/1.35 var(--ch-font-ui);
	color: var(--ch-text-soft);
	transition: color .3s, border-color .3s;
}

.toc a:hover {
	color: var(--ch-text);
}

.toc a[aria-current='true'] {
	color: var(--ch-text);
	border-left-color: var(--ch-primary);
}

.legal .prose {
	grid-column: 6 / -1;
	max-width: 70ch;
}

.legal--plain .prose {
	grid-column: 3 / span 8;
}

.legal .prose h2,
.legal .prose h3 {
	scroll-margin-top: calc(var(--header-h) + 24px);
}

.legal .prose h2 {
	font-size: clamp(1.6rem, 2.4vw, 2.2rem);
}

.legal .prose h3 {
	font: 400 clamp(1.3rem, 1.8vw, 1.6rem)/1.2 var(--ch-font-display);
	margin: 1.9em 0 .55em;
}

.legal .prose > :first-child {
	margin-top: 0;
}

@media (max-width: 1000px) {
	.page-hero--ed .h1 {
		grid-column: 1 / -1;
	}
	.page-hero--ed .ph__aside {
		grid-column: 1 / -1;
		margin-top: 30px;
	}
	.ed-split > :first-child,
	.ed-split > :last-child,
	.ed-split--rev > :first-child,
	.ed-split--rev > :last-child {
		grid-column: 1 / -1;
		order: 0;
	}
	.tl__head {
		grid-column: 1 / -1;
		position: static;
		margin-bottom: 20px;
	}
	.tl__list {
		grid-column: 1 / -1;
	}
	.soi-index ol {
		grid-template-columns: 1fr 1fr;
	}
	.soi-ed__head,
	.soi-ed__body,
	.soi-ed.is-alt .soi-ed__head,
	.soi-ed.is-alt .soi-ed__body {
		grid-column: 1 / -1;
		grid-row: auto;
		padding-top: 0;
	}
	.soi-ed__wines .grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.contact-hq > div:first-child,
	.contact-hq .spec {
		grid-column: 1 / -1;
	}
	.contact-hq .spec {
		margin-top: 30px;
	}
	.toc {
		grid-column: 1 / -1;
		position: static;
		max-height: none;
		margin-bottom: 36px;
	}
	.toc ol {
		columns: 2;
		column-gap: 24px;
	}
	.toc li {
		break-inside: avoid;
	}
	.legal .prose,
	.legal--plain .prose {
		grid-column: 1 / -1;
	}
	.bento > div {
		grid-column: span 6;
	}
	.ranges-ed {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 640px) {
	.bento > div {
		grid-column: 1 / -1;
		min-height: 0;
	}
	.ranges-ed {
		grid-template-columns: 1fr;
	}
	.ranges-ed .soi {
		min-height: 280px;
	}
	.soi-index ol {
		grid-template-columns: 1fr;
	}
	.toc ol {
		columns: 1;
	}
	.mchart__l {
		flex-direction: column;
		align-items: start;
	}
	.mchart__l span {
		font-size: .72rem;
	}
}

/* Intro, micro-interactiuni, tranzitii intre pagini */

.curtain {
	display: none;
}

.intro .curtain {
	display: grid;
	place-items: center;
	position: fixed;
	inset: 0;
	z-index: 300;
	pointer-events: none;
	background: var(--creta);
	animation: hz-curtain .95s var(--ease-io) 1.15s forwards;
}

.curtain__mark {
	width: clamp(84px, 10vw, 120px);
	animation: hz-mark .55s var(--ease-io) 1.05s forwards;
}

.curtain .eclipse__rays {
	transform-origin: 100px 100px;
	animation: hz-rays 1.4s var(--ease) both;
}

.curtain .eclipse__sun {
	transform-origin: 100px 100px;
	animation: hz-sun 1.1s var(--ease) both;
}

.curtain .eclipse__shadow {
	fill: var(--creta);
	animation: hz-moon 1.1s var(--ease-io) .1s both;
}

@keyframes hz-curtain {
	to {
		clip-path: inset(0 0 100% 0);
		visibility: hidden;
	}
}

@keyframes hz-mark {
	to {
		transform: translateY(-40px) scale(.86);
		opacity: 0;
	}
}

@keyframes hz-rays {
	from {
		transform: rotate(-60deg) scale(.5);
		opacity: 0;
	}
}

@keyframes hz-sun {
	from {
		transform: scale(.6);
	}
}

@keyframes hz-moon {
	from {
		transform: translate(64px, -46px);
	}
}

/* Butoane magnetice: main.js scrie --mx / --my doar pentru mouse */
.btn,
.card__add {
	translate: var(--mx, 0) var(--my, 0);
}

.btn {
	transition: transform .5s var(--ease), translate .6s var(--ease), background-color .3s, color .3s, box-shadow .5s var(--ease);
}

.card__add {
	transition: transform .5s var(--ease), translate .6s var(--ease), background-color .3s, color .3s;
}

/* Linkuri in text: subliniere care se retrage spre dreapta la hover */
.prose a,
.acc__body a {
	color: var(--ch-text);
	text-decoration: none;
	background: linear-gradient(var(--ch-primary), var(--ch-primary)) 100% 100% / 100% 1px no-repeat;
	transition: background-size .5s var(--ease), color .3s;
}

.prose a:hover,
.acc__body a:hover {
	background-size: 0 1px;
	color: var(--ch-primary);
}

/* Tranzitii intre pagini: headerul ramane pe loc, pagina noua urca peste cea veche */
.hdr {
	view-transition-name: hdr;
}

::view-transition-group(hdr) {
	animation-duration: .4s;
}

::view-transition-old(root) {
	animation: vt-out .7s cubic-bezier(.65, 0, .35, 1) both;
}

::view-transition-new(root) {
	animation: vt-in .75s cubic-bezier(.22, 1, .36, 1) .05s both;
}

@keyframes vt-out {
	to {
		opacity: .35;
		transform: translateY(-3%) scale(.985);
	}
}

@keyframes vt-in {
	from {
		clip-path: inset(100% 0 0 0);
		transform: translateY(5%);
	}
	to {
		clip-path: inset(0);
		transform: none;
	}
}

/* Contrast AA pe Rose Quartz: textul secundar are nevoie de mai multa cerneala (~5,3:1) */
.tone-rose {
	--ch-text-soft: color-mix(in oklab, var(--ch-text) 72%, var(--ch-bg));
}

/* Contul clientului (/contul-meu/): Pivnita, comenzi, facturi, adrese, Clubul, La Domenii, intrarea in cont */
.acct-page {
	padding-top: var(--header-h);
	min-height: 70vh;
}

.acct-page > .woocommerce > .woocommerce-notices-wrapper:empty {
	display: none;
}

.acct-page .woocommerce-message,
.acct-page .woocommerce-error,
.acct-page .woocommerce-info {
	width: min(100% - 2 * var(--gutter), var(--max));
	margin: 18px auto 0;
	list-style: none;
	padding: 16px 22px;
	border-radius: 18px;
	background: var(--ch-glass);
	box-shadow: inset 0 0 0 1px var(--ch-border);
	font-size: .95rem;
	display: flex;
	gap: 14px;
	align-items: center;
	flex-wrap: wrap;
}

.acct-page .woocommerce-error {
	box-shadow: inset 0 0 0 1px color-mix(in oklab, var(--rubin) 50%, transparent);
	color: var(--rubin);
}

.acct-page .woocommerce-message .button,
.acct-page .woocommerce-info .button {
	margin-left: auto;
	font-weight: 600;
	text-decoration: underline;
}

/* bara de sectiuni */
.acct-nav {
	position: sticky;
	top: 0;
	z-index: 30;
	background: color-mix(in oklab, var(--ch-bg) 86%, transparent);
	backdrop-filter: blur(16px) saturate(1.3);
	-webkit-backdrop-filter: blur(16px) saturate(1.3);
	border-bottom: 1px solid var(--ch-border);
	transition: top .6s var(--ease);
}

body.hdr-shown .acct-nav {
	top: var(--header-h);
}

.acct-nav__in {
	display: flex;
	align-items: center;
	gap: 18px;
}

.acct-nav ul {
	display: flex;
	gap: clamp(14px, 2.4vw, 34px);
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	scrollbar-width: none;
	flex: 1;
}

.acct-nav ul::-webkit-scrollbar {
	display: none;
}

.acct-nav a {
	position: relative;
	display: block;
	padding: 18px 0 16px;
	font: 500 .95rem/1 var(--ch-font-ui);
	white-space: nowrap;
	color: var(--ch-text-soft);
	transition: color .3s;
}

.acct-nav a:hover,
.acct-nav a[aria-current] {
	color: var(--ch-text);
}

.acct-nav ul a::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1px;
	height: 2px;
	background: var(--ch-primary);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .5s var(--ease);
}

.acct-nav ul a[aria-current]::after {
	transform: none;
}

.acct-nav__out {
	font-size: .85rem !important;
	flex: none;
}

/* titlul sectiunilor */
.acct-h {
	padding-block: clamp(40px, 6vw, 84px) clamp(24px, 3vw, 40px);
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: end;
	gap: 10px 30px;
}

.acct-h .kicker {
	grid-column: 1 / -1;
}

.acct-h .kicker a {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.acct-h__t {
	font: 400 var(--fs-1)/.92 var(--ch-font-display);
	letter-spacing: -.03em;
	margin: 0;
}

.acct-h__act {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin: 0;
}

.acct__body > .wrap:last-child,
.acct__body > div:last-child {
	padding-bottom: clamp(80px, 10vw, 140px);
}

/* carti */
.acard {
	position: relative;
	border-radius: 28px;
	padding: clamp(22px, 2.8vw, 38px);
	background: color-mix(in oklab, var(--ch-light) 55%, transparent);
	box-shadow: inset 0 0 0 1px var(--ch-border);
	min-width: 0;
}

.acard--soft {
	background: transparent;
}

.acard--ink {
	--ch-bg: var(--cerneala);
	--ch-text: var(--creta);
	--ch-border: rgba(246, 225, 225, .16);
	--ch-glass: rgba(246, 225, 225, .06);
	--ch-text-soft: color-mix(in oklab, var(--creta) 72%, var(--cerneala));
	--ch-primary: #E2BE6A;
	background: var(--ch-bg);
	color: var(--ch-text);
	box-shadow: none;
}

.acard__h {
	font: 400 clamp(1.8rem, 2.6vw, 2.6rem)/1 var(--ch-font-display);
	letter-spacing: -.02em;
	margin: 8px 0 18px;
}

.acard__h--s {
	font-size: 1.6rem;
	margin: 4px 0 12px;
}

.acard__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 16px 30px;
	flex-wrap: wrap;
	margin-bottom: 18px;
}

.acard__head .acard__h {
	margin-bottom: 0;
}

.acard__head > .muted {
	max-width: 46ch;
	margin: 0;
}

.acard__links {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin: 0;
}

.acard__foot {
	font-size: .85rem;
	margin: 18px 0 0;
}

.acard address {
	font-style: normal;
	line-height: 1.6;
	margin-bottom: 14px;
}

.acard.is-flash {
	animation: hz-flash 1.4s var(--ease);
}

@keyframes hz-flash {
	30% {
		box-shadow: inset 0 0 0 2px var(--ch-primary);
	}
}

.acct-empty {
	padding: clamp(40px, 6vw, 80px);
	border-radius: 28px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	text-align: center;
	display: grid;
	justify-items: center;
	gap: 4px;
}

.acct-empty--s {
	padding: 30px;
	text-align: left;
	justify-items: start;
}

.acct-empty__t {
	font: 400 clamp(1.8rem, 3vw, 2.8rem)/1 var(--ch-font-display);
	margin: 0 0 6px;
}

.acct-empty .muted {
	max-width: 48ch;
}

.acct-empty p:last-child {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: center;
}

.pill {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	min-height: 30px;
	padding: 0 .9em;
	border-radius: 999px;
	font: 600 .78rem/1 var(--ch-font-ui);
	letter-spacing: .01em;
	white-space: nowrap;
}

.pill::before {
	content: '';
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: currentColor;
}

.pill--go {
	background: color-mix(in oklab, var(--peacock) 16%, transparent);
	color: #00707C;
}

.pill--ok {
	background: color-mix(in oklab, var(--emerald) 16%, transparent);
	color: var(--meadow);
}

.pill--wait {
	background: color-mix(in oklab, var(--coral) 20%, transparent);
	color: #9A3B14;
}

.pill--off {
	background: color-mix(in oklab, var(--ch-text) 8%, transparent);
	color: var(--ch-text-soft);
}

.pill--off::before {
	background: transparent;
	box-shadow: inset 0 0 0 1.5px currentColor;
}

.pill--go::before {
	animation: hz-pulse 1.8s infinite;
}

.acard--ink .pill--ok {
	color: #6FE3BF;
}

.acard--ink .pill--wait {
	color: #F7B08F;
}

.acard--ink .pill--go {
	color: #6FDCE6;
}

@keyframes hz-pulse {
	50% {
		opacity: .25;
	}
}

.seg {
	display: inline-flex;
	padding: 4px;
	border-radius: 999px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	gap: 2px;
}

.seg button {
	min-height: 40px;
	padding: 0 1.1em;
	border-radius: 999px;
	font: 500 .9rem/1 var(--ch-font-ui);
	color: var(--ch-text-soft);
	transition: background-color .3s, color .3s;
}

.seg button[aria-pressed='true'],
.seg button[aria-selected='true'] {
	background: var(--ch-text);
	color: var(--ch-bg);
}

.chip--quiet {
	box-shadow: none;
	color: var(--ch-text-soft);
}

button.chip,
a.chip {
	cursor: pointer;
}

button.chip[disabled] {
	opacity: .5;
}

/* Pivnita */
.cellar {
	--ch-bg: var(--purple-3);
	--ch-text: var(--creta);
	--ch-text-soft: color-mix(in oklab, var(--creta) 74%, var(--purple-3));
	--ch-border: rgba(246, 225, 225, .14);
	--ch-primary: #E2BE6A;
	position: relative;
	overflow: hidden;
	color: var(--ch-text);
	background: radial-gradient(120% 90% at 78% 110%, #5A2A6C 0%, var(--purple-3) 46%, var(--purple-4) 100%);
}

.cellar::after {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: radial-gradient(40% 50% at 72% 30%, rgba(226, 190, 106, .14), transparent 70%);
}

.cellar__in {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: clamp(30px, 5vw, 80px);
	align-items: end;
	padding-block: clamp(50px, 7vw, 100px) clamp(40px, 5vw, 70px);
}

.cellar__hello {
	font: 500 1rem/1.3 var(--ch-font-ui);
	color: var(--ch-primary);
	margin: 0 0 14px;
}

.cellar__h {
	font: 400 var(--fs-display)/.86 var(--ch-font-display);
	letter-spacing: -.04em;
	margin: 0 0 24px;
}

.cellar .lead {
	max-width: 40ch;
}

.cellar .lead b {
	color: var(--ch-text);
	font-weight: 600;
}

.cellar__stats {
	display: grid;
	grid-template-columns: repeat(4, auto);
	justify-content: start;
	gap: 18px clamp(22px, 3vw, 46px);
	margin: clamp(28px, 4vw, 48px) 0 0;
}

.cellar__stats div {
	display: flex;
	flex-direction: column-reverse;
	gap: 6px;
}

.cellar__stats dt {
	font: 500 .8rem/1.2 var(--ch-font-ui);
	color: var(--ch-text-soft);
}

.cellar__stats dd {
	margin: 0;
	font: 400 clamp(2.4rem, 4vw, 3.6rem)/.9 var(--ch-font-display);
}

.cellar__stats .cellar__lv {
	font-style: italic;
	color: var(--ch-primary);
}

.rack {
	position: relative;
	padding-bottom: 26px;
}

.rack::before {
	content: '';
	position: absolute;
	left: -4%;
	right: -4%;
	bottom: 18px;
	height: 2px;
	background: linear-gradient(90deg, transparent, rgba(226, 190, 106, .75) 18%, rgba(243, 221, 142, .95) 50%, rgba(226, 190, 106, .75) 82%, transparent);
	box-shadow: 0 8px 28px 4px rgba(226, 190, 106, .18);
}

.rack__row {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.rack__row li {
	flex: 0 1 112px;
	min-width: 0;
	margin-inline: -10px;
	position: relative;
}

.rack__row li:nth-child(n+8) {
	display: none;
}

.rack__row a {
	position: relative;
	display: block;
	padding-bottom: 8px;
	transition: transform .6s var(--ease);
}

.rack__row a::before {
	content: '';
	position: absolute;
	left: 10%;
	right: 10%;
	bottom: 14%;
	height: 55%;
	border-radius: 50%;
	background: var(--ch-primary);
	opacity: .0;
	filter: blur(30px);
	transition: opacity .6s;
}

.rack__row a:hover,
.rack__row a:focus-visible {
	transform: translateY(-14px);
}

.rack__row a:hover::before {
	opacity: .45;
}

.rack__row img {
	position: relative;
	display: block;
	width: 100%;
	height: clamp(220px, 26vw, 360px);
	object-fit: contain;
	object-position: bottom;
	filter: drop-shadow(0 18px 22px rgba(0, 0, 0, .45));
}

.rack__q {
	position: absolute;
	left: 50%;
	bottom: -24px;
	transform: translateX(-50%);
	font: 600 .75rem/1 var(--ch-font-ui);
	padding: 5px 8px;
	border-radius: 999px;
	background: rgba(246, 225, 225, .1);
	color: var(--creta);
	backdrop-filter: blur(8px);
}

.rack__more {
	text-align: center;
	font-size: .85rem;
	color: var(--ch-text-soft);
	margin: 34px 0 0;
}

.rack__more a {
	text-decoration: underline;
}

.rack__ghosts {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap: 14px;
	height: clamp(220px, 24vw, 320px);
}

.rack__ghosts span {
	width: 54px;
	height: 82%;
	border-radius: 16px 16px 10px 10px / 46% 46% 10px 10px;
	box-shadow: inset 0 0 0 1.5px rgba(246, 225, 225, .22);
	position: relative;
}

.rack__ghosts span::before {
	content: '';
	position: absolute;
	left: 50%;
	top: -18%;
	width: 18px;
	height: 22%;
	transform: translateX(-50%);
	border-radius: 6px 6px 0 0;
	box-shadow: inset 0 0 0 1.5px rgba(246, 225, 225, .22);
}

.rack__ghosts span:nth-child(2),
.rack__ghosts span:nth-child(4) {
	height: 72%;
}

.rack__cta {
	display: flex;
	gap: 10px;
	justify-content: center;
	flex-wrap: wrap;
	margin: 40px 0 0;
}

.acct-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: clamp(14px, 1.6vw, 22px);
	padding-block: clamp(30px, 4vw, 56px) clamp(80px, 10vw, 140px);
}

.acct-grid > * {
	grid-column: span 6;
}

.acct-grid > .acard--wide {
	grid-column: 1 / -1;
}

.acct-grid > .acard--taste {
	grid-column: span 7;
}

.acct-grid > .acard--soi {
	grid-column: span 5;
}

.acct-recs {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* drumul comenzii */
.road {
	--c: var(--ch-primary);
	display: grid;
	grid-template-columns: repeat(var(--n), minmax(0, 1fr));
	gap: 12px;
	margin: 6px 0 0;
	padding: 0;
	list-style: none;
	position: relative;
}

.road::before,
.road::after {
	content: '';
	position: absolute;
	top: 9px;
	left: calc(50% / var(--n));
	height: 2px;
	border-radius: 2px;
}

.road::before {
	right: calc(50% / var(--n));
	background: var(--ch-border);
}

.road::after {
	width: calc((100% - 100% / var(--n)) * var(--done) / (var(--n) - 1));
	background: var(--ch-text);
	transform-origin: left;
	animation: hz-road 1.4s var(--ease) both .2s;
}

@keyframes hz-road {
	from {
		transform: scaleX(0);
	}
}

.road__s {
	position: relative;
	display: grid;
	justify-items: center;
	text-align: center;
	gap: 4px;
	font-size: .86rem;
}

.road__dot {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--ch-bg);
	box-shadow: inset 0 0 0 2px var(--ch-border);
	position: relative;
	z-index: 1;
	margin-bottom: 10px;
}

.road__s.is-done .road__dot {
	background: var(--ch-text);
	box-shadow: none;
}

.road__s.is-done .road__dot::after {
	content: '';
	position: absolute;
	inset: 6px 5px 7px;
	border: solid var(--ch-bg);
	border-width: 0 0 2px 2px;
	transform: rotate(-45deg);
}

.road__s.is-now .road__dot {
	box-shadow: inset 0 0 0 2px var(--c);
}

.road__s.is-now .road__dot::before {
	content: '';
	position: absolute;
	inset: -7px;
	border-radius: 50%;
	box-shadow: 0 0 0 2px var(--c);
	opacity: .5;
	animation: hz-ring 2s var(--ease) infinite;
}

@keyframes hz-ring {
	from {
		transform: scale(.6);
		opacity: .8;
	}
	to {
		transform: scale(1.3);
		opacity: 0;
	}
}

.road__s b {
	font: 600 .95rem/1.2 var(--ch-font-ui);
}

.road__s.is-next b {
	color: var(--ch-text-soft);
	font-weight: 500;
}

.road__s time {
	font: 500 .78rem/1 var(--ch-font-ui);
	color: var(--ch-primary);
}

.road__s span:not(.road__dot) {
	color: var(--ch-text-soft);
	font-size: .8rem;
	line-height: 1.35;
	max-width: 22ch;
}

/* gustul tau */
.taste {
	display: grid;
	gap: 22px;
	margin: 10px 0 24px;
}

.taste__row {
	display: grid;
	grid-template-columns: 70px 1fr 70px;
	align-items: center;
	gap: 14px;
	font: 500 .85rem/1 var(--ch-font-ui);
	color: var(--ch-text-soft);
}

.taste__row span:last-child {
	text-align: right;
}

.taste__row i {
	position: relative;
	height: 2px;
	background: linear-gradient(90deg, var(--ch-border), var(--ch-text) , var(--ch-border));
	border-radius: 2px;
}

.taste__row i::after {
	content: '';
	position: absolute;
	top: 50%;
	left: calc(var(--v) * 100%);
	width: 22px;
	height: 22px;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	background: var(--ch-primary);
	box-shadow: 0 0 0 6px color-mix(in oklab, var(--ch-primary) 20%, transparent);
	animation: hz-taste 1.6s var(--ease) both .3s;
}

@keyframes hz-taste {
	from {
		left: 50%;
		opacity: 0;
	}
}

.chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
}

.chips .chip {
	min-height: 34px;
	font-size: .84rem;
}

/* soiurile tale */
.soimap {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.soimap a {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	padding: 0 14px;
	border-radius: 14px;
	font-size: .9rem;
	color: var(--ch-text-soft);
	box-shadow: inset 0 0 0 1px var(--ch-border);
	border: 1px dashed transparent;
	transition: background-color .3s, color .3s;
}

.soimap .sw {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	flex: none;
	box-shadow: inset 0 0 0 1.5px currentColor;
}

.soimap li.is-on a {
	color: var(--ch-text);
	box-shadow: none;
	background: color-mix(in oklab, var(--ch-light) 80%, transparent);
	font-weight: 600;
}

.soimap li.is-on .sw {
	box-shadow: none;
}

.soi--alb .sw {
	color: var(--meadow);
}

.soi--rose .sw {
	color: var(--cerise);
}

.soi--rosu .sw {
	color: var(--purple);
}

.soi--alb.is-on .sw {
	background: var(--emerald);
}

.soi--rose.is-on .sw {
	background: var(--rose-quartz);
	box-shadow: inset 0 0 0 1.5px var(--cerise);
}

.soi--rosu.is-on .sw {
	background: var(--purple);
}

.soimap a:hover {
	color: var(--ch-text);
}

/* club + La Domenii (carduri de pe Pivnita) */
.acard--club,
.acard--domenii {
	display: grid;
	align-items: center;
	overflow: hidden;
	min-height: 240px;
	transition: transform .6s var(--ease);
}

.acard--club:hover,
.acard--domenii:hover {
	transform: translateY(-4px);
}

.acard--club {
	--ch-bg: var(--night);
	--ch-text: var(--creta);
	--ch-text-soft: color-mix(in oklab, var(--creta) 72%, var(--night));
	--ch-border: transparent;
	grid-template-columns: 150px 1fr;
	gap: 28px;
	background: var(--ch-bg);
	color: var(--ch-text);
}

.acard--club .kicker,
.acard--domenii .kicker {
	color: inherit;
	opacity: .78;
}

.acard--club p:last-child,
.acard--domenii p:last-child {
	margin: 0;
	color: var(--ch-text-soft);
}

.acard--domenii {
	--ch-text: #FFF6F4;
	--ch-text-soft: rgba(255, 246, 244, .82);
	--ch-border: transparent;
	color: var(--ch-text);
	align-items: end;
	padding: 0;
}

.acard--domenii img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 1.2s var(--ease);
}

.acard--domenii:hover img {
	transform: scale(1.04);
}

.acard--domenii > div {
	position: relative;
	padding: clamp(22px, 2.8vw, 38px);
	padding-top: 80px;
	background: linear-gradient(transparent, rgba(16, 6, 19, .78));
}

/* Comenzi */
.acct-filter {
	margin-bottom: 18px;
}

.olist {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.orow {
	position: relative;
	display: grid;
	grid-template-columns: 150px minmax(0, 1fr) 170px 140px auto;
	align-items: center;
	gap: 22px;
	padding: 16px 22px;
	border-radius: 22px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	transition: background-color .3s, box-shadow .3s;
}

.orow:hover {
	background: color-mix(in oklab, var(--ch-light) 60%, transparent);
	box-shadow: inset 0 0 0 1px color-mix(in oklab, var(--ch-text) 30%, transparent);
}

.orow__link {
	position: absolute;
	inset: 0;
	border-radius: inherit;
	z-index: 1;
}

.orow__act {
	position: relative;
	z-index: 2;
	display: flex;
	gap: 6px;
	justify-content: flex-end;
	flex-wrap: wrap;
}

.orow__no {
	font: 400 1.6rem/1 var(--ch-font-display);
	margin: 0 0 6px;
}

.orow time {
	font-size: .82rem;
	color: var(--ch-text-soft);
}

.orow__bottles {
	display: flex;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
	align-items: flex-end;
	height: 76px;
}

.orow__bottles li {
	position: relative;
	width: 44px;
	height: 100%;
	border-radius: 12px;
	background: color-mix(in oklab, var(--ch-bg) 70%, transparent);
	display: grid;
	place-items: end center;
	overflow: hidden;
}

.orow__bottles img {
	height: 92%;
	width: 100%;
	object-fit: contain;
	object-position: bottom;
}

.orow__bottles span {
	position: absolute;
	top: 4px;
	right: 4px;
	font: 700 .64rem/1 var(--ch-font-ui);
	background: var(--cerneala);
	color: var(--creta);
	padding: 3px 4px;
	border-radius: 6px;
}

.orow__more {
	place-items: center !important;
	font: 600 .8rem/1 var(--ch-font-ui);
	color: var(--ch-text-soft);
	box-shadow: inset 0 0 0 1px var(--ch-border);
	background: none !important;
}

.orow__state {
	display: grid;
	gap: 10px;
	justify-items: start;
}

.orow__bar {
	width: 100%;
	height: 3px;
	border-radius: 3px;
	background: var(--ch-border);
	position: relative;
	overflow: hidden;
}

.orow__bar::after {
	content: '';
	position: absolute;
	inset: 0;
	width: calc(var(--p) * 100%);
	background: var(--ch-text);
	border-radius: inherit;
}

.orow__total {
	margin: 0;
	font: 600 1.05rem/1.2 var(--ch-font-ui);
	text-align: right;
	display: grid;
}

.orow__total small {
	font-weight: 400;
	font-size: .8rem;
	color: var(--ch-text-soft);
}

/* o comanda */
.acct-h--order .acct-h__t {
	font-size: var(--fs-display);
}

.odetail {
	display: grid;
	grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
	gap: clamp(14px, 1.6vw, 22px);
	align-items: start;
	margin-top: clamp(14px, 1.6vw, 22px);
}

.odetail__side {
	display: grid;
	gap: clamp(14px, 1.6vw, 22px);
}

.oitems {
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
}

.oitems li {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr) auto;
	gap: 16px;
	align-items: center;
	padding: 12px 0;
	border-bottom: 1px solid var(--ch-border);
}

.oitems__img {
	width: 64px;
	height: 84px;
	border-radius: 14px;
	background: var(--ch-bg);
	display: grid;
	place-items: end center;
	overflow: hidden;
}

.oitems__img img {
	height: 92%;
	width: 100%;
	object-fit: contain;
	object-position: bottom;
}

.oitems__n {
	display: grid;
	gap: 4px;
	font-weight: 600;
}

.oitems__n a:hover {
	text-decoration: underline;
}

.oitems__n small,
.inv small {
	font-weight: 400;
	color: var(--ch-text-soft);
	font-size: .84rem;
}

.oitems__t {
	font-weight: 600;
	white-space: nowrap;
}

.ototals {
	display: grid;
	gap: 10px;
	margin: 0;
	max-width: 420px;
	margin-left: auto;
}

.ototals div {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	font-size: .95rem;
}

.ototals dt {
	color: var(--ch-text-soft);
}

.ototals dd {
	margin: 0;
	font-weight: 600;
	text-align: right;
}

.ototals .is-save dd {
	color: var(--meadow);
}

.ototals__g {
	padding-top: 12px;
	border-top: 1px solid var(--ch-border);
}

.ototals__g dt,
.ototals__g dd {
	font: 400 1.7rem/1 var(--ch-font-display) !important;
	color: var(--ch-text) !important;
}

.onote {
	font-style: italic;
}

.onotes {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 16px;
}

.onotes li {
	padding-left: 16px;
	border-left: 2px solid var(--ch-primary);
	font-size: .92rem;
}

.onotes time {
	display: block;
	font: 600 .76rem/1 var(--ch-font-ui);
	color: var(--ch-text-soft);
	margin-bottom: 6px;
}

.onotes p {
	margin: 0;
	overflow-wrap: anywhere;
}

.onotes a {
	text-decoration: underline;
}

.ohelp {
	font-size: .86rem;
	padding-inline: 8px;
}

.ohelp a {
	text-decoration: underline;
}

/* facturi */
.odetail > div {
	display: grid;
	gap: clamp(14px, 1.6vw, 22px);
	min-width: 0;
}

.inv {
	margin: 0;
	padding: 0;
	list-style: none;
}

.inv li {
	display: grid;
	grid-template-columns: 110px minmax(0, 1fr) auto auto;
	gap: 18px;
	align-items: center;
	padding: 14px 0;
	border-top: 1px solid var(--ch-border);
}

.inv__no {
	font: 600 .9rem/1 var(--ch-font-ui);
	letter-spacing: .02em;
}

.inv li > span:nth-child(2) {
	display: grid;
	gap: 3px;
}

.inv small a {
	text-decoration: underline;
}

.inv__t {
	font-weight: 600;
	white-space: nowrap;
}

.inv__sum {
	margin: 0;
	color: var(--ch-text-soft);
}

.inv__sum b {
	color: var(--ch-text);
}

/* adrese */
.addr-main {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(14px, 1.6vw, 22px);
}

.agenda {
	margin-top: clamp(50px, 6vw, 90px);
}

.agenda__list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr));
	gap: clamp(14px, 1.6vw, 22px);
	margin: 0;
	padding: 0;
	list-style: none;
	align-items: start;
}

.agenda__l {
	font: 400 1.5rem/1.1 var(--ch-font-display);
	margin: 0 0 10px;
}

.agenda__act {
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
	margin: 0;
}

.agenda__act [aria-pressed='true'] {
	background: var(--ch-text);
	color: var(--ch-bg);
}

.agenda__add {
	grid-column: 1 / -1;
}

.agenda__add summary {
	list-style: none;
	cursor: pointer;
	display: inline-flex;
}

.agenda__add summary::-webkit-details-marker {
	display: none;
}

.agenda__add details[open] summary {
	margin-bottom: 6px;
}

.agenda__add .form {
	max-width: 760px;
}

.acard.is-new {
	animation: hz-flash 1.4s var(--ease);
}

/* formularele WooCommerce (adresa, detalii cont, parola uitata) */
.acct-form > * {
	max-width: 820px;
}

.acct-form form,
.acct-page .woocommerce-ResetPassword,
.acct-page .lost_reset_password {
	display: grid;
	gap: 16px;
}

.acct-form .woocommerce-address-fields__field-wrapper,
.acct-form .woocommerce-EditAccountForm {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.acct-page .form-row {
	display: grid;
	gap: 6px;
	margin: 0;
	grid-column: 1 / -1;
}

.acct-page .form-row-first {
	grid-column: 1;
}

.acct-page .form-row-last {
	grid-column: 2;
}

.acct-page .form-row label {
	font: 600 .8rem/1.3 var(--ch-font-ui);
	letter-spacing: .02em;
}

.acct-page .form-row .required {
	color: var(--rubin);
	text-decoration: none;
	border: 0;
}

.acct-page .form-row .optional {
	font-weight: 400;
	color: var(--ch-text-soft);
}

.acct-page .input-text,
.acct-page .form-row select,
.acct-page .select2-selection {
	width: 100%;
	min-height: 54px;
	padding: 14px 18px;
	border-radius: 16px;
	border: 0;
	background: var(--ch-glass);
	box-shadow: inset 0 0 0 1px var(--ch-border);
	font: 400 1rem/1.3 var(--ch-font-text);
	outline: none;
	transition: box-shadow .3s;
}

.acct-page .input-text:focus,
.acct-page .form-row select:focus {
	box-shadow: inset 0 0 0 2px var(--ch-text);
}

.acct-page .select2-container .select2-selection--single {
	height: 54px;
	display: flex;
	align-items: center;
	padding: 0 18px;
}

.acct-page .select2-selection__arrow {
	top: 14px !important;
	right: 12px !important;
}

.acct-form fieldset:not(.qchips):not(.bday) {
	grid-column: 1 / -1;
	border: 0;
	padding: 22px 0 0;
	margin: 10px 0 0;
	border-top: 1px solid var(--ch-border);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.acct-form fieldset:not(.qchips):not(.bday) > legend {
	padding: 0 0 10px;
	font: 400 1.6rem/1 var(--ch-font-display);
	letter-spacing: 0;
}

.acct-page .password-input {
	position: relative;
	display: block;
}

.acct-page .show-password-input {
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	width: 28px;
	height: 28px;
	opacity: .6;
}

.acct-page .show-password-input::after {
	content: '\1F441';
	font-size: 16px;
}

.acct-page #account_display_name_description {
	font-size: .8rem;
	color: var(--ch-text-soft);
}

.acct-page .woocommerce-EditAccountForm > p:last-of-type,
.acct-page .woocommerce-address-fields > p {
	grid-column: 1 / -1;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin: 6px 0 0;
}

.acct-page .woocommerce-Button,
.acct-page .lost_reset_password .button {
	--b: var(--ch-text);
	--t: var(--ch-bg);
	display: inline-flex;
	align-items: center;
	min-height: 54px;
	padding: 0 1.8em;
	border-radius: 999px;
	background: var(--b);
	color: var(--t);
	font: 600 .95rem/1 var(--ch-font-ui);
}

.acct-page > .woocommerce > .lost_reset_password,
.acct-page > .woocommerce > .woocommerce-ResetPassword {
	width: min(100% - 2 * var(--gutter), 620px);
	margin: clamp(50px, 8vw, 110px) auto 120px;
}

.form .switch {
	display: flex;
	gap: 14px;
	align-items: center;
	font: 500 1rem/1.4 var(--ch-font-ui);
	letter-spacing: 0;
	cursor: pointer;
}

.form .switch input {
	appearance: none;
	-webkit-appearance: none;
	flex: none;
	width: 52px;
	min-height: 30px;
	height: 30px;
	padding: 0;
	border-radius: 999px;
	background: var(--ch-border);
	box-shadow: none;
	position: relative;
	cursor: pointer;
	transition: background-color .35s;
}

.form .switch input::after {
	content: '';
	position: absolute;
	top: 3px;
	left: 3px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .2);
	transition: transform .45s var(--ease);
}

.form .switch input:checked {
	background: var(--ch-primary);
}

.form .switch input:checked::after {
	transform: translateX(22px);
}

.form .switch input:focus-visible {
	outline: 2px solid var(--ch-text);
	outline-offset: 3px;
}

.club-form fieldset {
	border: 0;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	transition: opacity .3s;
}

.club-form fieldset[disabled] {
	opacity: .4;
}

/* Clubul */
.club-hero {
	--ch-bg: var(--night);
	--ch-text: var(--creta);
	--ch-text-soft: color-mix(in oklab, var(--creta) 74%, var(--night));
	--ch-primary: #E2BE6A;
	--ch-border: rgba(246, 225, 225, .16);
	background: var(--ch-bg);
	color: var(--ch-text);
	overflow: hidden;
}

.club-hero__in {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: clamp(30px, 6vw, 100px);
	align-items: center;
	padding-block: clamp(50px, 7vw, 110px);
}

.club-hero__sky {
	max-width: 460px;
	width: 100%;
	justify-self: center;
	filter: drop-shadow(0 0 60px rgba(226, 190, 106, .25));
}

.club-hero .kicker {
	color: var(--ch-primary);
}

.club-hero__h {
	font: italic 400 var(--fs-display)/.86 var(--ch-font-display);
	letter-spacing: -.04em;
	margin: 12px 0 24px;
}

.club-hero .lead b {
	color: var(--ch-text);
}

.club-meter {
	position: relative;
	height: 4px;
	border-radius: 4px;
	background: var(--ch-border);
	margin: 44px 0 56px;
	max-width: 560px;
}

.club-meter__fill {
	position: absolute;
	inset: 0 auto 0 0;
	width: calc(var(--p) * 100%);
	background: linear-gradient(90deg, #C99A3E, #F3DD8E);
	border-radius: inherit;
	animation: hz-fill 2.2s var(--ease) both .2s;
}

@keyframes hz-fill {
	from {
		width: 0;
	}
}

.club-meter__mark {
	position: absolute;
	top: 50%;
	left: calc(var(--at) * 100%);
	width: 14px;
	height: 14px;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	background: var(--ch-bg);
	box-shadow: inset 0 0 0 2px var(--ch-border);
	font: 500 .76rem/1.2 var(--ch-font-ui);
	color: var(--ch-text-soft);
}

.club-meter__mark.is-on {
	background: #F3DD8E;
	box-shadow: none;
}

.club-meter__mark b {
	position: absolute;
	top: 22px;
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
	font-weight: 600;
	color: var(--ch-text);
}

.club-meter__mark:first-child + .club-meter__mark b,
.club-meter__mark b {
	text-align: center;
}

.club-meter__mark:last-child b {
	left: auto;
	right: -7px;
	transform: none;
}

.club-meter__mark:nth-child(2) b {
	left: -7px;
	transform: none;
}

.club-hero__note {
	font-size: .85rem;
	color: var(--ch-text-soft);
	margin: 0;
}

.levels {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(14px, 1.6vw, 22px);
	margin: clamp(30px, 4vw, 56px) 0;
	padding: 0;
	list-style: none;
}

.levels__l {
	position: relative;
	padding: clamp(22px, 2.8vw, 38px);
	border-radius: 28px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
}

.levels__l ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 12px;
}

.levels__l ul li {
	padding-left: 22px;
	position: relative;
	font-size: .98rem;
	line-height: 1.4;
}

.levels__l ul li::before {
	content: '';
	position: absolute;
	left: 0;
	top: .5em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	box-shadow: inset 0 0 0 1.5px var(--ch-text-soft);
}

.levels__l.is-on ul li::before {
	background: var(--aur);
	box-shadow: none;
}

.levels__l.is-cur {
	background: var(--cerneala);
	color: var(--creta);
	box-shadow: none;
	--ch-text-soft: color-mix(in oklab, var(--creta) 72%, var(--cerneala));
}

.levels__l.is-cur .kicker {
	color: #E2BE6A;
}

.levels__you {
	position: absolute;
	top: 22px;
	right: 22px;
	font: 600 .74rem/1 var(--ch-font-ui);
	padding: 7px 10px;
	border-radius: 999px;
	background: #E2BE6A;
	color: var(--cerneala);
}

.club-prefs {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: clamp(20px, 4vw, 60px);
	margin-bottom: clamp(80px, 10vw, 140px);
}

.club-prefs .muted {
	max-width: 42ch;
}

.club-form {
	margin-top: 0;
	align-content: start;
}

.club-form__st {
	min-height: 1.4em;
	margin: 0;
	font-size: .88rem;
	color: var(--meadow);
}

/* La Domenii */
.domenii-hero {
	position: relative;
	min-height: min(78vh, 720px);
	display: grid;
	align-items: end;
	color: #FFF6F4;
	overflow: hidden;
}

.domenii-hero img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 40%;
}

.domenii-hero::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(16, 6, 19, .1) 30%, rgba(16, 6, 19, .78));
}

.domenii-hero__in {
	position: relative;
	z-index: 1;
	padding-block: 60px clamp(40px, 6vw, 80px);
}

.domenii-hero .kicker {
	color: inherit;
	opacity: .85;
}

.domenii-hero__h {
	font: 400 var(--fs-display)/.86 var(--ch-font-display);
	letter-spacing: -.04em;
	margin: 12px 0 20px;
}

.domenii-hero .lead {
	color: rgba(255, 246, 244, .86);
	max-width: 46ch;
}

.trio {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0;
	padding: clamp(30px, 4vw, 56px) 0;
	list-style: none;
	gap: clamp(20px, 3vw, 50px);
	border-bottom: 1px solid var(--ch-border);
}

.trio .muted {
	margin: 0;
	font-size: .95rem;
}

.domenii {
	margin-top: clamp(30px, 4vw, 56px);
	padding-bottom: clamp(80px, 10vw, 140px);
}

.domenii > section:first-child {
	min-width: 0;
}

.visits__h {
	margin: 18px 0 10px;
}

.visits {
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 10px;
}

.visit {
	display: grid;
	grid-template-columns: 70px minmax(0, 1fr) auto;
	gap: 20px;
	align-items: center;
	padding: 18px 22px;
}

.visit.is-anulata {
	opacity: .6;
}

.visit__date {
	display: grid;
	justify-items: center;
	text-align: center;
}

.visit__date b {
	font: 400 2.4rem/1 var(--ch-font-display);
}

.visit__date span {
	font: 500 .76rem/1.2 var(--ch-font-ui);
	color: var(--ch-text-soft);
}

.visit__t {
	font: 400 1.4rem/1.1 var(--ch-font-display);
	margin: 0 0 6px;
}

.visit .muted {
	margin: 0;
	font-size: .88rem;
}

.visit__st {
	display: grid;
	justify-items: end;
	gap: 6px;
	margin: 0;
	text-align: right;
}

.visit__st small {
	font-size: .78rem;
	color: var(--ch-text-soft);
}

.dexp {
	grid-template-columns: 1fr !important;
	gap: 8px !important;
}

.dexp label {
	display: flex;
	gap: 12px;
	align-items: center;
	padding: 12px 16px;
	border-radius: 16px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	cursor: pointer;
	letter-spacing: 0;
	transition: background-color .3s, box-shadow .3s;
}

.dexp label:has(:checked) {
	background: rgba(246, 225, 225, .1);
	box-shadow: inset 0 0 0 1.5px var(--ch-primary);
}

.dexp input {
	width: 18px !important;
	min-height: 18px !important;
	accent-color: var(--ch-primary);
	box-shadow: none !important;
	flex: none;
}

.dexp span {
	display: grid;
	gap: 3px;
}

.dexp b {
	font: 400 1.15rem/1.1 var(--ch-font-display);
}

.dexp small {
	font-weight: 400;
	color: var(--ch-text-soft);
	font-size: .8rem;
}

.acard--ink .form input,
.acard--ink .form select,
.acard--ink .form textarea {
	background: rgba(246, 225, 225, .06);
	color: var(--ch-text);
}

.acard--ink .form input:focus,
.acard--ink .form select:focus,
.acard--ink .form textarea:focus {
	box-shadow: inset 0 0 0 2px var(--ch-primary);
}

.acard--ink .form select option {
	color: var(--cerneala);
}

.acard--ink .form input[type=date] {
	color-scheme: dark;
}

.dvisit__note {
	font-size: .82rem;
	margin: 0;
}

.acard--ink .form__err {
	color: #F7B08F;
}

/* Intrarea in cont */
.login {
	display: grid;
	grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
	min-height: calc(100vh - var(--header-h));
}

.login__art {
	--ch-bg: var(--purple-3);
	--ch-text: var(--creta);
	--ch-text-soft: color-mix(in oklab, var(--creta) 74%, var(--purple-3));
	position: relative;
	overflow: hidden;
	color: var(--ch-text);
	background: radial-gradient(110% 80% at 30% 0%, #5A2A6C, var(--purple-3) 55%, var(--purple-4));
	padding: clamp(40px, 6vw, 90px) var(--gutter);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.login__sky {
	position: absolute;
	top: 7%;
	right: 7%;
	width: min(40%, 340px);
	opacity: .9;
}

.login__art .kicker {
	color: #E2BE6A;
	position: relative;
}

.login__h {
	position: relative;
	font: 400 clamp(2.8rem, 6vw, 6.4rem)/.9 var(--ch-font-display);
	letter-spacing: -.035em;
	margin: 14px 0 40px;
	max-width: 11ch;
}

.login__perks {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px 30px;
	max-width: 640px;
}

.login__perks li {
	color: var(--ch-text-soft);
	font-size: .95rem;
	line-height: 1.45;
	padding-top: 14px;
	border-top: 1px solid rgba(246, 225, 225, .16);
}

.login__perks b {
	display: block;
	color: var(--ch-text);
	font: 400 1.3rem/1.1 var(--ch-font-display);
	margin-bottom: 6px;
}

.login__forms {
	padding: clamp(40px, 6vw, 90px) var(--gutter);
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 30px;
	max-width: 560px;
	width: 100%;
	margin-inline: auto;
}

.login__forms .seg {
	align-self: flex-start;
}

.login__f {
	grid-template-columns: 1fr;
	margin-top: 0;
}

.login__row {
	display: flex;
	gap: 20px;
	align-items: center;
	flex-wrap: wrap;
	margin: 6px 0 0;
}

.login__row a {
	font-size: .9rem;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.login__legal {
	font-size: .82rem;
	margin: 0;
}

.login__legal a {
	text-decoration: underline;
}

.acct-out .ftr {
	margin-top: 0;
}

/* Responsive */
@media (max-width: 1100px) {
	.orow {
		grid-template-columns: 120px minmax(0, 1fr) 150px auto;
	}
	.orow__act {
		grid-column: 1 / -1;
		justify-content: flex-start;
	}
	.acct-grid > .acard--taste,
	.acct-grid > .acard--soi {
		grid-column: 1 / -1;
	}
	.acct-recs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.acct-recs > :nth-child(3) {
		display: none;
	}
}

@media (max-width: 860px) {
	.cellar__in,
	.club-hero__in,
	.club-prefs,
	.odetail,
	.login {
		grid-template-columns: 1fr;
	}
	.cellar__stats {
		grid-template-columns: repeat(2, auto);
	}
	.rack__row li:nth-child(n+6) {
		display: none;
	}
	.acct-grid > * {
		grid-column: 1 / -1 !important;
	}
	.addr-main,
	.trio,
	.levels {
		grid-template-columns: 1fr;
	}
	.club-hero__sky {
		max-width: 240px;
	}
	.login__art {
		min-height: 0;
		padding-top: 120px;
	}
	.login__sky {
		width: 220px;
		top: -40px;
		right: -40px;
	}
	.login__perks {
		grid-template-columns: 1fr;
	}
	.road {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.road::before,
	.road::after {
		display: none;
	}
	.road__s {
		grid-template-columns: 20px 1fr auto;
		justify-items: start;
		text-align: left;
		column-gap: 14px;
		row-gap: 2px;
		padding-bottom: 18px;
		position: relative;
	}
	.road__s::before {
		content: '';
		position: absolute;
		left: 9px;
		top: 22px;
		bottom: 0;
		width: 2px;
		background: var(--ch-border);
	}
	.road__s.is-done::before {
		background: var(--ch-text);
	}
	.road__s:last-child::before {
		display: none;
	}
	.road__dot {
		grid-row: 1 / span 2;
		margin: 0;
	}
	.road__s time {
		grid-column: 3;
		grid-row: 1;
	}
	.road__s span:not(.road__dot) {
		grid-column: 2 / -1;
		max-width: none;
	}
}

@media (max-width: 640px) {
	.acct-h {
		grid-template-columns: 1fr;
	}
	.orow {
		grid-template-columns: 1fr auto;
		gap: 12px 16px;
		padding: 16px;
	}
	.orow__bottles {
		grid-column: 1 / -1;
		grid-row: 2;
		height: 64px;
	}
	.orow__state {
		grid-column: 1;
	}
	.orow__total {
		grid-row: 1;
		grid-column: 2;
	}
	.acct-recs {
		grid-template-columns: 1fr;
	}
	.acct-recs > :nth-child(n+2) {
		display: none;
	}
	.acard--club {
		grid-template-columns: 90px 1fr;
		gap: 18px;
	}
	.inv li {
		grid-template-columns: 1fr auto;
		gap: 6px 14px;
	}
	.inv__no {
		grid-column: 1 / -1;
	}
	.visit {
		grid-template-columns: 56px minmax(0, 1fr);
	}
	.visit__st {
		grid-column: 1 / -1;
		justify-items: start;
		text-align: left;
	}
	.soimap {
		grid-template-columns: 1fr;
	}
	.acct-form .woocommerce-address-fields__field-wrapper,
	.acct-form .woocommerce-EditAccountForm,
	.acct-form fieldset:not(.qchips):not(.bday),
	.club-form fieldset {
		grid-template-columns: 1fr;
	}
	.acct-page .form-row-first,
	.acct-page .form-row-last {
		grid-column: 1;
	}
	.cellar__stats dd {
		font-size: 2.2rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.road::after,
	.taste__row i::after,
	.club-meter__fill {
		animation: none;
	}
	.pill--go::before,
	.road__s.is-now .road__dot::before {
		animation: none;
	}
}

/* Butonul de cont din antet + meniul de pe telefon */
.hdr__tools .hdr__acct {
	width: auto;
	padding: 0 16px 0 12px;
	gap: 8px;
	display: flex;
	border-radius: 999px;
	font: 600 .85rem/1 var(--ch-font-ui);
	background: var(--cerneala);
	color: var(--creta);
}

.hdr__tools .hdr__acct:hover {
	background: var(--rubin);
}

.hdr__tools .hdr__acct .ic {
	width: 18px;
	height: 18px;
}

.hdr__tools .hdr__acct.is-in {
	background: transparent;
	color: inherit;
	box-shadow: inset 0 0 0 1px var(--ch-border);
}

.hdr__tools .hdr__acct.is-in:hover {
	background: var(--ch-border);
}

.hdr__burger span {
	display: block;
	width: 22px;
	height: 1.5px;
	background: currentColor;
	border-radius: 2px;
	transition: transform .5s var(--ease);
}

.hdr__burger {
	flex-direction: column;
	gap: 6px;
	place-content: center;
	width: 44px;
	height: 44px;
}

.hdr__burger[aria-expanded='true'] span:first-child {
	transform: translateY(3.75px) rotate(45deg);
}

.hdr__burger[aria-expanded='true'] span:last-child {
	transform: translateY(-3.75px) rotate(-45deg);
}

.mnav {
	display: none;
}

@media (max-width: 860px) {
	.hdr__burger {
		display: flex !important;
	}
	.hdr__tools .hdr__acct {
		display: grid !important;
		width: 44px;
		padding: 0;
		background: transparent;
		color: inherit;
	}
	.hdr__tools .hdr__acct span {
		display: none;
	}
	.hdr__tools .hdr__acct.is-in {
		box-shadow: none;
	}
	.hdr__tools .hdr__acct.is-in::after {
		content: '';
		position: absolute;
		top: 9px;
		right: 9px;
		width: 7px;
		height: 7px;
		border-radius: 50%;
		background: var(--rubin);
	}
	.mnav {
		display: block;
		position: fixed;
		inset: var(--header-h) 0 0;
		z-index: 55;
		background: var(--creta);
		color: var(--cerneala);
		overflow-y: auto;
		overscroll-behavior: contain;
		clip-path: inset(0 0 100% 0);
		visibility: hidden;
		transition: clip-path .6s var(--ease), visibility 0s .6s;
	}
	.mnav.is-open {
		clip-path: inset(0);
		visibility: visible;
		transition: clip-path .6s var(--ease);
	}
	body.mnav-open {
		overflow: hidden;
	}
	.mnav__in {
		min-height: 100%;
		display: flex;
		flex-direction: column;
		padding: 18px var(--gutter) calc(28px + env(safe-area-inset-bottom));
	}
	.mnav__main {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.mnav__main > li {
		border-bottom: 1px solid var(--ch-border);
	}
	.mnav__link {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		padding: 16px 0;
		font: 400 2.1rem/1.05 var(--ch-font-display);
		letter-spacing: -.01em;
		text-align: left;
		color: inherit;
	}
	.mnav__link span {
		font: 300 1.6rem/1 var(--ch-font-ui);
		transition: transform .4s var(--ease);
	}
	.mnav__link[aria-expanded='true'] span {
		transform: rotate(45deg);
	}
	.mnav.is-open .mnav__main > li {
		animation: hz-mnav .7s var(--ease) both;
	}
	.mnav.is-open .mnav__main > li:nth-child(2) {
		animation-delay: .04s;
	}
	.mnav.is-open .mnav__main > li:nth-child(3) {
		animation-delay: .08s;
	}
	.mnav.is-open .mnav__main > li:nth-child(4) {
		animation-delay: .12s;
	}
	.mnav.is-open .mnav__main > li:nth-child(5) {
		animation-delay: .16s;
	}
	.mnav__sub {
		padding: 0 0 18px;
	}
	.mnav__tones {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		margin: 0 0 14px;
	}
	.mnav__tones a {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		min-height: 40px;
		padding: 0 14px;
		border-radius: 999px;
		box-shadow: inset 0 0 0 1px var(--ch-border);
		font: 500 .9rem/1 var(--ch-font-ui);
	}
	.mnav__sub ul {
		list-style: none;
		margin: 0;
		padding: 0;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 2px 16px;
	}
	.mnav__sub ul a {
		display: block;
		padding: 9px 0;
		font: 400 1.15rem/1.2 var(--ch-font-display);
	}
	.mnav__all {
		display: inline-block;
		margin-top: 10px;
		font: 600 .9rem/1 var(--ch-font-ui);
		text-decoration: underline;
		text-underline-offset: 4px;
	}
	.mnav__acct {
		margin-top: auto;
		padding-top: 28px;
		display: grid;
		gap: 10px;
	}
	.mnav__hi {
		margin: 0 0 4px;
		color: var(--ch-text-soft);
		font-size: .95rem;
	}
	.mnav__foot {
		margin: 22px 0 0;
		font: 500 .85rem/1.4 var(--ch-font-ui);
		color: var(--ch-text-soft);
	}
	.mnav__foot a {
		text-decoration: underline;
		text-underline-offset: 3px;
	}
}

@keyframes hz-mnav {
	from {
		opacity: 0;
		transform: translateY(14px);
	}
}

@media (prefers-reduced-motion: reduce) {
	.mnav.is-open .mnav__main > li {
		animation: none;
	}
}

/* Cont nou pe pasi + intrebarile de gust (inscriere si Detalii cont) */
.signup {
	display: grid;
	gap: 22px;
}

.signup__dots {
	display: flex;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.signup__dots li {
	flex: 1;
	height: 3px;
	border-radius: 3px;
	background: var(--ch-border);
	transition: background-color .5s var(--ease);
}

.signup__dots li.is-on {
	background: var(--ch-primary);
}

.signup:not(.is-stepped) .signup__dots,
.signup:not(.is-stepped) [data-next],
.signup:not(.is-stepped) [data-prev],
.signup:not(.is-stepped) [data-skip] {
	display: none;
}

.signup__step {
	border: 0;
	padding: 0;
	margin: 0;
	min-width: 0;
	display: grid;
	gap: 18px;
	animation: hz-step .6s var(--ease);
}

.signup__step.form {
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin-top: 0;
}

.signup__step[hidden] {
	display: none;
}

.signup__step > legend {
	display: grid;
	gap: 6px;
	padding: 0;
	margin-bottom: 8px;
	float: left;
	width: 100%;
}

.signup__step > legend .acard__h {
	margin: 0;
}

.signup__step.form > legend {
	grid-column: 1 / -1;
}

.signup__why {
	margin: 0;
	font-size: .9rem;
	color: var(--ch-text-soft);
	grid-column: 1 / -1;
}

.signup__nav {
	display: flex;
	gap: 10px;
	align-items: center;
	flex-wrap: wrap;
}

.signup__nav [data-next],
.signup__nav [data-submit] {
	margin-left: auto;
}

.signup__skip {
	font: 600 .88rem/1 var(--ch-font-ui);
	color: var(--ch-text-soft);
	text-decoration: underline;
	text-underline-offset: 3px;
	padding: 10px 4px;
}

.signup .form__err {
	margin: 0;
}

.signup label b,
.bday legend b {
	color: var(--rubin);
	font-weight: 600;
}

@keyframes hz-step {
	from {
		opacity: 0;
		transform: translateX(16px);
	}
}

.bday {
	border: 0;
	padding: 0;
	margin: 0;
	min-width: 0;
}

.bday legend {
	font: 600 .8rem/1.3 var(--ch-font-ui);
	letter-spacing: .04em;
	padding: 0;
	margin-bottom: 6px;
}

.bday > div {
	display: grid;
	grid-template-columns: .8fr 1.4fr 1fr;
	gap: 8px;
}

.bday select {
	width: 100%;
	min-height: 54px;
	padding: 14px 14px;
	border-radius: 16px;
	border: 0;
	background: var(--ch-glass);
	box-shadow: inset 0 0 0 1px var(--ch-border);
	font: 400 1rem/1.2 var(--ch-font-text);
	color: inherit;
}

.qchips {
	border: 0;
	padding: 0;
	margin: 0;
	min-width: 0;
}

.qchips legend {
	font: 400 1.25rem/1.2 var(--ch-font-display);
	padding: 0;
	margin-bottom: 10px;
}

.qchips legend small {
	font: 500 .78rem/1 var(--ch-font-ui);
	color: var(--ch-text-soft);
	margin-left: 6px;
}

.qchips > div {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.qchips label {
	position: relative;
	cursor: pointer;
}

.qchips input {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
}

.qchips label > span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 42px;
	padding: 0 16px;
	border-radius: 999px;
	box-shadow: inset 0 0 0 1px var(--ch-border);
	font: 500 .92rem/1 var(--ch-font-ui);
	transition: background-color .3s, color .3s, box-shadow .3s;
}

.qchips label:hover > span {
	box-shadow: inset 0 0 0 1px var(--ch-text);
}

.qchips input:checked + span {
	background: var(--ch-text);
	color: var(--ch-bg);
	box-shadow: none;
}

.qchips input:focus-visible + span {
	outline: 2px solid var(--ch-primary);
	outline-offset: 2px;
}

.acct-page .acct-prefs {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
}

.acct-page .acct-prefs fieldset {
	border: 0;
	padding: 0;
	margin: 0;
	display: block;
}

.acct-page .acct-prefs .bday legend,
.acct-page .acct-prefs .qchips legend {
	font: 400 1.25rem/1.2 var(--ch-font-display);
	padding: 0 0 10px;
}

.acct-prefs__q {
	display: grid;
	gap: 22px;
}

.acct-prefs .check {
	display: flex;
	gap: 10px;
	align-items: center;
	font: 500 .95rem/1.4 var(--ch-font-ui);
}

.acct-prefs .check input {
	width: 20px;
	height: 20px;
	accent-color: var(--ch-primary);
}

.acard--bday {
	display: flex;
	align-items: center;
	gap: 18px;
	padding: 18px 24px;
	background: color-mix(in oklab, #E2BE6A 22%, var(--ch-light));
	box-shadow: inset 0 0 0 1px color-mix(in oklab, #C99A3E 50%, transparent);
}

.acard--bday__ic {
	font-size: 1.4rem;
	color: #A97E2C;
}

.acard--bday b {
	font: 400 1.3rem/1.2 var(--ch-font-display);
	margin-right: 6px;
}

.acard--bday .chip {
	margin-left: auto;
	flex: none;
}

@media (max-width: 640px) {
	.signup__step.form {
		grid-template-columns: 1fr;
	}
	.signup__step.form > label {
		grid-column: 1;
	}
	.acard--bday {
		flex-wrap: wrap;
	}
	.acard--bday .chip {
		margin-left: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.signup__step {
		animation: none;
	}
}

@media (min-width: 861px) {
	.login__art {
		position: sticky;
		top: var(--header-h);
		height: calc(100vh - var(--header-h));
		align-self: start;
	}
}

.signup__nav [hidden] {
	display: none !important;
}

.form .qchips label,
.qchips label {
	display: block;
	letter-spacing: 0;
}

.form .qchips input,
.qchips input {
	position: absolute;
	opacity: 0;
	width: 1px;
	height: 1px;
	min-height: 0;
	padding: 0;
}

.qchips .dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	flex: none;
}

.bday {
	grid-column: 1 / -1;
	width: 100%;
}

.acct-form .acct-prefs:not(.qchips):not(.bday) {
	grid-template-columns: 1fr;
	gap: 22px;
}

/* pe telefon formularul vine primul; ce primesti din cont ramane dedesubt */
@media (max-width: 860px) {
	.login__forms {
		order: -1;
		padding-top: 28px;
	}
	.login__art {
		padding-top: 60px;
	}
	.login__sky {
		width: 160px;
		top: -20px;
		right: -20px;
		opacity: .6;
	}
	.login__h {
		font-size: 2.4rem;
		margin-bottom: 26px;
	}
}
