/* =====================================================================
   LILVELLE DESIGN SYSTEM  ·  v1 · 19 Oct 2026
   The look of the Lilvelle concept site (lilvelle-concept.sites.tab.bot),
   packaged so it can be layered on top of the live lilvelle.com.

   HOW TO USE
   - Load this file AFTER the site's existing stylesheet (last <link> in <head>,
     or pasted at the very end of the global CSS).
   - Load lilvelle-sky.js as a deferred script at the end of <body>
     (it adds the living sky, butterflies, petals, reveal-on-scroll).
   - Nothing here changes text, links, products or prices. It is styling only.

   SECTIONS
   0. Fonts
   1. Design tokens (colours, type, spacing, motion)
   2. Base (page, type, links)
   3. Reusable components (lv-*)  – for any new section ChatGPT builds
   4. Skin for the existing lilvelle.com markup (header, hero, categories,
      product cards, Chanukah banner, sign-up, footer, inner pages, item page)
   5. The living sky (time of day, clouds, birds, butterflies, petals, meadow)
   6. Reveal-on-scroll + reduced motion
   ===================================================================== */

/* ---------- 0. FONTS ----------------------------------------------------
   Cormorant (display serif, light + italic) and Inter (clean sans for labels).
   Same as <link href="https://fonts.googleapis.com/css2?family=Cormorant:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Inter:wght@400;500;600&display=swap" rel="stylesheet">
   (A <link> in <head> loads faster than this @import; use one or the other.) */
/* ---------- 1. TOKENS --------------------------------------------------- */
:root{
  /* neutrals */
  --lv-paper:#FBF9F5;      /* page background */
  --lv-ivory:#F7F3EC;      /* panels, footer, image wells */
  --lv-ivory-2:#F1EBE1;    /* panel hover */
  --lv-ink:#1D1A17;        /* text, primary buttons, announcement bar */
  --lv-soft:#5E5750;       /* body copy, secondary text */
  --lv-stone:#8C8379;      /* small labels, captions, prices */
  --lv-line:#E3DDD3;       /* hairlines and borders */
  --lv-cream:#EFE9DE;      /* text on dark bands */
  /* accents (one per "world") */
  --lv-navy:#1F2A44;       /* sign-up band, Atelier */
  --lv-blush:#B98A86;      /* Books door */
  --lv-dusk:#5D7690;       /* Ali Finds door */
  --lv-green:#23392F;      /* seasonal / Brand Finds band */
  --lv-berry:#8A3B45;      /* rare emphasis */
  --lv-gilt:#C9A04C;       /* gold lettering */
  --lv-gilt-deep:#B98E3E;
  /* type */
  --lv-serif:"Cormorant","Cormorant Garamond",Georgia,"Times New Roman",serif;
  --lv-sans:"Inter",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --lv-fs-body:15px;  --lv-lh-body:1.65;
  --lv-fs-label:11px; --lv-ls-label:.24em;   /* buttons, nav */
  --lv-fs-eyebrow:11px; --lv-ls-eyebrow:.28em;
  --lv-fs-display:clamp(48px,9vw,128px);     /* page-one headline, weight 300 */
  --lv-fs-h1:clamp(44px,6.5vw,92px);         /* page hero, weight 300 */
  --lv-fs-h2:clamp(34px,4.4vw,62px);         /* section titles, weight 300 */
  --lv-fs-h3:clamp(26px,2.5vw,38px);         /* card / door titles, weight 400 */
  --lv-fs-card:20px;                         /* product name, weight 500 */
  /* spacing (4-pt rhythm) */
  --lv-s1:4px; --lv-s2:8px; --lv-s3:12px; --lv-s4:16px; --lv-s5:24px; --lv-s6:32px; --lv-s7:48px; --lv-s8:72px; --lv-s9:120px;
  --lv-pad:clamp(20px,5vw,72px);             /* page side padding */
  --lv-section:clamp(60px,9vw,130px);        /* vertical section padding */
  --lv-gap:clamp(12px,1.6vw,24px);           /* grid gap */
  --lv-max:1480px;                           /* content width */
  /* shape + motion */
  --lv-radius:0;                             /* everything square… */
  --lv-arch:999px 999px 0 0;                 /* …except arched doorways */
  --lv-ease:cubic-bezier(.2,.7,.2,1);
  --lv-shadow-door:inset 0 0 0 1px rgba(60,45,30,.08),0 34px 46px -26px rgba(45,32,20,.42),0 14px 22px -12px rgba(45,32,20,.20);
  --lv-shadow-lift:0 18px 40px -24px rgba(45,32,20,.35);
}

/* ---------- 2. BASE ----------------------------------------------------- */
html{background:var(--lv-paper);-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:var(--lv-sans);font-size:var(--lv-fs-body);line-height:var(--lv-lh-body);color:var(--lv-ink);-webkit-font-smoothing:antialiased;background:transparent;overflow-x:hidden}
::selection{background:#EADFD2;color:var(--lv-ink)}
h1,h2,h3,h4.lv-serif{font-family:var(--lv-serif)!important;font-weight:400;letter-spacing:-.01em;line-height:1.04}
h1 em,h2 em,h3 em{font-style:italic;font-weight:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:1.5px solid var(--lv-ink);outline-offset:4px}

/* ---------- 3. COMPONENTS (lv-*) ---------------------------------------
   Use these class names for any NEW markup. */
.lv-eyebrow{font-family:var(--lv-sans);font-size:var(--lv-fs-eyebrow);letter-spacing:var(--lv-ls-eyebrow);text-transform:uppercase;font-weight:500;color:var(--lv-soft);margin:0}
.lv-display{font-family:var(--lv-serif);font-size:var(--lv-fs-display);font-weight:300;line-height:1.02}
.lv-h2{font-family:var(--lv-serif);font-size:var(--lv-fs-h2);font-weight:300;line-height:1.04}
.lv-lede{color:var(--lv-soft);font-size:15.5px;max-width:520px}
/* animated underline link: line grows from left on hover */
.lv-ul{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .5s var(--lv-ease)}
.lv-ul:hover{background-size:100% 1px}
/* buttons: square, tiny spaced capitals; letter-spacing opens on hover */
.lv-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--lv-ink);color:var(--lv-paper);font:500 var(--lv-fs-label)/1 var(--lv-sans);letter-spacing:var(--lv-ls-label);text-transform:uppercase;padding:17px 30px;border:0;border-radius:0;cursor:pointer;transition:background .4s,color .4s,letter-spacing .6s var(--lv-ease)}
.lv-btn:hover{letter-spacing:.3em}
.lv-btn--ghost{background:transparent;color:var(--lv-ink);box-shadow:inset 0 0 0 1px var(--lv-ink)}
.lv-btn--ghost:hover{background:var(--lv-ink);color:var(--lv-paper)}
.lv-btn--light{background:var(--lv-cream);color:var(--lv-green)}
.lv-btn--small{padding:11px 20px;font-size:10.5px}
/* "Enter →" text link with a line-arrow that stretches on hover */
.lv-enter{display:inline-flex;align-items:center;gap:10px;font:500 11px/1 var(--lv-sans);letter-spacing:.24em;text-transform:uppercase}
.lv-enter i{display:inline-block;width:22px;height:1px;background:currentColor;position:relative;transition:width .6s var(--lv-ease)}
.lv-enter i::after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
a:hover .lv-enter i,.lv-enter:hover i{width:40px}
/* labels */
.lv-pill{display:inline-block;font:600 9.5px/1 var(--lv-sans);letter-spacing:.26em;text-transform:uppercase;border:1px solid currentColor;padding:6px 10px 6px 12px}
.lv-tag{display:inline-block;font:600 9.5px/1 var(--lv-sans);letter-spacing:.26em;text-transform:uppercase;background:rgba(251,249,245,.92);color:var(--lv-ink);padding:7px 12px}
/* layout */
.lv-section{padding:var(--lv-section) var(--lv-pad);max-width:var(--lv-max);margin:0 auto}
.lv-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border-bottom:1px solid var(--lv-line);padding-bottom:18px;margin-bottom:clamp(20px,3vw,34px)}
.lv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,30px) var(--lv-gap)}
.lv-grid--stagger > :nth-child(4n+2),.lv-grid--stagger > :nth-child(4n+4){margin-top:clamp(0px,5vw,72px)}
/* arched doorway card (used for categories) */
.lv-arch{border-radius:var(--lv-arch);overflow:hidden;background:var(--lv-ivory);aspect-ratio:3/4.2;position:relative;isolation:isolate}
.lv-arch img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 1.4s var(--lv-ease)}
a:hover .lv-arch img{transform:scale(1.1)}
/* product card */
.lv-card{margin:0;display:flex;flex-direction:column;min-width:0}
.lv-card__img{display:block;aspect-ratio:4/5;overflow:hidden;background:var(--lv-ivory)}
.lv-card__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.3s var(--lv-ease)}
.lv-card:hover .lv-card__img img{transform:scale(1.05)}
.lv-card__brand{margin:14px 0 6px;font:500 10px/1.4 var(--lv-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--lv-soft)}
.lv-card__name{font:500 var(--lv-fs-card)/1.15 var(--lv-serif);margin:0 0 6px}
.lv-card__price{font:400 10.5px/1.4 var(--lv-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--lv-stone)}
/* bands */
.lv-band-navy{background:var(--lv-navy);color:#EEE8DD;text-align:center;padding:var(--lv-section) var(--lv-pad)}
.lv-band-green{background:var(--lv-green);color:var(--lv-cream)}
.lv-manifesto{border-top:1px solid var(--lv-line);text-align:center;padding:clamp(56px,8vw,110px) var(--lv-pad)}
.lv-manifesto p{font:300 clamp(26px,3.4vw,46px)/1.22 var(--lv-serif);max-width:900px;margin:18px auto 0}
.lv-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,4vw,60px);counter-reset:s}
.lv-steps > *{border-top:1px solid var(--lv-ink);padding-top:20px}
.lv-steps > *::before{counter-increment:s;content:"0" counter(s);font:italic 20px var(--lv-serif);color:var(--lv-stone)}
@media (max-width:760px){.lv-grid{grid-template-columns:repeat(2,1fr);gap:26px 14px}.lv-steps{grid-template-columns:1fr}.lv-section-head{display:block}}

/* =====================================================================
   4. SKIN FOR THE EXISTING LILVELLE.COM MARKUP
   Targets the class names the live site already uses. Styling only.
   ===================================================================== */
:root{--ink:var(--lv-ink);--paper:var(--lv-paper);--cream:var(--lv-ivory);--plum:var(--lv-ink)}
.cms-editable-section{--section-button-background:var(--lv-ink)!important;--section-button-text:var(--lv-paper)!important}

