/*
 * Pink Touch — pagina „Povestea noastră”: emblema în cercul auriu, capitolele
 * poveștii, cele două parfumuri față în față, valorile, drumul unui flacon,
 * cadoul și semnătura. Încărcat doar pe pagina povestea-noastra.
 */

.pts {
	--pts-blush: #F4DAD6;
	--pts-blush-soft: #FBEDEA;
	--pts-rose: #E7A5A0;
	--pts-rosewood: #9D5C50;
	--pts-champagne: #C6A290;
	--pts-gold: #C9A26B;
	--pts-dark: #141110;
	--pts-muted: #6E5A54;
	--pts-gutter: clamp(1.25rem, 4vw, 3rem);
	overflow-x: clip;
}
.pts > * { margin-block: 0 !important; }
.wp-site-blocks > main.pts { margin-top: 0 !important; }
.pts .pt-label { color: var(--pts-rosewood); }
.pts-h2 { margin: 0.9rem 0 0; font-family: var(--wp--preset--font-family--display); font-size: clamp(2.4rem, 4.8vw, 4rem); font-weight: 400; line-height: 1.04; letter-spacing: -0.015em; }
.pts-h2 em { font-style: italic; color: var(--pts-rosewood); }
.pts-num { margin: 0 0 0.75rem; font-family: var(--wp--preset--font-family--display); font-style: italic; font-size: clamp(3.5rem, 7vw, 6rem); line-height: 0.9; color: var(--pts-champagne); opacity: 0.7; }
.pts-lead { font-family: var(--wp--preset--font-family--display); font-style: italic; font-size: clamp(1.3rem, 2vw, 1.6rem); line-height: 1.3; }

/* Cercul din logo, cu patru romburi, care se rotește încet. */
.pts-ring { position: absolute; inset: -16%; border: 1px solid var(--pts-champagne); border-radius: 50%; animation: pts-spin 90s linear infinite; pointer-events: none; }
.pts-ring i { position: absolute; width: 11px; height: 11px; margin: -6px 0 0 -6px; background: var(--pts-rose); border: 1px solid var(--pts-gold); transform: rotate(45deg); }
.pts-ring i:nth-child(1) { left: 50%; top: 0; }
.pts-ring i:nth-child(2) { left: 100%; top: 50%; }
.pts-ring i:nth-child(3) { left: 50%; top: 100%; }
.pts-ring i:nth-child(4) { left: 0; top: 50%; }
@keyframes pts-spin { to { transform: rotate(360deg); } }

/* ── Deschiderea ─────────────────────────────────────────────────────────── */

.pts-hero {
	position: relative;
	overflow: hidden;
	display: grid;
	justify-items: center;
	align-content: center;
	min-height: calc(100svh - 8.5rem);
	padding: clamp(4rem, 9vw, 7rem) var(--pts-gutter) clamp(3.5rem, 7vw, 5.5rem);
	background: var(--wp--preset--color--cream);
	text-align: center;
}
.pts-hero > * { position: relative; margin: 0; }
.pts-hero__glow { position: absolute; width: 70vmax; aspect-ratio: 1; border-radius: 50%; pointer-events: none; }
.pts-hero__glow--pink { left: -32vmax; top: -18vmax; background: radial-gradient(circle, rgb(231 165 160 / 0.42), rgb(231 165 160 / 0) 62%); }
.pts-hero__glow--amber { right: -34vmax; bottom: -30vmax; background: radial-gradient(circle, rgb(201 162 107 / 0.32), rgb(201 162 107 / 0) 62%); }
.pts-emblem { width: clamp(9rem, 16vw, 13rem); margin-bottom: clamp(2.75rem, 5vw, 3.75rem) !important; animation: pts-enter 1.4s var(--pt-ease) both; }
.pts-emblem img { display: block; width: 100%; height: auto; animation: pts-float 7s 1.4s ease-in-out infinite; }
@keyframes pts-enter { from { opacity: 0; transform: scale(0.9); } }
@keyframes pts-float { 50% { transform: translateY(-8px); } }
.pts-title { margin-top: 1.1rem !important; max-width: 14ch; font-family: var(--wp--preset--font-family--display); font-size: clamp(3.1rem, 8.2vw, 7.25rem); font-weight: 400; line-height: 0.95; letter-spacing: -0.025em; animation: pts-rise 1.2s 0.25s var(--pt-ease) both; }
.pts-title em { display: block; font-style: italic; color: var(--pts-rosewood); }
@keyframes pts-rise { from { opacity: 0; transform: translateY(24px); } }
.pts-hero__lead { max-width: 34rem; margin-top: 1.75rem !important; font-size: 1.0625rem; line-height: 1.75; color: var(--pts-muted); animation: pts-rise 1.2s 0.4s var(--pt-ease) both; }
.pts-scroll { display: grid; justify-items: center; gap: 0.75rem; margin-top: 2.75rem !important; font-size: 0.625rem; font-weight: 600; letter-spacing: 0.24em; text-transform: uppercase; color: var(--pts-rosewood); text-decoration: none; }
.pts-scroll i { width: 1px; height: 3rem; background: linear-gradient(var(--pts-rosewood), transparent); transform-origin: top; animation: pts-line 2.2s ease-in-out infinite; }
@keyframes pts-line { 0% { transform: scaleY(0); } 50% { transform: scaleY(1); } 100% { transform: scaleY(1); opacity: 0; } }

