/*
Theme Name:  Lullula
Theme URI:   https://lullula.ro
Description: Tema copil Lullula pe Kadence. Varianta G „Atelierul viu”: deschidere cu video, atelier, familie, grădină, bucătărie, personalizare, legenda ciocârliei.
Author:      Lullula
Template:    kadence
Version:     0.2.0
Text Domain: lullula
*/

/* ---------- Culori și fonturi (suprascriu paleta Kadence) ---------- */
:root {
	--lu-crem: #FFF8EE;
	--lu-crem-2: #F1E6D2;
	--lu-teracota: #C8553D;
	--lu-mustar: #E9B44C;
	--lu-salvie: #7A8C6E;
	--lu-inchis: #2B2420;
	/* Fundalul benzilor închise (prima pagină, subsol, butoane); se poate schimba din Personalizare */
	--lu-banda: #15474A; /* verde petrol, ales 2026-10-15 */
	--lu-gri: #6B5E52;
	--lu-albastru: #1D4ED8;
	--lu-serif: 'Fraunces', Georgia, serif;
	--lu-sans: 'Jost', system-ui, sans-serif;
	/* Lățimea maximă a conținutului (mai lată din 2026-10-15, ca la sophieallport.com) */
	--lu-latime: 1480px;

	--global-palette1: #C8553D;
	--global-palette2: #A8432E;
	--global-palette3: #2B2420;
	--global-palette4: #3B322C;
	--global-palette5: #6B5E52;
	--global-palette6: #8A7B6B;
	--global-palette7: #F1E6D2;
	--global-palette8: #FFF8EE;
	--global-palette9: #FFFFFF;
	--global-body-font-family: var(--lu-sans);
	--global-heading-font-family: var(--lu-serif);
}
body { font-family: var(--lu-sans); background: var(--lu-crem); color: var(--lu-inchis); }
h1, h2, h3, h4, .site-title, .woocommerce-loop-product__title, .product_title { font-family: var(--lu-serif); font-weight: 500; }
a { color: var(--lu-teracota); }

/* Antet Kadence pe fundal crem */
.site-header, #masthead, .site-main-header-wrap .site-header-row-container-inner { background: var(--lu-crem) !important; }
.main-navigation .primary-menu-container > ul > li.menu-item > a { font-weight: 600; color: var(--lu-inchis); }
.main-navigation .primary-menu-container > ul > li.menu-item > a:hover { color: var(--lu-teracota); }
.custom-logo { max-height: 64px; width: auto; }