/* announcement bar → slim ink strip */
.announcement{background:var(--lv-ink)!important;color:#EDE7DC!important;font:500 10.5px/1.4 var(--lv-sans)!important;letter-spacing:.22em!important;padding:9px 16px!important;height:auto!important;position:relative;z-index:21}

/* header → frosted paper, sticky, hairline appears once you scroll */
header{position:sticky!important;top:0;z-index:20!important;background:rgba(251,249,245,.82)!important;-webkit-backdrop-filter:saturate(1.2) blur(14px);backdrop-filter:saturate(1.2) blur(14px);border-bottom:1px solid transparent!important;transition:border-color .4s,background .4s}
html.lv-scrolled header{border-bottom-color:var(--lv-line)!important;background:rgba(251,249,245,.9)!important}
header .topline{background:transparent!important}
.header-search input{font:400 13px var(--lv-sans)!important;color:var(--lv-ink)!important;letter-spacing:.02em}
.header-search{border-bottom:1px solid var(--lv-line)}
header nav{font:500 11px/1 var(--lv-sans)!important;letter-spacing:.2em!important;text-transform:uppercase;color:var(--lv-soft);border-top-color:transparent!important;gap:clamp(18px,2.6vw,40px)}
header nav .nav-entry > a{color:var(--lv-soft);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .5s var(--lv-ease),color .3s;padding:4px 0}
header nav .nav-entry > a:hover,header nav .nav-entry > a[aria-current="page"]{color:var(--lv-ink);background-size:100% 1px}
.nav-dropdown{background:rgba(251,249,245,.97)!important;border:1px solid var(--lv-line)!important;box-shadow:var(--lv-shadow-lift)!important;border-radius:0!important}
.mobile-menu,.mobile-navigation{font-family:var(--lv-sans)!important;letter-spacing:.2em}

/* type */
.eyebrow,.home-categories p,.collection-hero .eyebrow{font:500 11px/1.5 var(--lv-sans)!important;letter-spacing:.28em!important;text-transform:uppercase;color:var(--lv-soft)!important}
p,li,dd,small,input,select,textarea,button{font-family:var(--lv-sans)}
.rich-text p,.item-copy > p:not(.eyebrow),.home-hero p,.updates p,.home-promise{font-family:var(--lv-sans)!important;font-style:normal!important;color:var(--lv-soft)}
.rich-text h2{font:300 clamp(30px,3.4vw,44px)/1.1 var(--lv-serif)!important;color:var(--lv-ink)!important}
.rich-text a{border-bottom-color:var(--lv-ink)!important}

/* buttons (every .button on the site) → ink, square, spaced capitals */
.button,.cms-editable-section .button,.updates.cms-editable-section button,.updates button{background:var(--lv-ink)!important;color:var(--lv-paper)!important;font:500 11px/1 var(--lv-sans)!important;letter-spacing:.24em!important;text-transform:uppercase;padding:17px 30px!important;border:0!important;border-radius:0!important;gap:12px!important;transition:background .4s,color .4s,letter-spacing .6s var(--lv-ease)!important}
.button:hover,.updates button:hover{letter-spacing:.3em!important;background:var(--lv-ink)!important}
.button.secondary{background:transparent!important;color:var(--lv-ink)!important;box-shadow:inset 0 0 0 1px var(--lv-ink)}
.load-more{background:transparent!important;color:var(--lv-ink)!important;border:0!important;box-shadow:inset 0 0 0 1px var(--lv-ink);font:500 10.5px/1 var(--lv-sans)!important;letter-spacing:.24em!important;padding:16px 28px!important;border-radius:0!important;transition:background .35s,color .35s!important}
.load-more:hover{background:var(--lv-ink)!important;color:var(--lv-paper)!important}

/* HOME HERO → the concept's entrance: open over the sky, big light serif headline */
.home-hero{background:transparent!important;min-height:min(78vh,640px)}
.home-hero > div:first-child{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.home-hero h1{font:300 clamp(46px,6vw,92px)/1.02 var(--lv-serif)!important;color:var(--lv-ink)!important;letter-spacing:-.01em;margin:18px 0 0!important}
.home-hero i{display:block;width:1px!important;height:42px;background:linear-gradient(var(--lv-stone),transparent);margin:22px 0!important;animation:lv-cue 2.4s var(--lv-ease) infinite;transform-origin:top}
.home-hero .home-promise{font-size:15.5px!important;line-height:1.65!important;color:var(--lv-soft)!important;max-width:460px}
.home-hero .product-reel,.home-hero .hero-photo,.home-hero .hero-art{border-radius:var(--lv-arch);overflow:hidden;margin:clamp(16px,3vw,40px) var(--lv-pad) clamp(16px,3vw,40px) 0;box-shadow:var(--lv-shadow-door);background:var(--lv-ivory)}
@keyframes lv-cue{0%{transform:scaleY(0)}50%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0}}

/* section headings */
.section-heading{border-bottom:1px solid var(--lv-line);padding-bottom:18px}
.section-heading h2,.center-heading h2,.new-section h2,.category-section h2{font:300 clamp(34px,4.4vw,58px)/1.04 var(--lv-serif)!important;color:var(--lv-ink)!important}

/* CATEGORY CARDS → arched doorways with the title underneath */
.home-categories{gap:clamp(18px,2.4vw,36px) clamp(14px,2vw,28px)!important}
.home-categories > a{display:flex;flex-direction:column;gap:16px;text-align:center;color:var(--lv-ink);background:transparent!important}
.home-categories picture{display:block;border-radius:var(--lv-arch);overflow:hidden;background:var(--lv-ivory);box-shadow:var(--lv-shadow-door);isolation:isolate}
.home-categories img{aspect-ratio:3/4!important;object-fit:cover!important;background:var(--lv-ivory)!important;transform:scale(1.04);transition:transform 1.4s var(--lv-ease)}
.home-categories > a:hover img{transform:scale(1.1)}
.home-categories > a > div{background:transparent!important;padding:0 6px!important;position:static!important}
.home-categories p{font-size:10px!important;letter-spacing:.3em!important;color:var(--lv-stone)!important}
.home-categories h3{font:400 clamp(26px,2.3vw,36px)/1 var(--lv-serif)!important;margin:8px 0 10px!important}
.home-categories span{justify-content:center;font:500 11px/1 var(--lv-sans)!important;letter-spacing:.24em!important;gap:10px!important}
.home-categories span svg{transition:transform .6s var(--lv-ease)}
.home-categories > a:hover span svg{transform:translateX(8px)}
.category-card{background:transparent!important}
.category-card > div:last-child{background:rgba(251,249,245,.9)!important}

/* PRODUCT CARDS → quiet, gallery-like */
.product-grid{gap:clamp(22px,2.4vw,34px) var(--lv-gap)!important}
.product{background:transparent!important}
.product-art{height:auto!important;aspect-ratio:4/5;background:var(--lv-ivory)!important;border-radius:0!important}
.product-art img{transition:transform 1.3s var(--lv-ease)!important}
.product-link:hover .product-art img{transform:scale(1.05)}
.product-art > .product-badge,.product-art > span.product-badge{background:rgba(251,249,245,.92)!important;color:var(--lv-ink)!important;font:600 9.5px/1 var(--lv-sans)!important;letter-spacing:.26em!important;text-transform:uppercase;padding:7px 12px!important;border-radius:0!important}
.product-info{padding-top:14px!important;gap:12px!important;flex-wrap:wrap}
.product-info h3{font:500 19px/1.18 var(--lv-serif)!important;color:var(--lv-ink);letter-spacing:0}
.product-info p,.product-info strong{font:400 10.5px/1.4 var(--lv-sans)!important;letter-spacing:.2em!important;text-transform:uppercase;color:var(--lv-stone)!important}
.view-item{margin-top:12px;background:transparent!important;border:0!important;box-shadow:inset 0 0 0 1px var(--lv-ink);color:var(--lv-ink)!important;font:500 10.5px/1 var(--lv-sans)!important;letter-spacing:.24em!important;padding:12px 16px!important;border-radius:0!important;transition:background .35s,color .35s!important}
.product-link:hover .view-item{background:var(--lv-ink)!important;color:var(--lv-paper)!important}
.wishlist-heart{border-color:rgba(29,26,23,.12)!important;color:var(--lv-ink)!important;background:rgba(255,255,255,.92)!important}
.wishlist-heart:hover{color:var(--lv-berry)!important}
.past-season-badge{font:600 9px/1 var(--lv-sans)!important;letter-spacing:.24em}

/* CHANUKAH / SEASONAL BANNER → deep green band with gold numerals */
.seasonal-campaign{background:var(--lv-green)!important;border:0!important;color:var(--lv-cream);border-radius:0!important}
.seasonal-campaign .eyebrow,.seasonal-campaign p,.seasonal-campaign small{color:rgba(239,233,222,.82)!important}
.seasonal-campaign h2{font:300 clamp(34px,4vw,56px)/1.06 var(--lv-serif)!important;color:var(--lv-cream)!important}
.seasonal-countdown strong{font:italic 400 clamp(52px,6vw,76px)/1 var(--lv-serif)!important;color:var(--lv-gilt)!important;text-shadow:0 1px 0 rgba(90,60,15,.35)}
.seasonal-countdown span{color:rgba(239,233,222,.82);font:500 10.5px/1.4 var(--lv-sans);letter-spacing:.24em;text-transform:uppercase}
.seasonal-campaign .button{background:var(--lv-cream)!important;color:var(--lv-green)!important}
.seasonal-campaign .seasonal-motifs{opacity:.35;filter:brightness(1.6) saturate(.6)}

/* SIGN-UP → navy band, underline-only inputs */
.updates{background:var(--lv-navy)!important;color:#EEE8DD!important;border-radius:0!important}
.updates h2,.updates h3{color:#EEE8DD!important;font-weight:300!important}
.updates h2{font:300 clamp(36px,4.6vw,64px)/1.05 var(--lv-serif)!important}
.updates .eyebrow,.updates p,.updates small,.updates span{color:rgba(238,232,221,.78)!important}
.updates input{background:transparent!important;border:0!important;border-bottom:1px solid rgba(238,232,221,.55)!important;color:#EEE8DD!important;font:400 16px var(--lv-sans)!important;border-radius:0!important}
.updates input::placeholder{color:rgba(238,232,221,.55)}
.updates button{background:var(--lv-cream)!important;color:var(--lv-navy)!important}
.updates .whatsapp{border-left:1px solid rgba(238,232,221,.18)}
.updates .whatsapp a,.whatsapp a{border:1px solid rgba(238,232,221,.7)!important;color:#EEE8DD!important;font:500 10.5px/1 var(--lv-sans)!important;letter-spacing:.22em!important;padding:13px 18px!important;transition:background .35s,color .35s}
.updates .whatsapp a:hover{background:#EEE8DD;color:var(--lv-navy)!important}

/* FOOTER → ivory, hairlines, tiny spaced headings */
.cms-footer,footer{background:var(--lv-ivory)!important;color:var(--lv-soft)!important;font:400 13px/1.7 var(--lv-sans)!important;position:relative;z-index:1}
.cms-footer h4{font:600 10.5px/1.4 var(--lv-sans)!important;letter-spacing:.26em!important;color:var(--lv-ink)!important}
.cms-footer a{color:var(--lv-soft);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .5s var(--lv-ease),color .3s}
.cms-footer a:hover{color:var(--lv-ink);background-size:100% 1px}
.footer-brand > p{font:italic 300 19px/1.45 var(--lv-serif)!important;color:var(--lv-soft)!important}
.cms-footer .copyright{border-top:1px solid var(--lv-line);color:var(--lv-stone);font-size:11.5px}

/* INNER PAGES: category / collection hero → calm, centred, light serif */
.page-hero,.collection-hero{background:rgba(251,249,245,.55)!important}
.page-hero h1,.collection-hero h1,.collection-copy h1{font:300 clamp(46px,7vw,104px)/1.02 var(--lv-serif)!important;color:var(--lv-ink)!important}
.collection-hero > picture img{background:transparent!important}
.collection-hero > div > span{display:block;width:1px;height:36px;margin:18px auto;background:linear-gradient(var(--lv-stone),transparent)}
.collection-hero p:not(.eyebrow),.page-hero p:not(.eyebrow){color:var(--lv-soft)!important;font:400 15.5px/1.65 var(--lv-sans)!important}
.catalogue{background:transparent!important}
.catalogue-filters summary{font:500 11px/1 var(--lv-sans);letter-spacing:.24em;text-transform:uppercase}
.catalogue-tools label{font:500 10px/1.4 var(--lv-sans)!important;letter-spacing:.22em!important;color:var(--lv-stone)}
.catalogue-tools input,.catalogue-tools select{background:rgba(255,255,255,.7)!important;border:1px solid var(--lv-line)!important;border-radius:0!important;font:400 14px var(--lv-sans)!important;color:var(--lv-ink);padding:12px 12px}

/* ITEM PAGE */
.item-gallery picture,.item-gallery img,.item-image{background:var(--lv-ivory)!important;border-radius:0!important}
.item-copy h1{font:300 clamp(36px,4vw,58px)/1.05 var(--lv-serif)!important}
.item-price,.item-price strong{font:400 13px/1.4 var(--lv-sans)!important;letter-spacing:.2em;text-transform:uppercase;color:var(--lv-soft)}
.item-copy dl div{border-bottom-color:var(--lv-line)!important}
.item-copy dt{font:500 10px/1.6 var(--lv-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--lv-stone)}
.item-subtitle,.item-season-label{font:500 10.5px/1.4 var(--lv-sans)!important;letter-spacing:.24em!important;text-transform:uppercase;color:var(--lv-stone)!important}

/* ALI SHOPS + collections → ivory panels that lift on hover */
.ali-shop-grid > a,.ali-season-grid > a{background:rgba(247,243,236,.9)!important;border:0!important;border-radius:0!important;transition:transform .8s var(--lv-ease),background .6s,box-shadow .6s!important}
.ali-shop-grid > a:hover,.ali-season-grid > a:not(.ali-back-link):hover{transform:translateY(-6px)!important;background:var(--lv-ivory-2)!important;box-shadow:var(--lv-shadow-lift)!important}
.ali-collection-card{border-radius:0!important}
.ali-collection-card h2{font:400 30px/1.05 var(--lv-serif)!important}
.ali-shop-grid span,.ali-season-grid span,.ali-collection-card span{font:500 10px/1.4 var(--lv-sans)!important;letter-spacing:.24em!important}

/* dialogs / popup + wishlist sheet */
.promo-dialog,.wishlist-sheet{border-radius:0!important;font-family:var(--lv-sans)}
.promo-dialog h2,.wishlist-sheet h2{font-family:var(--lv-serif)!important;font-weight:300!important}



/* ---- fixes found while testing on the live pages ---- */
header nav{font-size:10.5px!important;letter-spacing:.17em!important;gap:clamp(14px,1.9vw,30px)!important;flex-wrap:nowrap;padding:0 var(--lv-pad)}
@media (max-width:760px){
  header{position:relative!important}  /* tall mobile header: don't pin it */
  .announcement{font-size:9.5px!important;letter-spacing:.14em!important}
}
.home-categories > a::after{display:none!important}
.home-categories > a > div{position:static!important;color:var(--lv-ink)!important;padding:0 6px!important}
.home-categories h3{color:var(--lv-ink)!important}
.home-categories span{color:var(--lv-ink)!important}
.home-categories picture{box-shadow:0 22px 30px -24px rgba(45,32,20,.4)!important}
.home-categories > a{background:none!important;box-shadow:none!important}
.home-categories picture,.home-categories picture img{height:auto!important}
.product-art{padding:0!important;border:0!important;background:#fff!important;position:relative}
.product-art > picture,.product-art picture.product-primary{position:absolute!important;inset:0;width:100%!important;height:100%!important;display:block;margin:0!important;padding:0!important}
.product-art > picture img,.product-art picture.product-primary img{width:100%!important;height:100%!important;object-fit:cover}
.product-art .source-corner{border-radius:0!important;box-shadow:0 1px 0 var(--lv-line)}
input,select,textarea{letter-spacing:normal!important;text-transform:none}
.collection-hero > div,.page-hero > div{background:transparent!important}

/* mobile */
@media (max-width:760px){
  .home-hero{min-height:0}
  .home-hero > div:first-child{align-items:center;text-align:center!important}
  .home-hero h1{font-size:clamp(44px,12vw,58px)!important}
  .home-hero i{margin:18px auto!important}
  .home-hero .product-reel,.home-hero .hero-photo,.home-hero .hero-art{margin:0 22px 28px}
  .home-categories{grid-template-columns:repeat(2,minmax(0,1fr))!important;row-gap:36px!important}
  .home-categories h3{font-size:26px!important}
  .home-categories span{font-size:10px!important}
  .product-grid{gap:26px 14px!important}
  .product-info h3{font-size:16.5px!important}
  .view-item{font-size:9.5px!important;padding:10px 8px!important;letter-spacing:.2em!important}
  .section-heading{display:block!important}
  .section-heading .button{margin-top:16px}
  .updates .whatsapp{border-left:0;border-top:1px solid rgba(238,232,221,.18)}
  .button{padding:15px 24px!important}
}

/* ---- continuous sky on public pages + responsive page-shell fixes ---- */
html,body,body>main,body>div,main{max-width:100%;min-width:0}
html,body{overflow-x:clip}
header,.topline,header nav,main>section{max-width:100%;min-width:0}
header nav{width:100%;justify-content:safe center!important;overflow-x:auto;scrollbar-width:none}
header nav::-webkit-scrollbar{display:none}
header nav .nav-entry{flex:0 0 auto}
.page-hero,.collection-hero,.ali-shops-page,.collection-page,.category-section,.new-section,.home-trust,.home-social,.content-page,.guide-grid,.guide-page,.item-page,.story{background:rgba(251,249,245,.16)!important}
.about-how{background:rgba(251,249,245,.38)!important}
html[data-lv-sky="night"] .page-hero,html[data-lv-sky="night"] .collection-hero,html[data-lv-sky="night"] .ali-shops-page,html[data-lv-sky="night"] .category-section,html[data-lv-sky="night"] .new-section,html[data-lv-sky="night"] .home-trust,html[data-lv-sky="night"] .home-social{background:rgba(248,246,250,.24)!important}
.collection-hero{width:100%;max-width:100%;grid-template-columns:minmax(0,44%) minmax(0,56%);overflow:hidden}
.collection-hero>picture{width:100%!important;min-width:0;background:transparent!important}
.collection-hero>picture img{width:100%!important;max-width:100%;background:transparent!important}
.collection-hero>div{min-width:0;padding:clamp(34px,4.5vw,62px)!important}
.collection-hero h1{max-width:100%;font-size:clamp(42px,5.35vw,78px)!important;overflow-wrap:break-word}
.catalogue-tools,.contact-form{background:rgba(251,249,245,.68)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-color:rgba(227,221,211,.82)!important}
.ali-shop-grid>a,.ali-season-grid>a:not(.ali-back-link){background:rgba(247,243,236,.7)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
@media (max-width:800px){
  .collection-hero{grid-template-columns:minmax(0,1fr)}
  .collection-hero>div{padding:32px 7vw 42px!important}
  .collection-hero h1{font-size:clamp(40px,11vw,62px)!important}
}

/* visitor-selectable time of day, tucked into the top-right of the header */
.lv-sky-mode{position:absolute;z-index:8;top:8px;right:clamp(9px,2vw,28px);display:flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid rgba(140,131,121,.42);background:rgba(251,249,245,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--lv-soft);font:500 9px/1 var(--lv-sans);letter-spacing:.16em;text-transform:uppercase;box-shadow:0 8px 24px -18px rgba(29,26,23,.55)}
.lv-sky-mode>span{pointer-events:none}
.lv-sky-mode select{width:auto;min-width:58px;border:0!important;outline:0;background:transparent!important;color:var(--lv-ink)!important;padding:0!important;font:600 9px/1.2 var(--lv-sans)!important;letter-spacing:.12em!important;text-transform:uppercase!important;cursor:pointer}
.lv-sky-mode select:focus-visible{outline:1px solid var(--lv-ink)!important;outline-offset:3px}
@media (max-width:760px){
  .lv-sky-mode{top:5px;right:6px;padding:4px 6px}
  .lv-sky-mode>span{display:none}
  .lv-sky-mode select{min-width:54px;font-size:8px!important}
}

/* the verified House of Lilvelle doorway transition, adapted to wardrobe cards */
.home-categories>a.lv-door-card{position:relative!important;overflow:visible!important;isolation:isolate;perspective:1600px}
.home-categories>a.lv-door-card .lv-door-opening{position:absolute;z-index:0;top:0;left:0;width:100%;aspect-ratio:3/4;border-radius:var(--lv-arch);overflow:hidden;opacity:0;background:radial-gradient(120% 82% at 50% 60%,#fffdf5 0%,#fbebc4 48%,#f0cf8c 100%);box-shadow:inset 0 0 0 1px rgba(185,142,62,.34),0 28px 42px -26px rgba(45,32,20,.38);transition:opacity .45s ease,box-shadow .7s ease}
.home-categories>a.lv-door-card .lv-door-opening::before{content:"";position:absolute;inset:-22%;opacity:0;transform:scale(.58);background:radial-gradient(closest-side at 50% 58%,#fff 0%,#fff6da 30%,#fbe2a4 62%,rgba(246,206,128,0) 100%);transition:opacity .55s ease,transform .8s var(--lv-ease)}
.home-categories>a.lv-door-card picture{position:relative;z-index:1;width:100%;aspect-ratio:3/4;height:auto!important;transform-origin:left center;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform;transition:transform .9s var(--lv-ease),box-shadow .9s var(--lv-ease)}
.home-categories>a.lv-door-card picture img{width:100%!important;height:100%!important;aspect-ratio:auto!important}
@media (hover:hover){
  .home-categories>a.lv-door-card:hover picture,.home-categories>a.lv-door-card:focus-visible picture{transform:translateY(-5px) rotateY(13deg);box-shadow:inset 0 0 0 1px rgba(60,45,30,.08),-14px 24px 34px -22px rgba(45,32,20,.46)}
  .home-categories>a.lv-door-card:hover .lv-door-opening{opacity:.16}
}
.home-categories>a.lv-door-card.lv-entering{pointer-events:none}
.home-categories>a.lv-door-card.lv-entering .lv-door-opening{opacity:1;box-shadow:inset 0 0 0 1px rgba(185,142,62,.34),0 0 46px 14px rgba(255,214,140,.55),0 0 110px 40px rgba(255,236,190,.4),0 34px 46px -26px rgba(45,32,20,.3)}
.home-categories>a.lv-door-card.lv-entering .lv-door-opening::before{opacity:1;transform:scale(1.15)}
.home-categories>a.lv-door-card.lv-entering picture{animation:lv-door-swing .8s cubic-bezier(.5,.05,.3,1) forwards!important;box-shadow:inset 0 0 0 1px rgba(60,45,30,.08),-30px 0 40px rgba(120,80,20,.25)!important}
.home-categories>a.lv-door-card.lv-entering picture img{transform:scale(1.03)!important}
@keyframes lv-door-swing{to{transform:rotateY(98deg)}}

/* =====================================================================
   5. THE LIVING SKY (built by lilvelle-sky.js)
   A fixed layer behind the page. Its colours follow the visitor's local
   time: morning (soft lilac-pink), day (pale blue), sunset (peach-rose),
   night (navy with a moon and twinkling stars). Clouds drift sideways,
   two birds glide across now and then (not at night), two pastel
   butterflies wander at the edges, a few blossom petals fall and tumble,
   and a soft grass meadow sways along the bottom. A paper "veil" keeps
   it gentle so products stay easy to read. Transform/opacity only.
   ===================================================================== */
:root,html[data-lv-sky="day"]{--lv-g1:#AFD0EC;--lv-g2:#CDE2F3;--lv-g3:#E8F1F5;--lv-g4:#F6F1E8;--lv-g5:#F9EBE3;--lv-g6:#F6E2DC;
  --lv-cloud:#fff;--lv-cloudsh:#DCE3EE;--lv-cl-o:1;--lv-gr0:#D7E3C8;--lv-gr1:#C6D6B5;--lv-gr2:#CFDDBF;--lv-gr3:#BFD2AC;
  --lv-sun:rgba(255,250,236,.88);--lv-sun2:rgba(255,248,232,.35);--lv-bird:#6E7280;--lv-pt-o:.9}
html[data-lv-sky="morning"]{--lv-g1:#C9DDF1;--lv-g2:#DCE3F3;--lv-g3:#EDE6F2;--lv-g4:#F9E9EA;--lv-g5:#FCEDE3;--lv-g6:#FBE4DA;
  --lv-cloud:#FFFBFA;--lv-cloudsh:#EBDCE6;--lv-gr0:#D8E5CB;--lv-gr1:#C9D9B8;--lv-gr2:#D3E0C4;--lv-gr3:#C3D5B0;
  --lv-sun:rgba(255,238,224,.95);--lv-sun2:rgba(255,226,214,.4)}
html[data-lv-sky="sunset"]{--lv-g1:#B9B8DE;--lv-g2:#D9BCD8;--lv-g3:#EFC3CC;--lv-g4:#F8CDBA;--lv-g5:#FBDDBE;--lv-g6:#FCE8D3;
  --lv-cloud:#FFEDE6;--lv-cloudsh:#E7B9C4;--lv-gr0:#D3D7B4;--lv-gr1:#C5CBA4;--lv-gr2:#CDD2AD;--lv-gr3:#BCC59C;
  --lv-sun:rgba(255,228,186,.98);--lv-sun2:rgba(255,196,170,.45);--lv-bird:#7A6676}
html[data-lv-sky="night"]{--lv-g1:#25335C;--lv-g2:#34447A;--lv-g3:#4D5C92;--lv-g4:#7378AC;--lv-g5:#A09CC4;--lv-g6:#C3B4D0;
  --lv-cloud:#D9DBF2;--lv-cloudsh:#8D93C2;--lv-cl-o:.42;--lv-gr0:#8C9FA6;--lv-gr1:#7E929B;--lv-gr2:#879AA2;--lv-gr3:#74898F;--lv-pt-o:.55}
html.lv-has-sky{background:var(--lv-g5)}
html.lv-has-sky body{background:transparent!important}
.lv-sky{position:fixed;left:0;right:0;top:0;height:100vh;height:100lvh;z-index:-1;pointer-events:none;overflow:hidden;contain:strict;
  background:linear-gradient(180deg,var(--lv-g1) 0%,var(--lv-g2) 24%,var(--lv-g3) 44%,var(--lv-g4) 66%,var(--lv-g5) 84%,var(--lv-g6) 100%);transition:opacity 1.2s ease}
html.lv-sky-swap .lv-sky{opacity:.15}
.lv-sky .lv-ck{stop-color:var(--lv-cloud)}.lv-sky .lv-cks{stop-color:var(--lv-cloudsh)}
.lv-sun{position:absolute;right:-12vw;top:-18vh;width:70vw;height:70vw;max-width:900px;max-height:900px;border-radius:50%;background:radial-gradient(closest-side,var(--lv-sun),var(--lv-sun2) 45%,rgba(255,248,232,0))}
html[data-lv-sky="morning"] .lv-sun{right:auto;left:-22vw;top:16vh}
html[data-lv-sky="sunset"] .lv-sun{right:-14vw;top:auto;bottom:-14vh;width:95vw;height:95vw;max-width:1100px;max-height:1100px}
html[data-lv-sky="night"] .lv-sun{display:none}
.lv-layer{position:absolute;inset:0;will-change:transform}
.lv-layer.lv-near,.lv-meadow{opacity:.8}
.lv-cloud{position:absolute;left:var(--x);top:var(--y);width:var(--w);opacity:calc(var(--o,.9) * var(--lv-cl-o,1));will-change:transform;animation:lv-drift var(--d) linear infinite;animation-delay:calc(var(--d) * var(--p) * -1)}
.lv-cloud svg{display:block;width:100%;height:auto;overflow:visible}
@keyframes lv-drift{from{transform:translate3d(calc(-1 * var(--x) - 100%),0,0)}to{transform:translate3d(calc(100vw - var(--x)),0,0)}}
.lv-c1{--x:62vw;--y:5vh;--w:clamp(150px,22vw,360px);--o:.78;--d:170s;--p:.55}
.lv-c2{--x:8vw;--y:31vh;--w:clamp(170px,24vw,400px);--o:.74;--d:190s;--p:.2}
.lv-c3{--x:4vw;--y:11vh;--w:clamp(220px,32vw,540px);--o:.96;--d:125s;--p:.12}
.lv-c5{--x:30vw;--y:70vh;--w:clamp(270px,40vw,680px);--o:1;--d:95s;--p:.4}
@media (min-width:900px){.lv-c1{--d:260s}.lv-c2{--d:300s}.lv-c3{--d:190s}.lv-c5{--d:150s}}
/* night: soft moon + twinkling stars */
.lv-moon,.lv-moon-glow,.lv-stars{display:none}
html[data-lv-sky="night"] .lv-moon,html[data-lv-sky="night"] .lv-moon-glow,html[data-lv-sky="night"] .lv-stars{display:block}
.lv-stars{position:absolute;inset:0}
.lv-st{position:absolute;width:2px;height:2px;border-radius:50%;background:#FFF9E8;box-shadow:0 0 4px 1px rgba(255,246,220,.55);opacity:.75;animation:lv-twinkle var(--tw) ease-in-out var(--td) infinite alternate;will-change:opacity}
.lv-st.lv-big{width:3px;height:3px;box-shadow:0 0 6px 2px rgba(255,246,220,.6)}
@keyframes lv-twinkle{0%{opacity:.95}55%{opacity:.35}100%{opacity:.85}}
.lv-moon{position:absolute;right:11vw;top:max(15vh,156px);width:clamp(38px,4.2vw,64px);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle at 38% 36%,#FFFDF4 0,#FBF1D6 55%,#EFE0BC 100%);
  box-shadow:0 0 18px 4px rgba(255,244,214,.45),0 0 60px 18px rgba(214,210,255,.18);animation:lv-moonfloat 14s ease-in-out infinite alternate}
.lv-moon::after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 78% 30%,rgba(84,92,150,.36) 0,rgba(84,92,150,.2) 34%,rgba(84,92,150,0) 60%)}
.lv-moon-glow{position:absolute;right:-3vw;top:calc(max(15vh,156px) - 14vw);width:32vw;height:32vw;max-width:420px;max-height:420px;border-radius:50%;background:radial-gradient(closest-side,rgba(232,228,255,.32),rgba(232,228,255,0))}
@keyframes lv-moonfloat{from{transform:translateY(0)}to{transform:translateY(8px)}}
/* birds */
.lv-bird{position:absolute;left:-60px;top:var(--y);width:var(--s);will-change:transform;animation:lv-glide var(--d) linear infinite;animation-delay:var(--dl)}
.lv-bird-y{animation:lv-bob 5s ease-in-out infinite alternate}
.lv-bird svg{display:block;width:100%;height:auto;overflow:visible}
.lv-bw{stroke:var(--lv-bird);transform-box:view-box;transform-origin:50% 58%}
html[data-lv-sky="night"] .lv-birds{display:none}
.lv-bwl{animation:lv-flapL 1.1s ease-in-out infinite alternate}
.lv-bwr{animation:lv-flapR 1.1s ease-in-out infinite alternate}
.lv-k1{--y:13vh;--s:20px;--d:38s;--dl:-9s}
.lv-k2{--y:16vh;--s:14px;--d:38s;--dl:-8.2s}
@keyframes lv-glide{0%{transform:translate3d(0,0,0)}42%{transform:translate3d(calc(100vw + 120px),-5vh,0)}100%{transform:translate3d(calc(100vw + 120px),-5vh,0)}}
@keyframes lv-bob{from{transform:translateY(0)}to{transform:translateY(10px)}}
@keyframes lv-flapL{from{transform:rotate(-14deg)}to{transform:rotate(16deg)}}
@keyframes lv-flapR{from{transform:rotate(14deg)}to{transform:rotate(-16deg)}}
/* petals */
.lv-petals{position:absolute;inset:0}
.lv-pt{position:absolute;left:var(--x);top:-6vh;width:var(--s);opacity:var(--lv-pt-o,.9);will-change:transform;animation:lv-petalfall var(--d) linear var(--dl) infinite}
.lv-pt-s{animation:lv-petalsway var(--sw) ease-in-out var(--sd) infinite alternate}
.lv-pt svg{display:block;width:100%;height:auto;overflow:visible}
@keyframes lv-petalfall{from{transform:translate3d(0,0,0) rotate(0deg)}to{transform:translate3d(var(--dx),114vh,0) rotate(320deg)}}
@keyframes lv-petalsway{0%{transform:translateX(-14px) rotate(-28deg) scaleX(1)}50%{transform:translateX(4px) rotate(8deg) scaleX(.45)}100%{transform:translateX(16px) rotate(30deg) scaleX(1)}}
/* butterflies: pastel, wings beating, wandering slowly at the side margins */
.lv-flutter{position:absolute;inset:0;pointer-events:none}
.lv-bf{position:absolute;left:var(--x);top:var(--y);width:var(--s);will-change:transform;animation:var(--path) var(--d) ease-in-out infinite;animation-delay:var(--dl,0s)}
.lv-bf-f{animation:lv-flit 1.6s ease-in-out infinite alternate}
.lv-bf svg{display:block;width:100%;height:auto;overflow:visible}
.lv-bf .lv-wl,.lv-bf .lv-wr{transform-box:view-box;transform-origin:50% 50%;animation:lv-wing .32s ease-in-out infinite alternate}
.lv-bf1{--x:2vw;--y:40vh;--s:30px;--d:34s;--path:lv-wanderL;--w1:#F2DDA0;--w2:#F6E7BC}
.lv-bf2{--x:91vw;--y:62vh;--s:28px;--d:38s;--path:lv-wanderR;--dl:-7s;--w1:#EFC3C4;--w2:#F5D9D7}
html[data-lv-sky="night"] .lv-bf{--w1:#F6EBC8;--w2:#E9E1F6}
@keyframes lv-wing{from{transform:scaleX(1)}to{transform:scaleX(.18)}}
@keyframes lv-flit{from{transform:translateY(-3px) rotate(-6deg)}to{transform:translateY(4px) rotate(7deg)}}
@keyframes lv-wanderL{0%,100%{transform:translate3d(0,0,0) rotate(8deg)}25%{transform:translate3d(6vw,-7vh,0) rotate(18deg)}50%{transform:translate3d(10vw,4vh,0) rotate(2deg)}75%{transform:translate3d(4vw,12vh,0) rotate(-12deg)}}
@keyframes lv-wanderR{0%,100%{transform:translate3d(0,0,0) rotate(-10deg)}25%{transform:translate3d(-6vw,-8vh,0) rotate(-20deg)}50%{transform:translate3d(-9vw,5vh,0) rotate(-2deg)}75%{transform:translate3d(-3vw,13vh,0) rotate(12deg)}}
@media (max-width:760px){.lv-bf1{--x:1vw}.lv-bf2{--x:84vw}}
/* meadow */
.lv-meadow{position:absolute;left:-4%;right:-4%;bottom:0;height:clamp(50px,5.6vw,82px)}
.lv-meadow svg{position:absolute;left:0;bottom:0;width:100%;height:100%;overflow:visible;transform-origin:50% 100%;will-change:transform}
.lv-gr0{fill:var(--lv-gr0)}.lv-gr1{fill:var(--lv-gr1)}.lv-gr2{fill:var(--lv-gr2)}.lv-gr3{fill:var(--lv-gr3)}
.lv-g-front .lv-gr0{fill:var(--lv-gr3)}
.lv-g-back{opacity:.75;animation:lv-sway 7s ease-in-out infinite alternate}
.lv-g-front{height:86%!important;animation:lv-sway 5.5s ease-in-out -2s infinite alternate-reverse}
@keyframes lv-sway{from{transform:skewX(-2.2deg)}to{transform:skewX(2.2deg)}}
/* the paper veil that keeps the sky soft behind products */
.lv-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(251,249,245,.18) 0%,rgba(251,249,245,.42) 30%,rgba(251,249,245,.56) 60%,rgba(251,249,245,.5) 100%)}
html[data-lv-sky="night"] .lv-veil{background:linear-gradient(180deg,rgba(247,244,250,.2) 0%,rgba(247,244,250,.6) 28%,rgba(248,246,250,.76) 55%,rgba(248,246,250,.74) 100%)}

/* ---------- 6. REVEAL ON SCROLL + REDUCED MOTION ------------------------
   lilvelle-sky.js adds .lv-reveal to sections and .lv-in when they enter
   the screen: a 1.1s fade-up of 26px. Fails open (no JS = visible). */
html.lv-js .lv-reveal:not(.lv-in){opacity:0;transform:translateY(26px)}
html.lv-js .lv-reveal{transition:opacity 1.1s var(--lv-ease),transform 1.1s var(--lv-ease)}
@media (prefers-reduced-motion:reduce){
  .lv-sky *,.lv-sky{animation:none!important;transition:none!important}
  html.lv-js .lv-reveal{opacity:1!important;transform:none!important}
  .home-hero i{animation:none!important}
  .home-categories>a.lv-door-card picture{animation:none!important;transform:none!important}
}

/* Product rows share their full height: names can wrap without moving prices or actions. */
.cms-product-grid{align-items:stretch!important}
.cms-product-grid > .product{display:flex;flex-direction:column;align-self:stretch;min-width:0}
.cms-product-grid > .product > .product-link{display:flex;flex:1;flex-direction:column;min-width:0;height:100%}
.cms-product-grid > .product > .product-link > .product-art{flex:0 0 auto;width:100%;box-sizing:border-box}
.cms-product-grid .product-info{display:flex!important;flex:1;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;flex-wrap:nowrap!important;min-width:0}
.cms-product-grid .product-info > div{flex:1;min-width:0}
.cms-product-grid .product-info h3{overflow-wrap:anywhere}
.cms-product-grid .product-info > strong{flex:0 0 auto;display:block;margin-top:0!important}
.cms-product-grid .view-item{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;box-sizing:border-box;width:100%}

/* Homepage door captions align even when one tagline wraps onto extra lines. */
.home-categories{align-items:stretch!important}
.home-categories > a > div{flex:1;display:flex;flex-direction:column;align-items:center}
.home-categories > a > div > span:last-child{margin-top:auto}
@supports (grid-template-rows:subgrid){
  .home-categories{row-gap:12px!important}
  .home-categories > a{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:12px!important;padding-bottom:24px}
  .home-categories > a > div{display:contents}
  .home-categories > a > div > p{margin:0!important;align-self:start;line-height:1.5}
  .home-categories > a > div > h3{margin:0!important;align-self:start}
  .home-categories > a > div > span:last-child{margin-top:0;align-self:end}
}

/* Collection portraits share the soft arched framing of the homepage doors. */
.page-hero.collection-hero{
  height:auto;min-height:0!important;box-sizing:border-box;
  grid-template-columns:minmax(220px,340px) minmax(0,560px);
  justify-content:center;align-items:center;gap:clamp(28px,6vw,88px);
  padding:40px 7vw 52px;overflow:hidden;
}
.page-hero.collection-hero > picture{
  display:block;justify-self:center;width:100%!important;max-width:340px;
  height:auto!important;aspect-ratio:4/5;min-height:0!important;
  border-radius:48% 48% 18px 18px;overflow:hidden;
  background:#fbf7f2!important;border:6px solid #fbf7f2;
  box-sizing:border-box;box-shadow:0 8px 30px #60463612,0 0 0 1px #d9cbbd80;
}
.page-hero.collection-hero > picture img{
  display:block;width:100%;height:100%;object-fit:cover!important;
  object-position:center;-webkit-mask-image:none!important;mask-image:none!important;
}
.page-hero.collection-hero > div{padding:16px 0!important;text-align:center}
.page-hero.collection-hero h1{font-size:clamp(44px,5vw,68px)!important;line-height:1.08!important;margin:12px 0}
.page-hero.collection-hero > div > span{height:24px;margin:18px auto}
.page-hero.collection-hero p:not(.eyebrow){max-width:480px;margin-left:auto;margin-right:auto}
.page-hero.collection-hero.collection-hero--text-only{grid-template-columns:minmax(0,700px);padding:40px 7vw}
.bundle-hero .bundle-collage{
  transform:none;border-radius:28% 28% 18px 18px;overflow:hidden;
  border:1px solid #d9cbbd80;background:#fbf7f2;
}
@media(max-width:800px){
  .page-hero.collection-hero{grid-template-columns:minmax(0,1fr);padding:28px 7vw 36px;gap:20px}
  .page-hero.collection-hero > picture{width:70vw!important;max-width:260px;height:auto!important}
  .page-hero.collection-hero > div{padding:0!important}
  .page-hero.collection-hero h1{font-size:clamp(40px,10vw,54px)!important}
  .page-hero.collection-hero > div > span{height:18px;margin:14px auto}
}

/* Alternate product photos fill the same card viewport as the primary photo. */
.product-art > img.product-hover{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none;max-height:none;object-fit:cover!important;padding:0!important;margin:0!important;box-sizing:border-box;background:#fff}

/* Keep the first photo underneath until its alternate has loaded and decoded. */
.product-art > img.product-hover{opacity:0!important;transition:opacity .22s ease!important}
.product-link:hover .product-art > img.product-hover.is-ready,.product-link:focus-visible .product-art > img.product-hover.is-ready{opacity:1!important}
.product-link:hover .product-art > .product-primary{opacity:1!important}

/* Keep the full menu and hero within the viewport at desktop and laptop widths. */
header nav.main-navigation{width:100%;box-sizing:border-box;padding-left:clamp(12px,2vw,32px)!important;padding-right:clamp(12px,2vw,32px)!important;gap:clamp(8px,.9vw,18px)!important;font-size:clamp(8px,.66vw,11px)!important;letter-spacing:.1em!important;justify-content:center;flex-wrap:nowrap}
header nav.main-navigation .nav-entry{min-width:0;flex-shrink:1}header nav.main-navigation .brand-menu{flex-shrink:0}
.home-hero.cms-home-hero{width:100%;max-width:100%;grid-template-columns:minmax(0,42%) minmax(0,58%);min-height:0!important;overflow:clip}
.home-hero.cms-home-hero>div:first-child{min-width:0;padding:clamp(30px,4vw,64px) 3vw clamp(30px,4vw,64px) 7vw}
.home-hero.cms-home-hero h1{font-size:clamp(44px,4.7vw,76px)!important;overflow-wrap:normal;max-width:100%}
.home-hero.cms-home-hero .home-promise{max-width:100%;font-size:15px!important}
.home-hero.cms-home-hero .product-reel,.home-hero.cms-home-hero .hero-photo{min-width:0;min-height:0!important;height:clamp(420px,42vw,640px);max-width:100%}
.size-helper-trigger{z-index:2147483001!important;right:12px!important;bottom:154px!important;max-width:140px}
@media(min-width:801px) and (max-width:1439px){header nav.main-navigation{display:none!important}.mobile-navigation{display:block!important}}
@media(max-width:800px){header nav.main-navigation{display:none!important}.home-hero.cms-home-hero{grid-template-columns:minmax(0,1fr)!important}.home-hero.cms-home-hero>div:first-child{padding:28px 24px!important}.home-hero.cms-home-hero h1{font-size:clamp(40px,10vw,58px)!important}.home-hero.cms-home-hero .product-reel,.home-hero.cms-home-hero .hero-photo{width:auto!important;height:auto;min-height:360px!important;max-width:calc(100% - 44px)}.size-helper-trigger{right:8px!important;font-size:12px}}

/* Chanukah guide and party additions */
.chanukah-announcement{display:block!important;background:#3B302E!important;color:#FBF7F2!important;text-decoration:none;text-align:center;padding:10px 12px!important;line-height:1.5!important;white-space:nowrap;font-size:11px!important;letter-spacing:.06em!important}
.announcement-short{display:none}
.nav-new-badge{display:inline-block;margin-left:5px;padding:3px 6px;border-radius:999px;background:#F6E4E0;color:#3B302E;font:500 10px/1 Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}
.chanukah-arch-section{width:100%;box-sizing:border-box;background:#FBF7F2;padding:32px 24px;color:#3B302E}
.chanukah-arch{box-sizing:border-box;width:100%;max-width:1000px;margin:0 auto;background:#F6E4E0;color:#3B302E;border-radius:500px 500px 24px 24px;padding:76px clamp(24px,7vw,90px) 48px;text-align:center}
.chanukah-arch h2{font:500 clamp(36px,4.5vw,64px)/1.08 'Cormorant Garamond',Cormorant,Georgia,serif;letter-spacing:-.02em;margin:12px 0 18px;color:#3B302E}
.chanukah-arch .eyebrow{color:#3B302E;margin:0 0 12px}
.chanukah-arch-description{max-width:620px;margin:0 auto;font-size:16px;line-height:1.7}
.gift-guide-countdown{font-size:15px;margin:22px 0}
.chanukah-guide-button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;box-sizing:border-box;padding:16px 28px;background:#3B302E;color:#FBF7F2;border-radius:999px;text-decoration:none;font-size:14px;line-height:1.4;margin-top:12px}
.chanukah-guide-button:hover{background:#51413E}.chanukah-guide-button:focus-visible,.chanukah-announcement:focus-visible{outline:3px solid #B87970;outline-offset:4px}
.party-arch{max-width:900px}.party-arch h2{font-size:clamp(34px,4vw,54px)}.party-arch .chanukah-guide-button{margin-top:26px}
.seasonal-campaign-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:inherit}
@media(max-width:700px){.announcement-full{display:none}.announcement-short{display:inline}.chanukah-announcement{font-size:10px!important;letter-spacing:.015em!important}.chanukah-arch-section{padding:24px 16px}.chanukah-arch{border-radius:180px 180px 20px 20px;padding:52px 24px 32px}.chanukah-arch h2{font-size:38px}.chanukah-arch-description{font-size:15px}.chanukah-guide-button{width:100%;max-width:360px}.seasonal-campaign-actions{justify-content:center}}

/* Product detail refresh */
.item-breadcrumbs{display:flex;align-items:center;gap:10px;max-width:1360px;margin:0 auto;padding:26px 32px 0;font-size:11px;color:#756864;min-width:0}
.item-breadcrumbs>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-breadcrumbs a{flex-shrink:0;text-decoration:none}.item-breadcrumbs a:hover{text-decoration:underline}
.item-page{max-width:1360px;margin:0 auto;padding:24px 32px 64px!important;gap:clamp(28px,4vw,64px)!important;align-items:start}
.item-gallery.item-carousel{border-radius:20px!important;overflow:hidden}
.item-carousel .item-gallery-track{border-radius:18px;scrollbar-width:none;background:#FBF7F2}.item-gallery-track::-webkit-scrollbar{display:none}
.item-carousel .item-image,.item-carousel .item-image picture,.item-carousel .item-image img{border-radius:18px!important;background:#FBF7F2!important}.item-carousel .item-image img{padding:12px!important;box-sizing:border-box}
.item-copy{position:static!important;min-width:0;background:rgba(251,247,242,.93);border:1px solid #e5d9d2;border-radius:20px;padding:32px!important;box-shadow:0 12px 36px #3b302e05}
.item-copy>.eyebrow{margin:0 0 16px;font-size:10px;color:#756864}.item-copy h1{font:400 clamp(30px,3.1vw,46px)/1.12 'Cormorant Garamond',Cormorant,Georgia,serif!important;letter-spacing:-.02em;margin:0!important;overflow-wrap:anywhere}
.item-copy .item-primary-action{margin:24px 0 18px}.item-copy .item-primary-action .button{border:1px solid #dbc7c2!important;border-radius:12px!important;min-height:56px;font-size:11px!important;letter-spacing:.12em!important;transition:background .2s}.item-copy .item-primary-action .button:hover{background:#eed7d1!important}
.item-copy .item-primary-action small{font-size:11px;line-height:1.65;color:#756864;margin:12px 2px 0}
.item-copy>p:not(.eyebrow),.item-copy .item-description{font:400 15px/1.75 var(--lv-sans)!important;color:#5f514c;margin:20px 0}
.item-copy dl{margin:24px 0;border-top:1px solid #e5d9d2}.item-copy dl>div{grid-template-columns:100px minmax(0,1fr);gap:16px;padding:16px 0}.item-copy dt{letter-spacing:.1em;font-size:9px;line-height:1.6}.item-copy dd{font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.item-copy .family-matching-button{box-sizing:border-box;display:flex;width:100%;justify-content:center;border-radius:12px!important;background:transparent!important;border:1px solid #cdb5ad!important;color:#3B302E!important;font-size:10px!important;letter-spacing:.1em!important;padding:16px}
.item-feedback{margin-top:24px;border-top:1px solid #e5d9d2;padding-top:20px}.item-feedback>summary{cursor:pointer;font-size:13px;color:#756864}.item-feedback .feedback-form{margin-top:16px}
.item-gallery-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:10px 2px 14px;scrollbar-width:thin}.item-gallery-thumbnails button{flex:0 0 64px;width:64px;height:72px;border:1px solid #e5d9d2;background:#FBF7F2;border-radius:8px;padding:3px;cursor:pointer}.item-gallery-thumbnails button[aria-pressed=true]{border:2px solid #936d65}.item-gallery-thumbnails button img{display:block;width:100%;height:100%;aspect-ratio:auto;padding:0!important;object-fit:contain;border-radius:5px!important}.item-gallery-hint{color:#756864;font-size:11px;padding:12px 8px 4px}
.item-gallery-prev,.item-gallery-next{top:calc(50% - 65px)!important;box-shadow:0 3px 10px #3b302e0d}
.related-products{max-width:1440px;margin:auto;padding:32px 32px 64px!important;border-top:1px solid #e5d9d2}.related-products h2{font:400 40px/1.15 'Cormorant Garamond',Cormorant,Georgia,serif;margin:0 0 28px}
@media(max-width:767px){.item-breadcrumbs{padding:18px 18px 12px;font-size:10px}.item-page{padding:0 0 32px!important;gap:16px!important}.item-gallery.item-carousel{border-radius:0!important}.item-gallery-thumbnails{padding:10px 16px 14px}.item-copy{margin:0 14px;padding:24px 20px!important;border-radius:16px}.item-copy h1{font-size:34px!important}.item-copy dl>div{grid-template-columns:84px minmax(0,1fr);gap:12px}.related-products{padding:28px 18px 48px!important}.related-products h2{font-size:34px}.item-gallery-thumbnails button{flex-basis:56px;width:56px;height:64px}}
.chanukah-announcement>.announcement-full{display:inline!important}.chanukah-announcement>.announcement-short{display:none!important}
@media(max-width:700px){.chanukah-announcement>.announcement-full{display:none!important}.chanukah-announcement>.announcement-short{display:inline!important}}

.party-arch.party-with-reel{max-width:1100px;border-radius:28px;padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:hidden;text-align:left}
.party-with-reel .party-tile-copy{grid-column:1;grid-row:1;padding:clamp(28px,4vw,56px);align-self:center}.party-with-reel h2{font-size:clamp(34px,3.5vw,50px)}.party-with-reel .chanukah-arch-description{margin:0}.party-with-reel .party-product-reel{grid-column:2;grid-row:1;min-width:0;position:relative;min-height:480px;background:#FBF7F2;display:flex;flex-direction:column}
.party-product-reel>img{width:100%;height:420px;flex:1;min-height:0;object-fit:contain;box-sizing:border-box;padding:20px;background:#FBF7F2}.party-reel-caption{background:#FBF7F2;color:#3B302E;padding:14px 20px;display:grid;gap:12px;text-align:center;font-size:13px;line-height:1.5}.party-reel-caption>div{display:flex;align-items:center;justify-content:center;gap:14px}.party-reel-caption button{border:1px solid #dbc7c2;border-radius:50%;width:36px;height:36px;background:#F6E4E0;color:#3B302E;cursor:pointer}.party-reel-caption small{font-size:11px;min-width:40px}
@media(max-width:700px){.party-arch.party-with-reel{grid-template-columns:minmax(0,1fr);border-radius:24px;text-align:center}.party-with-reel .party-product-reel{grid-column:1;grid-row:1;min-height:0}.party-product-reel>img{height:320px;max-height:360px;flex:auto}.party-with-reel .party-tile-copy{grid-column:1;grid-row:2;padding:28px 24px 32px}.party-with-reel h2{font-size:36px}.party-with-reel .chanukah-guide-button{margin-top:24px}}

/* Header-only navigation improvement, based on the restored storefront. */
.lilvelle-header .header-category-shortcuts{display:none}
@media(min-width:1024px){
  header.lilvelle-header nav.main-navigation{display:flex!important;flex-wrap:wrap!important;justify-content:center;align-items:center;gap:10px 22px!important;height:auto!important;min-height:48px;padding:12px 24px!important;overflow:visible;font-size:12px!important;letter-spacing:.1em!important;line-height:1.6}
  header.lilvelle-header nav.main-navigation .nav-entry{flex:0 0 auto;min-width:0}
  header.lilvelle-header nav.main-navigation .nav-entry>a,header.lilvelle-header nav.main-navigation .nav-entry>summary{display:block;font:500 12px/1.6 var(--lv-sans)!important;letter-spacing:.1em!important;padding:4px 0;white-space:nowrap}
  header.lilvelle-header .mobile-navigation{display:none!important}
}
@media(max-width:1024px){
  header.lilvelle-header nav.main-navigation{display:none!important}
  header.lilvelle-header .mobile-navigation{display:block!important}
  header.lilvelle-header nav.header-category-shortcuts{display:flex!important;justify-content:flex-start;align-items:center;gap:20px!important;overflow-x:auto;overscroll-behavior-x:contain;width:100%;max-width:100%;box-sizing:border-box;padding:8px 20px!important;height:auto!important;min-height:44px;background:rgba(251,249,245,.75);border-top:1px solid var(--lv-line);border-bottom:0;scrollbar-width:thin;scroll-padding-inline:20px}
  header.lilvelle-header nav.header-category-shortcuts>a{flex:0 0 auto;display:block;padding:4px 0;color:var(--lv-ink);font:500 12px/1.6 var(--lv-sans)!important;letter-spacing:.06em!important;text-transform:uppercase;white-space:nowrap;text-decoration:none}
}
header.lilvelle-header nav.main-navigation a:focus-visible,header.lilvelle-header nav.main-navigation summary:focus-visible,header.lilvelle-header nav.header-category-shortcuts>a:focus-visible{outline:2px solid #B98A86;outline-offset:4px}
@media(min-width:1024px) and (max-width:1439px){
  header.lilvelle-header nav.main-navigation:before{content:'';flex-basis:100%;height:0;order:2}
  header.lilvelle-header nav.main-navigation>.nav-entry{order:3}
  header.lilvelle-header nav.main-navigation>.nav-entry:nth-child(-n+7){order:1}
}
/* Shopping tools: reuse the existing panels with one compact helper launcher. */
.header-shopping-tools{position:absolute;right:5vw;display:flex;align-items:center;gap:12px;width:285px;min-width:0}
.header-shopping-tools .header-search{position:static!important;right:auto!important;width:auto!important;flex:1;min-width:0;margin:0!important;box-sizing:border-box}
.header-shopping-tools .header-search input{min-width:0}
.header-favourites{display:flex;align-items:center;justify-content:center;gap:4px;flex:0 0 auto;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--lv-ink);padding:6px;cursor:pointer;font:500 12px var(--lv-sans)}
.header-favourites svg{width:20px;height:20px;color:#b66f77}.header-favourites:focus-visible,.helper-toggle:focus-visible,.helper-options button:focus-visible{outline:2px solid #B98A86;outline-offset:4px}
.size-helper-trigger{display:none!important}
.floating-helper{position:fixed;right:16px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:100}
.helper-toggle{display:grid;place-items:center;width:56px;height:56px;min-height:56px;border:0;border-radius:50%;background:#3B302E;color:#FBF7F2;box-shadow:0 6px 18px rgba(59,48,46,.18);padding:0;cursor:pointer}
.helper-toggle:hover{background:#51413E}
.helper-options{position:absolute;right:0;bottom:68px;width:210px;max-width:calc(100vw - 32px);box-sizing:border-box;background:#FBF7F2;border:1px solid #EADBD5;border-radius:16px;padding:12px;box-shadow:0 6px 18px rgba(59,48,46,.1)}
.helper-options button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:#3B302E;font:500 14px/1.4 var(--lv-sans);text-align:left;cursor:pointer}
.helper-options button:hover{background:#F6E4E0}.helper-options button:disabled{opacity:.5;cursor:wait}
body:has(.mobile-navigation[open],.brand-menu[open],dialog[open],[role=dialog][data-state=open],.mobile-filters-open) .floating-helper,html[data-lilvelle-finder-open] .floating-helper{display:none!important}
@media(min-width:701px) and (max-width:1023px){.header-shopping-tools{right:3vw;width:190px}}
@media(max-width:700px){.header-shopping-tools{position:static;width:calc(100% - 30px);margin:0 auto 12px;gap:8px}.header-shopping-tools .header-search{width:auto!important}.header-favourites{min-width:44px}body:has(.floating-helper)>main,body:has(.floating-helper)>div>main{padding-bottom:90px}}
/* Calmer product cards; existing card links and favourite controls are retained. */
.cms-product-grid{gap:28px 24px!important}
.cms-product-grid>.product{border:0!important;box-shadow:none!important;padding:0!important}
.cms-product-grid .product-link{color:inherit;text-decoration:none}
.cms-product-grid .product-link:focus-visible{outline:2px solid #B98A86;outline-offset:5px;border-radius:12px}
.cms-product-grid>.product>.product-link>.product-art{aspect-ratio:4/5!important;height:auto!important;overflow:hidden;border-radius:12px!important}
.cms-product-grid .product-info{padding:12px 0 0!important;flex:0 0 auto!important;margin:0!important}
.cms-product-grid .product-info h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em;max-height:2.5em;margin:0!important;font:500 18px/1.25 var(--lv-serif)!important;letter-spacing:0!important;color:#3B302E;overflow-wrap:break-word}
.cms-product-grid .product-info p{font-size:11px!important;letter-spacing:.08em!important;line-height:1.5!important;margin:0 0 4px}
.cms-product-grid .product-art>.product-badge{top:10px!important;left:10px!important;max-width:calc(100% - 58px);box-sizing:border-box;padding:6px 8px!important;border:0!important;border-radius:6px!important;font:500 9px/1.2 var(--lv-sans)!important;letter-spacing:.09em!important}
.cms-product-grid .source-branding .source-corner{top:auto!important;right:auto!important;bottom:8px!important;left:8px!important;width:52px!important;min-height:36px!important;max-height:40px;box-sizing:border-box;padding:5px!important;border:0!important;border-radius:8px!important;box-shadow:none!important}
.cms-product-grid .source-branding .source-corner{background:rgba(251,247,242,.95)!important}
.cms-product-grid .source-corner .retailer-corner-logo{display:block;width:42px!important;max-width:100%!important;height:26px!important;max-height:26px!important;object-fit:contain!important;padding:0!important;transform:none!important}
.cms-product-grid .source-branding .source-lilvelle-find{width:68px!important;display:flex!important;flex-direction:row;gap:4px;white-space:nowrap;min-height:34px!important}
.cms-product-grid .source-lilvelle-find>img{width:22px!important;height:22px!important;object-fit:contain!important;transform:none!important;padding:0!important}
.cms-product-grid .source-lilvelle-find b,.cms-product-grid .source-wordmark b{font-size:8px!important;letter-spacing:.04em!important}.cms-product-grid .source-lilvelle-find em,.cms-product-grid .source-wordmark em{font-size:8px!important;letter-spacing:0!important;margin-top:2px}
.cms-product-grid .product-art .source-corner img{transform:none!important}
@media(hover:hover) and (pointer:fine){.cms-product-grid .product-art .product-primary img,.cms-product-grid .product-art .product-hover{transition:opacity .22s ease,transform .3s ease!important}.cms-product-grid .product-link:hover .product-art .product-primary img,.cms-product-grid .product-link:hover .product-art .product-hover{transform:scale(1.03)!important}}
@media(max-width:767px){.cms-product-grid{gap:24px 16px!important}.cms-product-grid .product-art>.product-badge{top:8px!important;left:8px!important;max-width:calc(100% - 52px);font-size:8px!important;padding:5px 6px!important}.chanukah-announcement{line-height:1.6!important;white-space:normal}}
@media(prefers-reduced-motion:reduce){.cms-product-grid .product-art img{transition:none!important}}
/* Visible category-specific product types, with a second level for hair. */
.product-type-filters{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 16px;padding:0;max-width:100%}
.product-type-filters button{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:10px 17px;border:1px solid #EADBD5;border-radius:999px;background:#FBF7F2;color:#3B302E;font:500 14px/1.3 var(--lv-sans);cursor:pointer;white-space:nowrap}
.product-type-filters button[aria-pressed=true]{background:#3B302E;border-color:#3B302E;color:#FBF7F2}
.product-type-filters button span{font-size:11px;opacity:.7}
.product-type-filters button:focus-visible{outline:2px solid #C08A80;outline-offset:3px}
.hair-type-filters{margin-top:0;padding-left:14px;border-left:2px solid #EADBD5}
.hair-type-filters button{background:#F6E4E0}
/* Item-page hierarchy: keep the original shop URL, text and tracking. */
.item-page .item-copy{border:0;box-shadow:none;padding:24px!important;background:transparent}
.item-page .item-copy h1{font-size:44px!important;color:#3B302E;line-height:1.12!important}
.item-copy .item-primary-action .button{display:flex;justify-content:center;align-items:center;box-sizing:border-box;width:100%;min-height:54px;border:0!important;border-radius:999px!important;background:#3B302E!important;color:#FBF7F2!important;font:500 15px/1.4 var(--lv-sans)!important;letter-spacing:.04em!important;padding:14px 24px!important}
.item-copy .item-primary-action .button:hover{background:#C08A80!important}
.item-page .item-copy dt{font:500 12px/1.6 var(--lv-sans)!important;letter-spacing:.08em!important;color:#7A6A65}
.item-page .item-copy dd{font:400 15px/1.6 var(--lv-sans)!important;color:#3B302E;white-space:normal}
.item-page .item-copy dl{margin:28px 0!important;border-top:1px solid #EADBD5}
.item-page .item-copy dl>div{padding:16px 0;border-bottom:1px solid #EADBD5}
.item-copy .family-matching-button{font:500 14px/1.5 var(--lv-sans)!important;letter-spacing:.02em!important;border-radius:999px!important;border-color:#3B302E!important;min-height:50px}
.item-gallery .source-branding .source-corner{top:auto!important;right:auto!important;left:12px!important;bottom:12px!important;background:rgba(251,247,242,.96)!important;border:0!important;box-shadow:none!important;max-width:105px;max-height:48px;padding:6px 10px!important;border-radius:10px!important;box-sizing:border-box}
.item-gallery .source-corner .retailer-corner-logo{width:70px!important;height:30px!important;object-fit:contain!important;padding:0!important}
.item-gallery .source-lilvelle-find{width:auto!important;display:flex!important;flex-direction:row!important;align-items:center;gap:6px;white-space:nowrap!important}
.item-gallery .source-lilvelle-find>img{width:26px!important;height:26px!important;object-fit:contain!important;padding:0!important}
.item-gallery .source-lilvelle-find b,.item-gallery .source-lilvelle-find em{font-size:9px!important;letter-spacing:0!important}
.item-gallery .item-season-label{top:12px!important;left:12px!important;right:auto!important;border-radius:6px;padding:6px 10px!important;font-size:10px!important;max-width:calc(100% - 24px);box-sizing:border-box}
@media(max-width:767px){.product-type-filters{flex-wrap:nowrap;overflow-x:auto;padding:3px 0 10px;margin-top:16px;scrollbar-width:thin}.product-type-filters button{flex-shrink:0}.hair-type-filters{padding-left:10px;margin-top:0}.item-page{padding-left:16px!important;padding-right:16px!important}.item-page .item-copy{padding:12px 0!important}.item-page .item-copy h1{font-size:34px!important}.item-page .item-copy dl>div{grid-template-columns:90px minmax(0,1fr)}.item-page .item-primary-action{margin-top:20px!important}.item-page .item-gallery-track{border-radius:16px}}
/* Category pills must not inherit the fixed height of the site's navigation. */
.product-type-filters{height:auto!important;min-height:0!important;justify-content:flex-start!important;align-items:center!important;box-sizing:border-box;letter-spacing:0;text-transform:none;border:0!important}
.product-type-filters button{letter-spacing:0!important;text-transform:none!important}
/* Directory headings blend into the page rather than a separate header panel. */
.ali-shops-page .ali-shops-intro{background:transparent!important;border:0!important;box-shadow:none!important}

/* Dedicated email landing page; homepage signup styling remains intact. */
#home-signup{scroll-margin-top:160px}
.join-page{background:#FBF7F2;padding:24px 16px 48px}
.join-page .updates--join{display:block!important;max-width:600px;margin:0 auto;padding:24px!important;background:#F6E4E0!important;color:#3B302E!important;border-radius:20px!important}
.join-page .updates--join h1{font:400 38px/1.05 var(--lv-serif);color:#3B302E;margin:8px 0 12px}
.join-page .updates--join p,.join-page .updates--join small,.join-page .updates--join span,.join-page .updates--join h3{color:#3B302E!important}
.join-page .updates--join form{display:flex!important;flex-direction:column;gap:10px;margin:18px 0 0}
.join-page .updates--join input{box-sizing:border-box;width:100%;height:48px;padding:0 16px!important;border:1px solid #EADBD5!important;border-radius:999px!important;background:#FBF7F2!important;color:#3B302E!important;min-width:0}
.join-page .updates--join input::placeholder{color:#7A6A65}
.join-page .updates--join button{min-height:48px;border-radius:999px!important;background:#3B302E!important;color:#FBF7F2!important;letter-spacing:.06em!important}
.join-page .updates--join .whatsapp{border:0!important;border-top:1px solid #EADBD5!important;padding:20px 0 0;margin:20px 0 0}
.join-page .updates--join .whatsapp a{border-color:#3B302E!important;color:#3B302E!important;letter-spacing:.06em!important}
@media(max-width:600px){.join-page{padding-top:16px}.join-page .updates--join{padding:20px!important}.join-page .updates--join h1{font-size:34px}.join-page .updates--join .eyebrow{margin-top:0}.join-page .updates--join p{font-size:15px;line-height:1.5}}
.join-page .updates--join>div:first-child{padding:0!important}
.join-page .updates--join input:not(.form-honeypot){height:48px!important;min-height:48px!important;flex:none!important;width:100%!important}
.join-page .updates--join form{height:auto!important;align-items:stretch!important}
.join-page .updates--join button{flex:none!important;width:100%!important}

.join-page .updates--join button{font-family:var(--lv-sans)!important;font-size:14px!important;font-weight:500!important}
/* Keep the join-page WhatsApp button separate from the homepage promo panel. */
.join-page .updates--join .whatsapp{background:transparent!important;display:block!important;box-shadow:none!important;border-radius:0!important}
.join-page .updates--join .whatsapp a.button,.join-page .updates--join .whatsapp a.button:hover{display:flex!important;align-items:center;justify-content:center;box-sizing:border-box;width:100%!important;min-height:48px;margin:0!important;padding:14px 18px!important;background:#FBF7F2!important;color:#3B302E!important;border:1px solid #3B302E!important;border-radius:999px!important;font:500 14px/1.4 var(--lv-sans)!important;letter-spacing:.02em!important;text-transform:none!important;text-align:center;text-decoration:none!important;box-shadow:none!important;white-space:normal}

/* Let the existing sky show through around the dedicated signup card. */
.join-page{background:transparent!important;min-height:55vh}

/* Preserve each product photo's proportions inside the shared card frame. */
.cms-product-grid .product-art picture.product-primary img,.cms-product-grid .product-art>img.product-hover{object-fit:contain!important;aspect-ratio:auto!important;max-width:100%!important;max-height:100%!important}

/* Shared responsive layouts: compact navigation and flexible page templates. */
.mobile-header-search{display:none}
footer .lv-sky-mode{position:static!important;display:flex!important;align-items:center;gap:8px;width:max-content;margin:8px auto!important;inset:auto!important;transform:none!important}
footer .lv-sky-mode>span{display:inline!important}
@media(max-width:1024px){
 header.lilvelle-header{position:sticky!important;top:0;z-index:110;background:#FBF7F2!important;border-bottom:1px solid #EADBD5}
 header.lilvelle-header .topline{height:64px!important;min-height:64px!important;display:flex!important;align-items:center;justify-content:center;padding:0 104px 0 56px!important;position:relative}
 header.lilvelle-header .brand-logo{position:static!important;transform:none!important;display:flex;justify-content:center;min-width:0;width:100%;margin:0!important}
 header.lilvelle-header .brand-logo img{display:block;width:auto!important;max-width:150px!important;max-height:40px!important;height:auto!important;object-fit:contain}
 .header-shopping-tools{position:absolute!important;right:8px!important;top:10px!important;width:auto!important;margin:0!important;gap:2px!important}
 .header-shopping-tools>.header-search{display:none!important}
 .header-favourites{min-width:44px!important;min-height:44px!important;padding:4px!important}
 .mobile-header-search{display:block;position:static}
 .mobile-header-search>summary{display:flex;align-items:center;justify-content:center;width:40px;height:44px;list-style:none;cursor:pointer}
 .mobile-header-search>summary::-webkit-details-marker{display:none}
 .mobile-header-search form{position:absolute;top:54px;right:0;display:flex;width:min(440px,calc(100vw - 32px));padding:12px;background:#FBF7F2;border:1px solid #EADBD5;box-shadow:0 8px 18px #3b302e12;gap:8px;z-index:3}
 .mobile-header-search input{min-width:0;flex:1;width:100%;height:44px;border:1px solid #EADBD5;border-radius:999px;padding:0 14px;font:400 16px var(--lv-sans)}
 .mobile-header-search button{width:44px;height:44px;border:0;border-radius:50%;background:#3B302E;color:#FBF7F2;display:grid;place-items:center}
 header.lilvelle-header .mobile-navigation{position:absolute!important;left:0!important;top:0!important;width:100%;margin:0!important;border:0!important;background:transparent!important;pointer-events:none}
 header.lilvelle-header .mobile-navigation>summary{pointer-events:auto;display:flex!important;align-items:center;justify-content:center;width:52px;height:64px;padding:0!important;font-size:10px!important;letter-spacing:.05em!important;list-style:none;background:transparent!important;border:0!important}
 header.lilvelle-header .mobile-navigation>summary:after{display:none!important}
 header.lilvelle-header .mobile-navigation>summary::-webkit-details-marker{display:none}
 header.lilvelle-header .mobile-navigation>div{pointer-events:auto;position:relative;max-height:calc(100dvh - 100px);overflow:auto;padding:16px!important;background:#FBF7F2!important;border-top:1px solid #EADBD5;box-shadow:0 8px 18px #3b302e12}
 header.lilvelle-header nav.header-category-shortcuts{display:none!important}
 .mobile-menu-search input{min-width:0;font-size:16px}
 .ali-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .ali-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .item-page{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
 .item-gallery{position:relative!important;top:auto!important;width:100%;min-width:0}
 .item-copy{min-width:0}
 body:has(.mobile-header-search[open]) .floating-helper{display:none!important}
}
@media(max-width:700px){
 body{font-size:16px;line-height:1.5}
 main,main>section,.catalogue,.page-hero,.item-page,.ali-shops-page{min-width:0;max-width:100%;box-sizing:border-box}
 .announcement{height:auto!important;min-height:28px;padding:6px 10px!important;font-size:9px!important;line-height:1.5!important;letter-spacing:.03em!important}
 .join-page{padding:16px 12px 32px!important;min-height:0}
 .join-page .updates--join{padding:20px!important;border-radius:16px!important}
 .join-page .updates--join h1{font-size:32px!important;line-height:1.08!important}
 .join-page .updates--join .eyebrow{font-size:10px!important;letter-spacing:.12em!important}
 .join-page .updates--join p{font-size:15px!important;line-height:1.5!important}
 .join-page .updates--join form{gap:8px;margin-top:14px}
 .join-page .updates--join input:not(.form-honeypot),.join-page .updates--join button{height:46px!important;min-height:46px!important;font-size:16px!important}
 .join-page .updates--join .whatsapp{margin-top:16px!important;padding-top:16px!important}
 .join-page .updates--join button{font-size:13px!important;letter-spacing:.02em!important}
 .page-hero,.collection-hero,.ali-shops-intro{padding:28px 16px!important;min-height:0!important;gap:20px!important}
 .page-hero h1,.ali-shops-intro h1{font-size:clamp(32px,9vw,44px)!important;line-height:1.1!important;overflow-wrap:anywhere}
 .page-hero.collection-hero{grid-template-columns:minmax(0,1fr)!important}
 .page-hero.collection-hero>picture{max-width:180px!important}
 .catalogue,.related-products,.ali-shops-page{padding-left:16px!important;padding-right:16px!important}
 .cms-product-grid,.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 12px!important;width:100%;min-width:0}
 .cms-product-grid .product,.cms-product-grid .product-link{min-width:0;max-width:100%}
 .cms-product-grid .product-art{height:auto!important;min-height:0!important;aspect-ratio:4/5;overflow:hidden}
 .cms-product-grid .product-art>.product-primary{position:absolute;inset:0;width:100%;height:100%}
 .cms-product-grid .product-info h3{font-size:18px!important;line-height:1.2!important}
 .product-type-filters{max-width:100%;width:100%;gap:8px!important;margin:12px 0!important}
 .product-type-filters button{min-height:42px;padding:10px 14px!important;font-size:13px!important}
 .catalogue-tools{width:100%;min-width:0;grid-template-columns:minmax(0,1fr)!important}
 .catalogue-tools label,.catalogue-tools input,.catalogue-tools select{min-width:0;max-width:100%;font-size:16px!important}
 .catalogue-top{gap:12px;flex-wrap:wrap;align-items:center}
 .catalogue-top p{font-size:11px!important;letter-spacing:.05em!important}
 .mobile-filter-row{gap:12px;min-width:0}.mobile-filter-row>label{min-width:0;flex:1}.mobile-filter-row select{width:100%;min-width:0;max-width:100%;font-size:14px}
 .item-page{padding:16px!important;gap:20px!important}.item-copy h1{font-size:32px!important;overflow-wrap:anywhere}
 .item-gallery-track{width:100%;max-width:100%;min-width:0}.item-gallery .item-image{min-width:0}
 .item-copy .button{max-width:100%;white-space:normal;text-align:center;min-height:48px;box-sizing:border-box}
 .item-copy dl>div{grid-template-columns:85px minmax(0,1fr)!important}.item-copy dd{overflow-wrap:anywhere}
 .ali-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
 .ali-season-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
 .ali-collection-grid{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
 .ali-collection-card{min-width:0;min-height:0!important;aspect-ratio:4/5}.ali-collection-card h2{font-size:30px!important;overflow-wrap:anywhere}
 .ali-shops-breadcrumbs,.item-breadcrumbs{flex-wrap:wrap;gap:6px!important;font-size:11px!important;overflow-wrap:anywhere}
 .home-categories{gap:14px!important;padding-left:16px!important;padding-right:16px!important}
 .home-hero,.home-collection,.family-edit,.seasonal-campaign{grid-template-columns:minmax(0,1fr)!important;min-width:0}
 .home-hero>div{min-width:0;padding:32px 16px!important}.home-hero h1{font-size:40px!important;line-height:1.1!important}
 .lv-chanukah-section{grid-template-columns:minmax(0,1fr)!important;padding-left:16px!important;padding-right:16px!important;gap:20px!important}
 .lv-chanukah-card{min-width:0;max-width:100%;padding:24px 20px!important}.lv-chanukah-heading{font-size:34px!important}
 .updates{max-width:calc(100% - 24px);margin-left:auto!important;margin-right:auto!important;grid-template-columns:minmax(0,1fr)!important;min-width:0}
 .updates input,.updates button{max-width:100%;min-width:0;font-size:16px!important}
 footer.cms-footer{grid-template-columns:minmax(0,1fr)!important;gap:28px!important;padding:40px 24px 112px!important;min-width:0}
 footer.cms-footer>div{grid-column:1!important;min-width:0;max-width:100%}
 footer.cms-footer .footer-brand img{max-width:180px;height:auto}
 footer.cms-footer a,footer.cms-footer p{overflow-wrap:anywhere;max-width:100%;font-size:14px!important;line-height:1.6!important}
 footer.cms-footer .copyright{display:flex!important;flex-direction:column!important;align-items:center;gap:10px;text-align:center;font-size:12px!important;letter-spacing:.02em!important}
 .promo-dialog{width:calc(100vw - 24px)!important;max-width:480px!important;max-height:calc(100dvh - 32px);overflow-y:auto;padding:24px!important;box-sizing:border-box}.promo-dialog-grid{grid-template-columns:minmax(0,1fr)!important}.popup-form{display:flex!important;flex-direction:column;gap:10px}.popup-form input,.popup-form button{width:100%;min-width:0;min-height:48px;font-size:16px!important}
 .floating-helper{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));}.helper-toggle{width:48px;height:48px;min-height:48px}
 body:has(.join-page) .floating-helper,body:has(.updates input:focus,.popup-form input:focus,.catalogue-tools input:focus) .floating-helper{display:none!important}
}
@media(max-width:359px){header.lilvelle-header .brand-logo img{max-width:120px!important}.join-page .updates--join{padding:16px!important}.join-page .updates--join h1{font-size:29px!important}.cms-product-grid .product-info h3{font-size:17px!important}}
@media(max-width:1024px){header.lilvelle-header .brand-logo{position:absolute!important;left:50%!important;top:0!important;transform:translateX(-50%)!important;width:min(150px,calc(100% - 156px))!important;height:64px;align-items:center}body:has(.join-page) .floating-helper{display:none!important}}
@media(max-width:700px){.page-hero.collection-hero{height:auto!important;max-height:none!important;overflow:visible!important;padding:20px 16px!important}.page-hero.collection-hero>div{min-width:0;padding:0!important}.page-hero.collection-hero>picture{flex:0 0 90px!important}.page-hero.collection-hero h1{font-size:32px!important}.page-hero.collection-hero p{overflow-wrap:anywhere}}
@media(min-width:701px) and (max-width:1023px){.page-hero.collection-hero{display:grid!important;grid-template-columns:180px minmax(0,1fr)!important;gap:24px!important;min-height:0!important;height:auto!important;padding:28px!important}.page-hero.collection-hero>picture{width:180px!important;max-width:180px!important;height:225px!important}.page-hero.collection-hero h1{font-size:44px!important}}

@media(max-width:700px){.page-hero.collection-hero>div>span{height:12px!important;margin:8px auto!important}}
/* One divider and one consistent touch target for every mobile menu row. */
@media(max-width:1024px){
 header.lilvelle-header .mobile-navigation>div>div:not(.mobile-menu-search),header.lilvelle-header .mobile-navigation>div>details{border:0!important;border-bottom:1px solid #EADBD5!important;margin:0!important;padding:0!important}
 header.lilvelle-header .mobile-navigation>div>div>a,header.lilvelle-header .mobile-navigation>div>details>summary{display:flex!important;align-items:center;justify-content:space-between;min-height:48px;box-sizing:border-box;padding:14px 0!important;border:0!important;margin:0!important;font:500 12px/1.5 var(--lv-sans)!important;letter-spacing:.1em!important}
 header.lilvelle-header .mobile-navigation>div>details>div{border:0!important;padding:0 0 10px 16px!important}
 header.lilvelle-header .mobile-navigation>div>details>div>a{border:0!important;padding:10px 0!important;min-height:44px;box-sizing:border-box}
}

/* Keep native filter dialogs usable above every storefront layer. */
.catalogue-filter-dialog .catalogue-tools{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.catalogue-filter-dialog .catalogue-tools input,.catalogue-filter-dialog .catalogue-tools select{font-size:16px!important;min-height:46px;border-radius:6px!important}
.catalogue-filter-dialog .filter-dialog-layout>header{position:static!important;min-height:0!important;height:auto!important;padding:12px 20px!important;background:#FBF7F2!important}
@media(min-width:701px) and (max-width:1024px){.cms-product-grid,.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:767px){.page-hero.collection-hero{height:auto!important;max-height:none!important}.page-hero.collection-hero>div{padding:0!important}.mobile-filter-row select{font-size:16px!important}.promo-dialog{max-height:90dvh!important;overflow-y:auto!important}}
@media(max-width:1024px){header.lilvelle-header .mobile-navigation>div{max-height:calc(100vh - 120px)!important;max-height:calc(100dvh - 120px)!important;padding-bottom:max(24px,env(safe-area-inset-bottom))!important}}

/* Mobile storefront: keep the menu, search and filter sheet in separate layers. */
@media(max-width:1024px){
 header.lilvelle-header .mobile-navigation{z-index:4}
 header.lilvelle-header .mobile-navigation>summary{position:relative;z-index:2;cursor:pointer}
 header.lilvelle-header .mobile-navigation[open]>div{position:absolute;top:64px;left:0;right:0;z-index:1;box-sizing:border-box;width:100%;max-height:calc(100vh - 64px)!important;max-height:calc(100dvh - 64px)!important;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 header.lilvelle-header .mobile-navigation[open]~.header-category-shortcuts{display:none!important}
 header.lilvelle-header .header-shopping-tools{z-index:5}
 .mobile-header-search form{z-index:6}
 .catalogue-filter-dialog .filter-dialog-layout>footer{display:block!important;position:static!important;min-height:0!important;grid-template-columns:none!important}
 .catalogue-filter-dialog .filter-dialog-layout>footer button{display:block;width:100%;box-sizing:border-box}
 .filter-dialog-scroll{overscroll-behavior:contain}
 .item-copy{position:static!important}
}
@media(max-width:700px){
 .mobile-filter-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px!important}
 .mobile-filter-row>button,.mobile-filter-row>label{width:100%;box-sizing:border-box}
 .mobile-filter-row>label{padding:0 8px}
 .mobile-filter-row select{flex:1;width:100%;max-width:100%;text-overflow:ellipsis}
 .product-type-filters button{min-height:44px;max-width:100%}
 .item-copy{width:100%;box-sizing:border-box}
}

/* Keep floating controls out of open navigation and filter panels. */
@media(max-width:1024px){
 body:has(.mobile-navigation[open]) .floating-helper,body:has(.mobile-navigation[open]) .size-helper-trigger,body:has(.mobile-navigation[open]) #lilvelle-finder,body:has(.catalogue-filter-dialog[open]) .floating-helper{visibility:hidden!important}
 .mobile-filter-row>button,.mobile-filter-row>label{box-sizing:border-box;min-width:0}
}
.catalogue-filter-dialog{box-sizing:border-box;max-width:100vw}
.catalogue-filter-dialog .filter-dialog-layout{min-width:0;min-height:0}
.catalogue-filter-dialog .filter-dialog-layout>footer{height:auto!important;margin:0!important;grid-column:auto!important;text-align:left!important;box-sizing:border-box}
.catalogue-filter-dialog .filter-dialog-scroll .catalogue-tools{border:0!important;min-width:0;align-items:stretch}
.catalogue-filter-dialog .filter-dialog-scroll .price-filter{width:100%;min-width:0}
@media(max-width:767px){
 .page-hero:has(+.catalogue){height:auto!important;max-height:none!important;overflow:visible!important}
 .item-copy{overflow-wrap:anywhere}
 .cms-product-grid,.product-grid{min-width:0}
}