/* ── I. Întrebarea ───────────────────────────────────────────────────────── */

.pts-chapter { display: grid; grid-template-columns: 1fr 1.15fr; gap: clamp(2.5rem, 7vw, 7rem); align-items: center; max-width: 1240px; margin: 0 auto !important; padding: var(--wp--preset--spacing--60) var(--pts-gutter); scroll-margin-top: 7rem; }
.pts-chapter__text > * { margin: 0; }
.pts-chapter__text .pts-lead { margin-top: 1.5rem; }
.pts-chapter__text > p:not(.pts-num):not(.pt-label):not(.pts-lead) { margin-top: 1rem; color: var(--pts-muted); }
.pts-chapter__media { position: relative; margin: 0; }
.pts-chapter__media::before { content: ""; position: absolute; inset: 0; border: 1px solid var(--pts-champagne); transform: translate(1.25rem, 1.25rem); }
.pts-chapter__media img { position: relative; display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }

/* ── II. Două răspunsuri: ecran împărțit ─────────────────────────────────── */

.pts-duo { padding: 0 0 var(--wp--preset--spacing--60); }
.pts-duo__head { padding: 0 var(--pts-gutter) clamp(2.5rem, 5vw, 3.5rem); text-align: center; }
.pts-duo__head > * { margin: 0; }
.pts-duo__panels { display: flex; min-height: clamp(30rem, 48vw, 40rem); }
.pts-panel {
	position: relative;
	overflow: hidden;
	flex: 1 1 0;
	display: flex;
	align-items: flex-end;
	padding: clamp(2rem, 4.5vw, 4rem);
	text-decoration: none;
	transition: flex-grow 0.9s var(--pt-ease);
}
.pts-panel--pink { background: radial-gradient(ellipse 70% 70% at 72% 40%, #FFF6F3, rgb(255 246 243 / 0) 70%), linear-gradient(160deg, var(--pts-blush-soft), var(--pts-blush) 60%, #EDC9C3); color: #5B4741; }
.pts-panel--black { background: radial-gradient(ellipse 70% 70% at 72% 40%, rgb(201 162 107 / 0.26), rgb(201 162 107 / 0) 70%), linear-gradient(160deg, #1E1814, #120E0C 60%, #0C0908); color: #B3A79B; }
.pts-panel img { position: absolute; right: 8%; top: 50%; height: 68%; width: auto; translate: 0 -55%; transition: transform 1s var(--pt-ease); }
.pts-panel--pink img { filter: drop-shadow(0 28px 32px rgb(157 92 80 / 0.3)); }
.pts-panel--black img { filter: drop-shadow(0 28px 36px rgb(0 0 0 / 0.7)); }
.pts-panel__text { position: relative; display: grid; gap: 0.6rem; max-width: 19rem; }
.pts-panel--black .pt-label { color: var(--pts-gold); }
.pts-panel__name { font-family: var(--wp--preset--font-family--display); font-size: clamp(3rem, 5.5vw, 5rem); line-height: 0.95; letter-spacing: -0.02em; color: #1F1A17; }
.pts-panel--black .pts-panel__name { color: #F6F1EA; }
.pts-panel__name em { font-style: italic; color: var(--pts-rosewood); }
.pts-panel--black .pts-panel__name em { color: var(--pts-gold); }
.pts-panel__tag { font-family: var(--wp--preset--font-family--display); font-style: italic; font-size: 1.2rem; color: var(--pts-rosewood); }
.pts-panel--black .pts-panel__tag { color: var(--pts-gold); }
.pts-panel__copy { font-size: var(--wp--preset--font-size--small); line-height: 1.7; }
.pts-panel__cta { justify-self: start; margin-top: 0.75rem; padding-bottom: 0.3em; background: linear-gradient(currentColor, currentColor) left bottom / 100% 1px no-repeat; font-size: 0.625rem; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: #1F1A17; transition: background-size 0.4s var(--pt-ease); }
.pts-panel--black .pts-panel__cta { color: #F6F1EA; }
@media (hover: hover) and (min-width: 782px) {
	.pts-panel:hover { flex-grow: 1.45; }
	.pts-panel:hover img { transform: translateY(-12px) rotate(-3deg); }
	.pts-panel:hover .pts-panel__cta { background-size: 35% 1px; }
}

/* ── III. Ce ne ghidează ─────────────────────────────────────────────────── */

.pts-values { padding: var(--wp--preset--spacing--60) var(--pts-gutter); background: var(--wp--preset--color--cream); }
.pts-values__head,
.pts-journey__head { text-align: center; }
.pts-values__head > *,
.pts-journey__head > * { margin: 0; }
.pts-values__list { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(1.5rem, 4vw, 3.5rem); max-width: 1120px; margin: clamp(2.5rem, 5vw, 4rem) auto 0; padding: 0; text-align: center; }
.pts-values__list li { padding-top: 2rem; border-top: 1px solid var(--pts-champagne); }
.pts-values__icon { display: block; font-size: 0.75rem; color: var(--pts-gold); }
.pts-values__list h3 { margin: 0.9rem 0 0; font-size: clamp(1.5rem, 2.2vw, 1.85rem); }
.pts-values__list p { margin: 0.75rem auto 0; max-width: 20rem; font-size: var(--wp--preset--font-size--small); line-height: 1.75; color: var(--pts-muted); }

/* ── Drumul unui flacon ──────────────────────────────────────────────────── */

.pts-journey { padding: var(--wp--preset--spacing--60) var(--pts-gutter); }
.pts-journey__steps { position: relative; list-style: none; display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.5rem; max-width: 1180px; margin: clamp(3rem, 6vw, 4.5rem) auto 0; padding: 0; text-align: center; }
.pts-journey__steps::before { content: ""; position: absolute; left: 10%; right: 10%; top: 7px; height: 1px; background: linear-gradient(90deg, var(--pts-rose), var(--pts-gold)); }
.pts-journey__steps li { position: relative; display: grid; justify-items: center; gap: 0.5rem; }
.pts-journey__dot { width: 15px; height: 15px; margin-bottom: 1rem; background: var(--wp--preset--color--base); border: 1px solid var(--pts-gold); transform: rotate(45deg); box-shadow: 0 0 0 6px var(--wp--preset--color--base); }
.pts-journey__steps li:last-child .pts-journey__dot { background: var(--pts-rose); }
.pts-journey__steps strong { font-family: var(--wp--preset--font-family--display); font-size: 1.5rem; font-weight: 400; }
.pts-journey__steps li > span:last-child { max-width: 13rem; font-size: var(--wp--preset--font-size--small); line-height: 1.6; color: var(--pts-muted); }

/* ── Cadoul ──────────────────────────────────────────────────────────────── */

.pts-gift { display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; background: linear-gradient(135deg, var(--pts-blush), var(--pts-blush-soft)); }
.pts-gift__media { margin: 0; }
.pts-gift__media img { display: block; width: 100%; height: 100%; min-height: 26rem; object-fit: cover; }
.pts-gift__quote { align-self: center; margin: 0; padding: clamp(2.5rem, 7vw, 6.5rem); border: 0; }
.pts-gift__quote p { margin: 0; font-family: var(--wp--preset--font-family--display); font-size: clamp(1.75rem, 3.2vw, 2.75rem); line-height: 1.18; color: #1F1A17; }
.pts-gift__quote em { display: block; margin-top: 0.5em; font-style: italic; color: var(--pts-rosewood); }

/* ── Semnătura ───────────────────────────────────────────────────────────── */

.pts-sign { display: grid; justify-items: center; padding: var(--wp--preset--spacing--60) var(--pts-gutter); text-align: center; }
.pts-sign > * { margin: 0; }
.pts-sign__logo { width: 7rem; height: auto; }
.pts-sign__text { margin-top: 1.5rem !important; font-family: var(--wp--preset--font-family--display); font-size: clamp(1.6rem, 3vw, 2.25rem); line-height: 1.2; }
.pts-sign__text em { color: var(--pts-rosewood); }
.pts-sign__ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.75rem; margin-top: 2.25rem !important; }
.pts-btn { padding: 1.15em 2.4em; border: 1px solid #1F1A17; background: #1F1A17; color: #fff !important; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; text-decoration: none; transition: background-color 0.35s var(--pt-ease), border-color 0.35s var(--pt-ease); }
.pts-btn:hover { background: var(--pts-rosewood); border-color: var(--pts-rosewood); }
.pts-btn--dark { background: #120E0C; border-color: #C9A26B; color: #E3C78F !important; }
.pts-btn--dark:hover { background: #C9A26B; color: #120E0C !important; border-color: #C9A26B; }
.pts-note { max-width: 32rem; margin-top: 2.5rem !important; font-size: 0.75rem; line-height: 1.6; color: var(--pts-muted); }

/* ── Telefon ─────────────────────────────────────────────────────────────── */

@media (max-width: 781px) {
	.pts-hero { min-height: 0; padding-block: 4.5rem 3.5rem; }
	.pts-emblem { width: 8.5rem; margin-bottom: 2.5rem !important; }
	.pts-title { font-size: 3.15rem; }
	.pts-hero__lead { font-size: 0.9375rem; }

	.pts-chapter { grid-template-columns: 1fr; gap: 2.5rem; padding-block: 3.5rem; }
	.pts-chapter__media { margin-right: 1.25rem; }

	.pts-duo { padding-bottom: 3.5rem; }
	.pts-duo__panels { flex-direction: column; min-height: 0; }
	/* Pe telefon: flaconul deasupra, centrat, textul dedesubt. */
	.pts-panel { flex: none; flex-direction: column; align-items: stretch; gap: 1.75rem; min-height: 0; padding: 2.5rem 1.5rem 2.75rem; text-align: center; }
	.pts-panel img { position: relative; right: auto; top: auto; translate: none; align-self: center; height: 15rem; }
	.pts-panel__text { max-width: none; justify-items: center; }
	.pts-panel__name { font-size: 3rem; }
	.pts-panel__cta { justify-self: center; }

	.pts-values { padding-block: 3.5rem; }
	.pts-values__list { grid-template-columns: 1fr; gap: 2rem; }

	.pts-journey { padding-block: 3.5rem; }
	.pts-journey__steps { grid-template-columns: 1fr; gap: 1.75rem; max-width: 22rem; text-align: left; }
	.pts-journey__steps::before { left: 7px; right: auto; top: 0.5rem; bottom: 0.5rem; width: 1px; height: auto; background: linear-gradient(var(--pts-rose), var(--pts-gold)); }
	.pts-journey__steps li { grid-template-columns: 15px 1fr; justify-items: start; column-gap: 1.25rem; row-gap: 0.25rem; }
	.pts-journey__dot { grid-row: span 2; margin: 0.45rem 0 0; }
	.pts-journey__steps li > span:last-child { max-width: none; }

	.pts-gift { grid-template-columns: 1fr; }
	.pts-gift__media img { min-height: 0; aspect-ratio: 1312 / 1199; }
	.pts-gift__quote { padding: 2.75rem 1.5rem 3rem; text-align: center; }

	.pts-sign { padding-block: 3.5rem; }
	.pts-sign__ctas { flex-direction: column; align-self: stretch; }
	.pts-btn { text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
	.pts-ring,
	.pts-emblem,
	.pts-emblem img,
	.pts-title,
	.pts-hero__lead,
	.pts-scroll i { animation: none !important; }
}