/* Butoane WooCommerce în stilul G */
.button, button.button, .wp-block-button__link, .woocommerce a.button, .woocommerce button.button, .woocommerce #respond input#submit, .woocommerce input.button {
	background: var(--lu-teracota); color: #FFF8EE; border-radius: 999px; font-weight: 700; border: 0;
}
.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { background: #A8432E; color: #FFF8EE; }

/* Eticheta NOU! din lullula-core */
.lullula-nou { position: absolute; top: 10px; left: 10px; z-index: 2; background: var(--lu-mustar); color: var(--lu-inchis); font-weight: 700; font-size: 12px; padding: 3px 10px; border-radius: 999px; }
ul.products li.product { position: relative; }

/* Bara de sus */
.lu-anunt { background: var(--lu-teracota); color: #FFF8EE; font-size: 14px; font-weight: 600; text-align: center; padding: 8px 16px; letter-spacing: .02em; }

/* ---------- Pagina principală, varianta G ---------- */
.lu-home { font-size: 17px; line-height: 1.6; }
.lu-wrap { max-width: var(--lu-latime); margin: 0 auto; padding: 0 32px; box-sizing: border-box; }
.lu-serif { font-family: var(--lu-serif); }
.lu-eyebrow { margin: 0; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: 13px; }
.lu-h2 { margin: 10px 0 0; font-size: 44px; line-height: 1.1; font-weight: 500; font-family: var(--lu-serif); }
.lu-btn { display: inline-block; background: var(--lu-teracota); color: #FFF8EE !important; text-decoration: none; padding: 15px 28px; border-radius: 999px; font-weight: 700; font-size: 16px; border: 0; cursor: pointer; font-family: inherit; }
.lu-btn:hover { background: #A8432E; }
.lu-pill { display: inline-block; border: 1.5px solid var(--lu-inchis); border-radius: 999px; padding: 9px 20px; text-decoration: none; color: var(--lu-inchis); font-weight: 600; font-size: 15px; background: #FFF; }
.lu-pill--deschis { color: #FFF8EE; border-color: #FFF8EE; background: transparent; }
.lu-g4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 22px; }
.lu-g3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.lu-g5 { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; }
.lu-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px; align-items: center; }
.lu-ph { border: 1.5px dashed #C9B89E; display: flex; align-items: center; justify-content: center; text-align: center; color: #8A7B6B; font-size: 14px; padding: 14px; box-sizing: border-box; background: #FFFDF8; }
.lu-sectiune { padding-top: 88px; padding-bottom: 88px; }

/* Deschiderea cu video */
.lu-hero { position: relative; overflow: hidden; background: var(--lu-banda); height: min(640px, 82vh); min-height: 460px; }
.lu-hero__media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; opacity: .78; }
.lu-hero__umbra { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(43,36,32,.1) 0%, rgba(43,36,32,.6) 100%); }
.lu-hero__text { position: absolute; left: 0; right: 0; bottom: 56px; color: #FFF8EE; }
.lu-hero h1 { margin: 0; font-size: 64px; line-height: 1; font-weight: 500; max-width: 12em; color: #FFF8EE; }
.lu-hero p { margin: 14px 0 0; font-size: 19px; max-width: 32em; opacity: .95; }
.lu-hero__butoane { display: flex; gap: 14px; margin-top: 26px; flex-wrap: wrap; }
.lu-eticheta-video { position: absolute; right: 16px; top: 14px; background: rgba(43,36,32,.75); color: #FFF8EE; font-size: 13px; padding: 5px 10px; border-radius: 4px; letter-spacing: .04em; }

/* Categorii ca stil de viață */
.lu-chipuri { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; padding: 48px 0 56px; }
.lu-chip { display: inline-flex; align-items: center; gap: 8px; background: #FFF; border-radius: 999px; padding: 8px 16px 8px 8px; text-decoration: none; color: var(--lu-inchis); font-weight: 600; box-shadow: 0 6px 16px rgba(43,36,32,.08); transition: transform .2s; }
.lu-chip:hover { transform: translateY(-2px); color: var(--lu-teracota); }
.lu-chip img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }

/* Produse */
.lu-cap { display: flex; justify-content: space-between; align-items: baseline; gap: 24px; flex-wrap: wrap; margin-bottom: 28px; }
.lu-cap h2 { margin: 0; font-size: 40px; font-weight: 500; }
.lu-produs { display: flex; flex-direction: column; gap: 8px; }
.lu-produs__poza { display: block; position: relative; border-radius: 12px; overflow: hidden; background: #FFF; }
.lu-produs__poza img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; transition: transform .4s; }
.lu-produs__poza:hover img { transform: scale(1.04); }
.lu-produs__nume { font-family: var(--lu-serif); font-size: 20px; line-height: 1.2; color: var(--lu-inchis); text-decoration: none; }
.lu-produs__jos { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.lu-produs__pret { font-weight: 700; }
.lu-produs__pret del { opacity: .55; font-weight: 400; }
.lu-produs__cos { color: var(--lu-teracota); font-weight: 700; text-decoration: none; font-size: 15px; white-space: nowrap; }

/* Atelierul */
.lu-atelier { background: var(--lu-banda); color: #FFF8EE; }
.lu-atelier .lu-h2 { color: #FFF8EE; }
.lu-clip { position: relative; overflow: hidden; background: #1a1512; aspect-ratio: 4 / 3; border-radius: 14px; }
.lu-clip img, .lu-clip video { width: 100%; height: 100%; object-fit: cover; display: block; }
.lu-atelier .lu-ph { border-color: #6B5E52; color: #BFB2A0; background: transparent; aspect-ratio: 1 / 1; border-radius: 10px; }
.lu-atelier .lu-g5 img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; border-radius: 10px; }

/* Procesul */
.lu-pas .lu-ph, .lu-pas img { aspect-ratio: 4 / 3; border-radius: 12px; margin-bottom: 14px; width: 100%; object-fit: cover; display: flex; }
.lu-pas strong { font-family: var(--lu-serif); font-size: 22px; font-weight: 500; }
.lu-pas p { margin: 6px 0 0; color: var(--lu-gri); }

/* Familia, grădina, bucătăria */
.lu-viata { background: var(--lu-crem-2); }
.lu-card { text-decoration: none; color: var(--lu-inchis); background: #FFF; border-radius: 14px; overflow: hidden; display: block; box-shadow: 0 10px 24px rgba(43,36,32,.08); transition: transform .25s; }
.lu-card:hover { transform: translateY(-4px); color: var(--lu-inchis); }
.lu-card .lu-ph, .lu-card img { aspect-ratio: 4 / 3; border: 0; border-radius: 0; width: 100%; object-fit: cover; display: flex; }
.lu-card__text { padding: 20px 22px 24px; }
.lu-card__text strong { font-family: var(--lu-serif); font-size: 24px; font-weight: 500; }
.lu-card__text p { margin: 6px 0 0; color: var(--lu-gri); }

/* Personalizare */
.lu-perso__poza { position: relative; }
.lu-perso__poza img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; border-radius: 16px; }
.lu-perso__nota { position: absolute; right: -16px; bottom: 28px; background: #FFF; border-radius: 12px; padding: 14px 18px; box-shadow: 0 10px 24px rgba(43,36,32,.14); font-size: 15px; }

/* Legenda ciocârliei */
.lu-legenda { background: var(--lu-albastru); color: #FFF8EE; padding: 72px 0; }
.lu-legenda .lu-wrap { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 36px; align-items: center; }
.lu-legenda h2 { margin: 8px 0 0; font-size: 36px; line-height: 1.15; font-weight: 500; color: #FFF8EE; }
.lu-legenda a { color: #FFF8EE; font-weight: 700; }
.lu-ciocarlie { animation: lu-zbor 6s ease-in-out infinite; transform-origin: 50% 60%; }
@keyframes lu-zbor { 0%, 100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(-8px) rotate(-3deg); } }

/* Newsletter */
.lu-news { background: var(--lu-mustar); border-radius: 18px; padding: 40px 44px; display: flex; justify-content: space-between; align-items: center; gap: 32px; flex-wrap: wrap; }
.lu-news h3 { margin: 0; font-size: 30px; font-weight: 500; }
.lu-news form { display: flex; gap: 10px; flex-wrap: wrap; }
.lu-news input[type=email] { height: 50px; border: 0; border-radius: 999px; padding: 0 20px; font-size: 16px; min-width: 260px; font-family: inherit; }
.lu-news .lu-btn { background: var(--lu-banda); }

/* Subsol */
.lu-subsol { background: var(--lu-banda); color: #D8CDBB; padding: 48px 0 40px; font-size: 15px; }
.lu-subsol .lu-wrap { display: flex; justify-content: space-between; gap: 32px; flex-wrap: wrap; align-items: center; }
.lu-subsol a { color: #D8CDBB; text-decoration: none; }
.lu-subsol a:hover { color: #FFF8EE; }
.lu-subsol__linkuri { display: flex; gap: 28px; flex-wrap: wrap; }
.lu-subsol__logo { height: 56px; width: auto; display: block; filter: brightness(0) invert(.92); }

/* Apariție la scroll (doar unde browserul știe, fără JavaScript) */
@supports (animation-timeline: view()) {
	.lu-apare { animation: lu-apare linear both; animation-timeline: view(); animation-range: entry 0% cover 25%; }
	@keyframes lu-apare { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
}
@media (prefers-reduced-motion: reduce) { .lu-apare, .lu-ciocarlie { animation: none !important; } }

/* Mobil */
@media (max-width: 900px) {
	.lu-split { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.lu-g4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 14px; }
	.lu-g3 { grid-template-columns: minmax(0, 1fr); }
	.lu-g5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lu-hero h1 { font-size: 40px; }
	.lu-hero p { font-size: 17px; }
	.lu-h2, .lu-cap h2 { font-size: 32px; }
	.lu-sectiune { padding-top: 56px; padding-bottom: 56px; }
	.lu-legenda .lu-wrap { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.lu-legenda svg { width: 72px; height: 72px; }
	.lu-legenda h2 { font-size: 26px; }
	.lu-perso__nota { right: 12px; }
	.lu-news { padding: 28px 22px; }
	.lu-news input[type=email] { min-width: 0; flex: 1 1 200px; }
	.lu-produs__nume { font-size: 17px; }
	.lu-produs__jos { flex-direction: column; align-items: flex-start; gap: 2px; }
}
@media (max-width: 520px) {
	.lu-wrap { padding: 0 16px; }
	.lu-chipuri { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; padding: 28px 0 36px; scroll-snap-type: x mandatory; }
	.lu-chip { flex: 0 0 auto; scroll-snap-align: start; }
}

/* Corecturi după prima captură */
.site-branding .site-title-wrap, .site-branding .site-description { display: none; }
.lu-clip .lu-ph { width: 100%; }
.lu-legenda .lu-ciocarlie { filter: brightness(0) invert(.97); display: block; }
@media (max-width: 900px) { .lu-legenda .lu-ciocarlie { width: 72px; height: 72px; } }

/* ---------- Tipografie subțire, elegantă (cerută 15 oct, ca la Sophie Allport) ----------
 * Titluri: Fraunces 300 la dimensiune mare (contrast fin, ca de revistă). Text: Jost, geometric și aerisit.
 * Meniul și etichetele mici: majuscule rare, cu spațiere largă. */
h1, h2, h3, h4, .lu-h2, .lu-p-titlu, .lu-hero h1, .product_title, .woocommerce-loop-product__title,
.lu-arhiva__titlu, .lu-acordeon summary h2, .lu-timp__an, .lu-cutia__text strong, .lu-rand-produse__nume {
	font-weight: 300 !important; font-variation-settings: "SOFT" 0, "WONK" 0; letter-spacing: -.01em;
}
h1, .lu-p-titlu, .lu-arhiva__titlu, .product_title { font-variation-settings: "opsz" 144; }
body, button, input, select, textarea { font-family: var(--lu-sans); font-weight: 400; }
strong, b { font-weight: 600; }
.lu-eyebrow, .lu-anunt { font-weight: 500; letter-spacing: .16em; text-transform: uppercase; font-size: 12px; }
.lu-btn, .button, .woocommerce a.button, .woocommerce button.button, .lu-pill { font-weight: 500; letter-spacing: .06em; text-transform: uppercase; font-size: 14px; }
.main-navigation .primary-menu-container > ul > li.menu-item > a {
	font-weight: 500; text-transform: uppercase; letter-spacing: .12em; font-size: 13px;
}

/* ---------- Meniul mare (mega meniu) ----------
 * Panoul ocupă toată lățimea antetului, se deschide la hover/focus, cu o mică întârziere la închidere
 * ca să nu dispară când muți mouse-ul în diagonală. */
.site-main-header-wrap { position: relative; }
.site-main-header-wrap .site-header-row-container-inner, .site-main-header-wrap .site-container,
.site-main-header-inner-wrap, .site-main-header-wrap .site-header-section, .site-main-header-wrap .site-header-item,
.site-main-header-wrap .main-navigation, .site-main-header-wrap .primary-menu-container,
.site-main-header-wrap .primary-menu-container > ul, .main-navigation .primary-menu-container > ul > li.lu-are-mega { position: static; }
.lu-mega {
	display: none; position: absolute; left: 0; right: 0; top: 100%; z-index: 1000;
	background: var(--lu-crem); border-top: 1px solid var(--lu-crem-2); box-shadow: 0 24px 40px -18px rgba(43,36,32,.25);
	text-transform: none; letter-spacing: 0;
}
li.lu-are-mega:hover > .lu-mega, li.lu-are-mega:focus-within > .lu-mega { display: block; animation: lu-mega-intra .25s cubic-bezier(.2,.7,.2,1) both; }
@keyframes lu-mega-intra { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
li.lu-are-mega > a { position: relative; }
li.lu-are-mega > a::after { content: ""; position: absolute; left: 50%; bottom: -2px; width: 0; height: 2px; background: var(--lu-teracota); transition: width .25s, left .25s; }
li.lu-are-mega:hover > a::after, li.lu-are-mega:focus-within > a::after { width: 70%; left: 15%; }
.lu-mega__interior { max-width: var(--lu-latime); margin: 0 auto; padding: 36px 32px 40px; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 48px; }
.lu-mega__interior:not(:has(.lu-mega__lista)) { grid-template-columns: minmax(0, 1fr); }
.lu-mega__coloane { display: flex; gap: 48px; }
.lu-mega__interior:not(:has(.lu-mega__placute)) { grid-template-columns: minmax(0, 1fr); }
.lu-mega__interior:not(:has(.lu-mega__placute)) .lu-mega__coloane { justify-content: space-between; flex-wrap: wrap; gap: 32px 40px; }
.lu-mega__lista + .lu-mega__titlu { margin-top: 22px; }
.lu-mega__coloane:empty { display: none; }
.lu-mega__titlu { font-family: var(--lu-serif); font-style: italic; font-weight: 300; font-size: 20px; margin: 0 0 12px; color: var(--lu-teracota); }
.lu-mega__lista { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.lu-mega__lista--2 { grid-template-columns: repeat(2, minmax(0, auto)); column-gap: 28px; }
.lu-mega .lu-mega__lista a { display: inline-block; padding: 5px 0; color: var(--lu-inchis); font-size: 15px; font-weight: 400; text-decoration: none; text-transform: none; letter-spacing: .01em; background: linear-gradient(var(--lu-mustar), var(--lu-mustar)) no-repeat 0 100% / 0 2px; transition: background-size .25s; }
.lu-mega .lu-mega__lista a:hover, .lu-mega .lu-mega__lista a:focus-visible { background-size: 100% 2px; }
.lu-mega__placute { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 250px); justify-content: end; gap: 18px; }
.lu-mega, .lu-mega a, .lu-mob-mega { font-family: var(--lu-sans); }
.lu-mega .lu-mega__placuta { display: grid; gap: 10px; text-decoration: none; color: var(--lu-inchis); text-transform: none; letter-spacing: 0; padding: 0; }
.lu-mega__placuta img, .lu-mega__fara-poza { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 14px; background: var(--lu-crem-2); display: block; transition: transform .5s cubic-bezier(.2,.7,.2,1); }
.lu-mega__placuta:hover img { transform: scale(1.03); }
.lu-mega__placuta-text { display: grid; gap: 2px; font-size: 13.5px; color: var(--lu-gri); }
.lu-mega__placuta-text strong { font-family: var(--lu-serif); font-weight: 300; font-size: 18px; color: var(--lu-inchis); line-height: 1.2; }
@media (max-width: 1200px) { .lu-mega__interior { grid-template-columns: minmax(0, 1fr); gap: 28px; } .lu-mega__placute { grid-auto-columns: minmax(0, 220px); } }

/* Meniul de pe mobil: secțiuni care se deschid */
.lu-mob-mega summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; padding: 14px 0; font-weight: 500; text-transform: uppercase; letter-spacing: .1em; font-size: 15px; }
.lu-mob-mega summary::-webkit-details-marker { display: none; }
.lu-mob-mega summary::after { content: "+"; font-size: 22px; font-weight: 300; color: var(--lu-teracota); }
.lu-mob-mega[open] summary::after { content: "–"; }
.lu-mob-mega__corp { padding: 0 0 14px 4px; }
.lu-mob-mega__corp .lu-mega__titlu { font-size: 16px; margin: 12px 0 4px; }
.lu-mob-mega__corp .lu-mega__lista--2 { grid-template-columns: 1fr 1fr; }
.lu-mob-mega__corp .lu-mega__lista a { padding: 7px 0; font-size: 15px; text-transform: none; letter-spacing: 0; }
.lu-mob-mega__tot { display: inline-block; margin: 0 0 6px; font-weight: 600; color: var(--lu-teracota) !important; }
@media (prefers-reduced-motion: reduce) { li.lu-are-mega:hover > .lu-mega, li.lu-are-mega:focus-within > .lu-mega { animation: none; } }

/* Meniul lateral de pe mobil, pe crem, în ton cu site-ul */
#mobile-drawer .drawer-inner, #mobile-drawer .drawer-content { background: var(--lu-crem); color: var(--lu-inchis); }
#mobile-drawer .drawer-header .drawer-toggle, #mobile-drawer .menu-toggle-close { color: var(--lu-inchis); }
#mobile-drawer .mobile-navigation ul li > a, #mobile-drawer .mobile-navigation ul li .drawer-nav-drop-wrap,
#mobile-drawer .lu-mob-mega summary { color: var(--lu-inchis); font-family: var(--lu-sans); font-weight: 500; text-transform: uppercase; letter-spacing: .1em; font-size: 15px; padding-top: 14px; padding-bottom: 14px; }
#mobile-drawer .mobile-navigation ul li { border-color: var(--lu-crem-2); }
#mobile-drawer .mobile-navigation ul li:not(.menu-item-has-children) > a { border-bottom: 1px solid var(--lu-crem-2); }
#mobile-drawer .lu-mob-mega { border-bottom: 1px solid var(--lu-crem-2); }
#mobile-drawer .lu-mob-mega__corp .lu-mega__lista a { color: var(--lu-inchis); text-transform: none; letter-spacing: 0; font-weight: 400; border: 0; padding: 7px 0; }

/* Punte invizibilă între link și panou: mouse-ul poate coborî în panou fără să-l închidă */
.main-navigation .primary-menu-container > ul > li.lu-are-mega > a::before {
	content: ""; position: absolute; left: -14px; right: -14px; top: 60%; height: 64px; z-index: 1001;
}
.main-navigation .primary-menu-container > ul > li.lu-are-mega > a { z-index: 1002; }

/* „Pentru firme”: evidențiat în meniu, ca o pastilă */
.main-navigation .primary-menu-container > ul > li.lu-meniu-firme > a {
	background: var(--lu-banda); color: var(--lu-crem) !important; border-radius: 999px;
	padding: 9px 16px !important; margin-left: 6px; transition: background .2s;
}
.main-navigation .primary-menu-container > ul > li.lu-meniu-firme > a:hover { background: var(--lu-teracota); }
.main-navigation .primary-menu-container > ul > li.lu-meniu-firme > a::before { content: "✶ "; color: var(--lu-mustar); }
#mobile-drawer .mobile-navigation ul li.lu-meniu-firme > a { color: var(--lu-teracota); }

/* Prima pagină: secțiunea pentru firme */
.lu-acasa-firme { background: var(--lu-banda); color: var(--lu-crem); padding: 88px 0; overflow: hidden; }
.lu-acasa-firme h2 { color: var(--lu-crem); }
.lu-acasa-firme p { color: #D9CDBC; max-width: 520px; }
.lu-acasa-firme__grila { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.lu-acasa-firme__clienti { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.lu-acasa-firme__clienti li {
	font-family: var(--lu-serif); font-weight: 300; font-size: 22px; padding: 10px 20px; border-radius: 999px;
	box-shadow: inset 0 0 0 1.5px rgba(255,248,238,.28); transform: rotate(calc((var(--i) - 4.5) * .8deg));
	transition: background .25s, color .25s, transform .25s;
}
.lu-acasa-firme__clienti li:nth-child(3n+1) { color: var(--lu-mustar); }
.lu-acasa-firme__clienti li:hover { background: var(--lu-crem); color: var(--lu-inchis); transform: rotate(0) scale(1.05); }

/* Prima pagină: livrăm și în Europa (avionul de hârtie urmează drumul punctat) */
.lu-europa { padding: 64px 0 8px; }
.lu-europa__grila { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.lu-europa__drum { width: 100%; height: auto; overflow: visible; }
.lu-europa__drum path#lu-drum { fill: none; stroke: var(--lu-teracota); stroke-width: 2.5; stroke-dasharray: 2 10; stroke-linecap: round; }
.lu-europa__drum circle { fill: var(--lu-teracota); }
.lu-europa__drum text { font-family: var(--lu-serif); font-size: 18px; fill: var(--lu-inchis); }
.lu-europa__avion path { fill: var(--lu-albastru); }
.lu-europa__avion { offset-path: path("M30 120 C 140 20, 260 150, 360 70 S 520 30, 570 60"); offset-distance: 100%; offset-rotate: auto; }
@media (prefers-reduced-motion: no-preference) {
	.lu-europa__avion { animation: lu-zbor-avion 7s cubic-bezier(.45,.05,.4,1) infinite; }
	@keyframes lu-zbor-avion { 0% { offset-distance: 0%; opacity: 0; } 8% { opacity: 1; } 85% { offset-distance: 100%; opacity: 1; } 100% { offset-distance: 100%; opacity: 0; } }
}
@media (max-width: 900px) {
	.lu-acasa-firme { padding: 56px 0; }
	.lu-acasa-firme__grila, .lu-europa__grila { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.lu-acasa-firme__clienti li { font-size: 17px; padding: 8px 14px; }
}

/* ---------- Prima pagină: banda ghidului de cadouri ---------- */
.lu-acasa-ghid { padding: 72px 0; background: var(--lu-crem-2); }
.lu-acasa-ghid__grila { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 48px; align-items: center; }
.lu-acasa-ghid__text h2 em { font-style: italic; color: var(--lu-teracota); }
.lu-acasa-ghid__text p { max-width: 30em; margin: 12px 0 22px; }
.lu-acasa-ghid__cine { position: relative; background: #fff; border-radius: 26px; padding: 30px 30px 34px; box-shadow: 0 24px 60px rgba(43,36,32,.08); transform: rotate(-1deg); }
.lu-acasa-ghid__intrebare { font-family: var(--lu-serif); font-weight: 300; font-size: 24px; margin: 0 0 16px; display: flex; align-items: center; gap: 12px; }
.lu-acasa-ghid__intrebare span { width: 32px; height: 32px; border-radius: 50%; background: var(--lu-banda); color: var(--lu-crem); display: inline-grid; place-items: center; font-family: var(--lu-sans); font-size: 14px; }
.lu-acasa-ghid__cine ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.lu-acasa-ghid__cine a { display: inline-block; padding: 10px 18px; border-radius: 999px; border: 1.5px solid var(--lu-crem-2); background: var(--lu-crem); color: var(--lu-inchis); text-decoration: none; font-size: 15px; transition: background .2s, color .2s, border-color .2s, transform .2s; }
.lu-acasa-ghid__cine a:hover, .lu-acasa-ghid__cine a:focus-visible { background: var(--lu-banda); border-color: var(--lu-banda); color: var(--lu-crem); transform: rotate(-2deg); }
.lu-acasa-ghid__cutie { position: absolute; width: 96px; right: -18px; top: -58px; overflow: visible; }
.lu-acasa-ghid__corp { fill: var(--lu-teracota); }
.lu-acasa-ghid__capac rect { fill: var(--lu-teracota); stroke: #fff; stroke-width: 2; }
.lu-acasa-ghid__capac path, .lu-acasa-ghid__funda { fill: var(--lu-mustar); }
.lu-acasa-ghid__capac { transform-origin: 20px 58px; transition: transform .6s cubic-bezier(.3,1.6,.5,1); }
.lu-acasa-ghid__cine:hover .lu-acasa-ghid__capac, .lu-acasa-ghid__cine:focus-within .lu-acasa-ghid__capac { transform: translate(-6px, -14px) rotate(-14deg); }
@media (max-width: 900px) {
	.lu-acasa-ghid { padding: 56px 0; }
	.lu-acasa-ghid__grila { grid-template-columns: minmax(0, 1fr); gap: 52px; }
	.lu-acasa-ghid__cine { padding: 24px 18px 26px; transform: none; }
	.lu-acasa-ghid__cutie { width: 72px; right: 8px; top: -44px; }
	.lu-acasa-ghid__cine a { padding: 9px 14px; font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) { .lu-acasa-ghid__capac, .lu-acasa-ghid__cine a { transition: none; } }

/* Recenzii: cardul (pe pagina Recenzii și pe prima pagină) */
.lu-recenzie { break-inside: avoid; margin: 0 0 24px; background: #fff; border-radius: 22px; padding: 28px 28px 24px; box-shadow: 0 14px 34px rgba(43,36,32,.07); position: relative; }
.lu-recenzie::before { content: "“"; position: absolute; right: 22px; top: 6px; font: 400 84px/1 var(--lu-serif); color: var(--lu-crem-2); }
.lu-recenzie__stele { color: var(--lu-mustar); letter-spacing: 3px; font-size: 15px; }
.lu-recenzie blockquote { margin: 10px 0 16px; padding: 0; border: 0; font-family: var(--lu-serif); font-size: 18px; line-height: 1.5; color: var(--lu-inchis); font-style: normal; }
.lu-recenzie--mare { background: var(--lu-banda); }
.lu-recenzie--mare::before { color: rgba(255,248,238,.15); }
.lu-recenzie--mare blockquote { color: var(--lu-crem); font-size: 21px; }
.lu-recenzie--mare figcaption strong { color: var(--lu-crem); }
.lu-recenzie--mare figcaption span { color: rgba(255,248,238,.7); }
.lu-recenzie figcaption { display: flex; flex-direction: column; gap: 2px; }
.lu-recenzie figcaption strong { font-size: 15px; }
.lu-recenzie figcaption span { font-size: 13px; color: var(--lu-gri); }

/* Banda de recenzii de pe prima pagină */
.lu-acasa-recenzii { padding: 88px 0; }
.lu-acasa-recenzii__cap { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: 12px 40px; margin-bottom: 30px; }
.lu-acasa-recenzii__cap h2 { font-size: clamp(30px, 4vw, 48px); line-height: 1.1; margin: 0; }
.lu-acasa-recenzii__grila { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: start; }
.lu-acasa-recenzii__grila .lu-recenzie:nth-child(2) { transform: translateY(26px) rotate(.6deg); }
.lu-acasa-recenzii__grila .lu-recenzie:nth-child(1) { transform: rotate(-.8deg); }
@media (max-width: 900px) { .lu-acasa-recenzii__grila { grid-template-columns: minmax(0, 1fr); } .lu-acasa-recenzii__grila .lu-recenzie { transform: none !important; } }

/* Runda 9: poza de deschidere cu standul Lullula (firma rămâne în cadru) */
.lu-hero__media--standul { object-position: 50% 28%; }

/* ---------- Ciocârlia vie (assets/pasare.js) ----------
 * Logoul din antet: imaginea rămâne pentru așezare și SEO, peste ea stă același logo în SVG,
 * cu pasărea pe bucăți. Fără JavaScript (sau cu „reduce motion”) se vede doar imaginea. */
.lu-logo-viu { position: relative; display: inline-block; line-height: 0; }
.lu-logo-viu.gata > img { visibility: hidden; }
.lu-logo-viu__svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.lu-logo-viu__svg path { fill: #000; }
.lu-logo-viu__art path { stroke: #000; stroke-width: 2; }
.home .lu-logo-viu__pasare { cursor: pointer; }
svg.lu-pasare-viu { overflow: visible; cursor: pointer; }
svg.lu-pasare-viu path { fill: #231F20; }
.lu-pasare-zbor { position: fixed; display: none; pointer-events: none; overflow: visible; z-index: 100000; }
.lu-pasare-zbor path { fill: #000; transition: fill .35s ease; }
.lu-pasare-zbor.pe-inchis path { fill: var(--lu-crem); }

/* Deschiderea: filmulețul vertical din atelier (assets/video). Pe calculator stă într-un cadru, ușor rotit,
 * lângă titlu (ar ieși neclar întins pe toată lățimea); pe mobil umple deschiderea. */
.lu-hero__text { z-index: 2; }
.lu-hero__clip { position: absolute; z-index: 1; top: 50%; right: max(32px, calc((100vw - var(--lu-latime)) / 2 + 48px)); height: min(540px, calc(100% - 80px)); aspect-ratio: 478 / 850; transform: translateY(-50%) rotate(2.5deg); border-radius: 26px; overflow: hidden; border: 6px solid #FFF8EE; box-shadow: 0 30px 60px rgba(0,0,0,.35); background: #2B2420; }
.lu-hero__clip video { width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 900px) {
	.lu-hero:has(.lu-hero__clip) .lu-hero__media { display: none; }
	.lu-hero__clip { inset: 0; height: 100%; width: 100%; aspect-ratio: auto; transform: none; border: 0; border-radius: 0; box-shadow: none; z-index: 0; }
	.lu-hero__clip video { opacity: .85; }
	.lu-hero__umbra { z-index: 1; }
}

/* Pozele noi: pașii de pe acasă și cele două magazine */
.lu-pas img.lu-pas__poza { aspect-ratio: 1 / 1; }
.lu-mag__zbor-poza { width: 100%; height: auto; object-fit: cover; display: block; }

/* Subsolul pe mobil: logo mai mic */
@media (max-width: 900px) { .lu-subsol__logo { height: 40px; } }

/* Cookie-uri: fără butonul plutitor CookieYes; setările se deschid din linkul din subsol (clasa cky-banner-element). */
.cky-btn-revisit-wrapper { display: none !important; }
.lu-subsol__linkuri button.cky-banner-element { background: none; border: 0; padding: 0; color: inherit; font: inherit; cursor: pointer; }
.lu-subsol__linkuri button.cky-banner-element:hover { color: #FFF8EE; }

/* Prima pagină, „Cele mai iubite acum”: același buton cu contur ca în magazin; cardurile au aceeași înălțime pe rând,
   așa că butoanele stau pe aceeași linie. */
.lu-g4 > .lu-produs { height: 100%; }
.lu-produs__jos { margin-top: auto; }
a.lu-produs__cos { display: inline-flex; align-items: center; justify-content: center; padding: 9px 18px; border-radius: 999px; box-shadow: inset 0 0 0 1.5px var(--lu-teracota); font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; line-height: 1.1; transition: background .2s, color .2s; }
a.lu-produs__cos:hover, a.lu-produs__cos:focus-visible { background: var(--lu-teracota); color: #FFF8EE; }
a.lu-produs__cos.loading { opacity: .6; }
.lu-produs__jos .added_to_cart { font-size: 13px; font-weight: 600; color: var(--lu-banda); text-decoration: none; }
@media (max-width: 900px) {
	.lu-produs__jos { align-items: stretch; gap: 6px; }
	a.lu-produs__cos { width: 100%; padding: 10px 4px; font-size: 12px; white-space: nowrap; box-sizing: border-box; }
	.lu-produs__jos .added_to_cart { text-align: center; }
}

/* Pe calculator: în fundal poza cu cele patru căni, puțin mai înaltă ca să încapă toate; filmulețul în ramă, titlul și butonul rămân. */
@media (min-width: 901px) {
	.lu-hero--cani { height: min(760px, 88vh); min-height: 560px; }
	.lu-hero--cani .lu-hero__media { object-position: 50% 62%; }
}

/* Instagram și Facebook: în bara de sus (dreapta) și în subsol. */
.lu-social { display: inline-flex; gap: 6px; align-items: center; }
.lu-social a { display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: 50%; color: inherit; transition: background .2s, color .2s; }
.lu-anunt { position: relative; }
.lu-anunt__social { position: absolute; right: max(10px, calc((100vw - var(--lu-latime)) / 2 + 16px)); top: 50%; transform: translateY(-50%); gap: 2px; }
.lu-anunt__social a { width: 30px; height: 30px; color: #FFF8EE; }
.lu-anunt__social a:hover { background: rgba(255,248,238,.18); }
.lu-subsol__social a { box-shadow: inset 0 0 0 1.5px rgba(216,205,187,.5); width: 40px; height: 40px; }
.lu-subsol__social a:hover { background: #FFF8EE; color: var(--lu-banda); box-shadow: none; }
/* Pe mobil bara de sus rămâne doar cu textul (iconițele sunt în subsol). */
@media (max-width: 900px) { .lu-anunt__social { display: none; } }
/* Poza la opacitate deplină (altfel bate în verdele de dedesubt) și umbră neagră doar în partea de jos, sub titlu. */
.lu-hero--casute .lu-hero__media { opacity: 1; }
.lu-hero--casute .lu-hero__umbra { background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 40%, rgba(0,0,0,.6) 100%); }
@media (min-width: 901px) { .lu-hero--casute .lu-hero__media { object-position: 50% 40%; } }
.lu-hero--casute h1 { text-shadow: 0 2px 22px rgba(0,0,0,.6), 0 1px 3px rgba(0,0,0,.35); }

/* Sigla Netopia: în subsol (rând separat) și sub butonul de plată. */
.lu-netopia { display: inline-flex; background: #fff; border-radius: 8px; padding: 4px 8px; line-height: 0; }
.lu-netopia img { height: 32px; width: auto; display: block; }
.lu-subsol__jos { margin-top: 24px; font-size: 13px; } .lu-subsol__jos > span { opacity: .7; }
.lu-plata-sigura { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 13.5px; margin: 12px 0 0; }
.lu-plata-sigura .lu-netopia { box-shadow: inset 0 0 0 1px var(--lu-crem-2); }

/* Meniu: grupul „Aromaterapie și Spa” evidențiat, cu link spre pagina lui. */
.lu-mega__evidentiat { background: #F7EBD3; border-radius: 14px; padding: 14px 16px 10px; margin: 0 -16px 18px; }
.lu-mega__titlu--link { display: block; text-decoration: none; }
.lu-mega__titlu--link span { display: block; font-family: var(--lu-sans); font-style: normal; font-weight: 600; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--lu-banda); margin-top: 4px; }
.lu-mega__titlu--link:hover span { text-decoration: underline; }
.lu-mob-mega__corp .lu-mega__evidentiat { margin: 8px 0; }

/* Acasă: banda mică spre „Aromaterapie și spa”. */
.lu-acasa-aroma-loc { padding-bottom: 72px; }
.lu-acasa-aroma { display: flex; align-items: center; gap: 28px; background: #F3E3E6; border-radius: 22px; padding: 22px 28px; text-decoration: none; color: var(--lu-inchis); transition: transform .3s; }
.lu-acasa-aroma:hover { transform: translateY(-3px); }
.lu-acasa-aroma__poze { display: flex; flex: 0 0 auto; }
.lu-acasa-aroma__poze img { width: 96px; height: 96px; object-fit: cover; border-radius: 50%; border: 4px solid #FFF8EE; margin-left: -22px; box-shadow: 0 8px 18px rgba(43,36,32,.14); }
.lu-acasa-aroma__poze img:first-child { margin-left: 0; }
.lu-acasa-aroma__text { display: flex; flex-direction: column; gap: 4px; flex: 1 1 auto; }
.lu-acasa-aroma__text .lu-eyebrow { color: var(--lu-teracota); }
.lu-acasa-aroma__text strong { font-size: 30px; font-weight: 500; line-height: 1.1; }
.lu-acasa-aroma__buton { flex: 0 0 auto; }
@media (max-width: 900px) {
	.lu-acasa-aroma-loc { padding-bottom: 48px; }
	.lu-acasa-aroma { flex-direction: column; align-items: flex-start; gap: 14px; padding: 20px; }
	.lu-acasa-aroma__poze img { width: 72px; height: 72px; }
	.lu-acasa-aroma__text strong { font-size: 24px; }
}

/* Contul meu în antet, lângă coș */
.lu-cont { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-right: 4px; color: var(--lu-inchis); border-radius: 50%; transition: color .2s, background-color .2s; }
.lu-cont:hover, .lu-cont:focus-visible { color: var(--lu-banda); background: var(--lu-crem-2); }
.site-header-item:has(> .lu-cont) { display: flex; align-items: center; }
.woocommerce form.login, .woocommerce form.register, .woocommerce form.lost_reset_password { border: 1.5px solid var(--lu-crem-2); border-radius: 16px; }
