/* Front page — "Cinematic Editorial". Markup lives in front-page.php; behaviour in assets/js/front-page.js.
   Self-contained (.lv-*), does not rely on the compiled Tailwind utilities. */

:root {
  --lv-cream: #fdfbf7;
  --lv-sand: #f5f0e6;
  --lv-ink: #1a1a19;
  --lv-orange: #ea580c;
  --lv-orange-ink: #c2410c; /* orange for small text on cream (AA contrast) */
  --lv-muted: rgba(26, 26, 25, .72);
  --lv-line: rgba(26, 26, 25, .12);
  --lv-ease: cubic-bezier(.16, 1, .3, 1);
  --lv-display: 'Cabinet Grotesk', 'Satoshi', system-ui, sans-serif;
  --lv-body: 'Satoshi', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --lv-gutter: clamp(1.25rem, 4vw, 3rem);
  --lv-header: 80px;
}

/* ---- Base (scoped; neutralises the theme's Tailwind base: Playfair/Inter, --c-* colours) ---- */
.lv-page { background: var(--lv-cream); color: var(--lv-ink); font-family: var(--lv-body); font-size: 1rem; line-height: 1.6; letter-spacing: .025em; -webkit-font-smoothing: antialiased; overflow-x: clip; }
.lv-page.lv-service-shell { background: #000; color: #fff; font-family: ui-sans-serif, system-ui, sans-serif; letter-spacing: normal; }
.lv-page *, .lv-page *::before, .lv-page *::after { box-sizing: border-box; }
:where(.lv-page:not(.lv-service-shell)) :where(h1, h2, h3, p, a, span, strong, em, small, li, ul, button, input, label) { font-family: inherit; color: inherit; margin: 0; }
.lv-page:not(.lv-service-shell) :where(h1, h2, h3) { font-weight: 800; letter-spacing: -.025em; line-height: 1.05; }
.lv-page:not(.lv-service-shell) :where(a) { text-decoration: none; }
.lv-page:not(.lv-service-shell) :where(button) { cursor: pointer; }
.lv-page :focus-visible { outline: 2px solid var(--lv-orange); outline-offset: 3px; }
.lv-container { width: min(100% - 2 * var(--lv-gutter), 1280px); margin-inline: auto; }
.lv-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(.75rem, 2vw, 1.5rem); }
.lv-label { display: block; margin-bottom: 1.25rem; font: 800 .75rem/1 var(--lv-display); letter-spacing: .2em; text-transform: uppercase; color: var(--lv-orange-ink); }
.lv-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.lv-skip { position: absolute; left: 1rem; top: -4rem; z-index: 100000; padding: .75rem 1.25rem; border-radius: 999px; background: var(--lv-ink); color: var(--lv-cream); }
.lv-skip:focus { top: 1rem; }

/* ---- Custom cursor: 8px dot, difference blend, 4x on interactive elements (fine pointers only) ---- */
.lv-cursor { position: fixed; left: 0; top: 0; z-index: 2147483000; pointer-events: none; mix-blend-mode: difference; opacity: 0; transition: opacity .3s var(--lv-ease); }
.lv-cursor i { display: block; width: 8px; height: 8px; margin: -4px 0 0 -4px; border-radius: 50%; background: #fff; transition: transform .6s var(--lv-ease); }
.lv-cursor.is-on { opacity: 1; }
.lv-cursor.is-active i { transform: scale(4); }
@media (hover: hover) and (pointer: fine) { html.lv-cursor-on, html.lv-cursor-on * { cursor: none !important; } }

/* ---- Sticky header ---- */
.lv-header { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; height: var(--lv-header); background: rgba(253, 251, 247, .8); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom: 1px solid var(--lv-line); }
body.admin-bar .lv-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .lv-header { top: 46px; } }
.lv-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; height: 100%; max-width: 1440px; margin-inline: auto; padding-inline: var(--lv-gutter); }
.lv-logo { display: inline-flex; align-items: center; gap: .6rem; font: 800 1.25rem/1 var(--lv-display); letter-spacing: -.025em; white-space: nowrap; }
.lv-logo__img { display: block; width: 40px; height: 40px; object-fit: contain; }
.lv-logo__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--lv-orange); animation: lv-pulse 2s var(--lv-ease) infinite; }
@keyframes lv-pulse { 0% { box-shadow: 0 0 0 0 rgba(234, 88, 12, .55); } 70%, 100% { box-shadow: 0 0 0 10px rgba(234, 88, 12, 0); } }
.lv-nav { display: none; margin-left: auto; gap: 2rem; }
.lv-nav a { font: 500 .875rem/1 var(--lv-body); letter-spacing: .025em; transition: color .5s var(--lv-ease); }
.lv-nav a:hover { color: var(--lv-orange-ink); }
@media (min-width: 1100px) { .lv-nav { display: flex; } }
.lv-header__actions { display: flex; gap: .625rem; }
.lv-circle { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; width: 44px; height: 44px; border: 1px solid rgba(26, 26, 25, .25); border-radius: 50%; background: transparent; transition: background .5s var(--lv-ease), color .5s var(--lv-ease), border-color .5s var(--lv-ease); }
.lv-circle:hover, .lv-circle[aria-expanded="true"] { background: var(--lv-ink); border-color: var(--lv-ink); color: var(--lv-cream); }
.lv-circle--menu span { display: block; width: 16px; height: 1.5px; background: currentColor; transition: transform .5s var(--lv-ease); }
.lv-circle--menu[aria-expanded="true"] span:first-child { transform: translateY(3.25px) rotate(45deg); }
.lv-circle--menu[aria-expanded="true"] span:last-child { transform: translateY(-3.25px) rotate(-45deg); }

.lv-search { position: fixed; top: var(--lv-header); left: 0; right: 0; z-index: 999; padding: 1.25rem var(--lv-gutter); background: var(--lv-cream); border-bottom: 1px solid var(--lv-line); opacity: 0; visibility: hidden; transform: translateY(-12px); transition: opacity .6s var(--lv-ease), transform .6s var(--lv-ease), visibility 0s .6s; }
.lv-search.is-open { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
body.admin-bar .lv-search { top: calc(var(--lv-header) + 32px); }
.lv-search form { display: flex; gap: .75rem; max-width: 720px; margin: auto; }
.lv-search input { flex: 1; min-width: 0; height: 48px; padding: 0 1.25rem; border: 1px solid rgba(26, 26, 25, .25); border-radius: 999px; background: #fff; color: var(--lv-ink); font: 400 1rem var(--lv-body); }

.lv-menu { position: fixed; inset: 0; z-index: 998; display: flex; align-items: center; overflow-y: auto; padding: calc(var(--lv-header) + 2rem) var(--lv-gutter) 3rem; background: var(--lv-ink); color: var(--lv-cream); clip-path: inset(0 0 100% 0); visibility: hidden; transition: clip-path .9s var(--lv-ease), visibility 0s .9s; }
.lv-menu.is-open { clip-path: inset(0); visibility: visible; transition-delay: 0s; }
.lv-menu__nav { display: flex; flex-direction: column; width: min(100%, 1280px); margin: auto; }
.lv-menu__nav a { display: flex; align-items: baseline; gap: 1.25rem; padding: .6rem 0; border-bottom: 1px solid rgba(255, 255, 255, .1); font: 800 clamp(1.5rem, 4.2vw, 3rem)/1.1 var(--lv-display); letter-spacing: -.025em; opacity: 0; transform: translateY(24px); transition: opacity .8s var(--lv-ease), transform .8s var(--lv-ease), color .5s var(--lv-ease); }
.lv-menu.is-open .lv-menu__nav a { opacity: 1; transform: none; transition-delay: calc(var(--i) * 60ms + 250ms), calc(var(--i) * 60ms + 250ms), 0s; }
.lv-menu__nav a:hover { color: var(--lv-orange); }
.lv-menu__nav small { min-width: 2rem; font: 700 .75rem/1 var(--lv-display); letter-spacing: .2em; color: var(--lv-orange); }

/* ---- Buttons ---- */
.lv-pill { display: inline-flex; align-items: center; justify-content: center; gap: .6rem; height: 48px; padding: 0 1.5rem; border: 0; border-radius: 999px; background: var(--lv-orange); color: var(--lv-ink); font: 700 .9375rem/1 var(--lv-body); letter-spacing: .025em; white-space: nowrap; transition: transform .6s var(--lv-ease), background .6s var(--lv-ease); }
.lv-pill:hover { transform: scale(1.05); }
.lv-pill--cream { background: var(--lv-cream); }
.lv-pill--lg { height: 60px; padding: 0 2.25rem; font-size: 0.9375rem; }

/* ---- Cinematic hero (pinned while the slices grow: --hero-scroll 0→1 is set by JS) ---- */
.lv-hero-wrap { position: relative; height: calc(100vh + 60vh); }
.lv-hero { position: sticky; top: 0; height: 100vh; overflow: hidden; isolation: isolate; background: var(--lv-ink); color: var(--lv-cream); }
@supports (height: 100svh) { .lv-hero-wrap { height: calc(100svh + 60svh); } .lv-hero { height: 100svh; } }
.lv-hero__media { position: absolute; inset: 0; z-index: -1; }
.lv-hero__media::after { content: ""; position: absolute; inset: 0; z-index: 1; background: radial-gradient(ellipse 60% 42% at 50% 32%, rgba(0, 0, 0, .28), transparent 75%), rgba(0, 0, 0, .3); } /* legibility scrim + vignette behind the headline */
.lv-hero__img { width: 100%; height: 100%; object-fit: cover; filter: sepia(.3) saturate(.4) contrast(1.15) brightness(.85); transform-origin: 60% 55%; animation: lv-kenburns 30s ease-in-out infinite alternate; will-change: transform; }
@keyframes lv-kenburns { from { transform: scale(1.02); } to { transform: scale(1.14) translate3d(-1.5%, -1%, 0); } }
.lv-hero__grad { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.lv-hero__grad--top { background: linear-gradient(to bottom, rgba(253, 251, 247, .1), transparent 35%); }
.lv-hero__grad--bottom { background: linear-gradient(to top, rgba(0, 0, 0, .9), transparent 70%); }

.lv-hero__content { position: absolute; inset: 0; display: flex; flex-direction: column; padding: var(--lv-header) 0 12vh; opacity: max(0, calc(1 - var(--hero-scroll, 0) * 1.25)); transform: translate3d(0, calc(var(--hero-scroll, 0) * -5vh), 0); }
.lv-hero__headline { flex: 1; min-height: 0; display: flex; align-items: center; justify-content: center; padding: 1rem var(--lv-gutter); text-align: center; }
.lv-hero__title { font: 800 clamp(2.25rem, min(7.5vw, 12.5vh), 6.5rem)/.94 var(--lv-display); letter-spacing: -.03em; color: var(--lv-cream); text-shadow: 0 2px 40px rgba(0, 0, 0, .35); animation: lv-rise 1.4s var(--lv-ease) .1s both; }
.lv-hero__title em { display: block; font-style: italic; font-weight: 700; color: rgba(253, 251, 247, .86); }
@keyframes lv-rise { from { opacity: 0; transform: translate3d(0, 28px, 0); } }

/* Glassmorphic scan-line panel (sits at ~60% depth: content is bottom-anchored above the slices) */
.lv-glass { position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 1.5rem 2rem; width: min(896px, 100% - 2 * var(--lv-gutter)); margin-inline: auto; padding: 1.5rem 2rem; border: 1px solid rgba(255, 255, 255, .1); border-radius: 1.5rem; background: rgba(0, 0, 0, .3); -webkit-backdrop-filter: blur(20px) saturate(180%); backdrop-filter: blur(20px) saturate(180%); animation: lv-rise 1.4s var(--lv-ease) .35s both; }
.lv-scan { position: absolute; top: 0; left: 0; width: 30%; height: 100%; background: linear-gradient(to right, transparent, rgba(234, 88, 12, .4), transparent); transform: translateX(-66.7%); animation: lv-scan 2.5s cubic-bezier(.4, 0, .2, 1) infinite; pointer-events: none; } /* left -20% → 120% expressed as translate (GPU) */
@keyframes lv-scan { to { transform: translateX(400%); } }
.lv-glass__text, .lv-glass .lv-pill { position: relative; }
.lv-glass__text { font: 500 clamp(.875rem, 1.2vw, 1rem)/1.6 var(--lv-body); color: var(--lv-cream); }
.lv-glass .lv-pill { color: var(--lv-cream); }

/* Brand ticker */
.lv-ticker { margin-top: 1.25rem; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); animation: lv-rise 1.6s var(--lv-ease) .6s both; }
.lv-ticker__track { display: flex; width: max-content; animation: lv-marquee 60s linear infinite; }
.lv-ticker__group { display: flex; flex: none; align-items: center; }
.lv-ticker__group li { display: flex; align-items: center; padding: .5rem 0; font: 700 1.125rem/1 var(--lv-display); letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; color: rgba(253, 251, 247, .85); }
.lv-ticker__group li::after { content: ""; width: 6px; height: 6px; margin: 0 2.25rem; border-radius: 50%; background: var(--lv-orange); }
@keyframes lv-marquee { to { transform: translateX(-25%); } }

/* Navigation slices */
.lv-slices { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; display: flex; height: calc(12vh + 33vh * var(--hero-scroll, 0)); min-height: 88px; border-top: 1px solid rgba(255, 255, 255, .1); }
.lv-slice { position: relative; isolation: isolate; flex: 1; min-width: 0; overflow: hidden; display: flex; flex-direction: column; justify-content: flex-end; padding: 1rem clamp(1rem, 2vw, 2rem); color: var(--lv-cream); transition: flex .7s var(--lv-ease), filter .7s var(--lv-ease); }
.lv-slice + .lv-slice { border-left: 1px solid rgba(255, 255, 255, .1); }
.lv-slice__bg { position: absolute; inset: 0; z-index: -3; background: var(--lv-hero) var(--x, 50%) var(--y, 50%) / calc(var(--z, 2.3) * 100%) auto no-repeat; transition: transform 1.4s var(--lv-ease); }
.lv-slice::before { content: ""; position: absolute; inset: 0; z-index: -2; background: linear-gradient(to top, rgba(0, 0, 0, .65), transparent 65%); }
.lv-slice::after { content: ""; position: absolute; inset: 0; z-index: -1; background: #000; opacity: .4; transition: opacity .7s var(--lv-ease); }
.lv-slices:hover .lv-slice { flex: .5; filter: blur(3px); }
.lv-slices:has(:focus-visible) .lv-slice { flex: .5; filter: blur(3px); }
.lv-slices .lv-slice:hover, .lv-slices .lv-slice:focus-visible { flex: 2.5; filter: none; }
.lv-slice:hover::after, .lv-slice:focus-visible::after { opacity: 0; }
.lv-slice:hover .lv-slice__bg, .lv-slice:focus-visible .lv-slice__bg { transform: scale(1.08); }
.lv-slice__idx { position: absolute; top: .875rem; left: clamp(1rem, 2vw, 2rem); font: 800 .75rem/1 var(--lv-display); letter-spacing: .2em; color: rgba(253, 251, 247, .85); }
.lv-slice__label { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; max-width: 24ch; font: 800 clamp(1.125rem, 1.9vw, 1.75rem)/1.1 var(--lv-display); letter-spacing: -.025em; opacity: 0; transform: translateY(20px); transition: opacity .7s var(--lv-ease), transform .7s var(--lv-ease); }
.lv-slice:hover .lv-slice__label, .lv-slice:focus-visible .lv-slice__label { opacity: 1; transform: none; }
@media (hover: none) { /* no hover: labels are always on, so stack index + label instead of overlaying them */
  .lv-slices { min-height: 104px; }
  .lv-slice { padding-block: .875rem; }
  .lv-slice__idx { position: static; margin-bottom: .3rem; }
  .lv-slice__label { opacity: 1; transform: none; font-size: clamp(1rem, 1.5vw, 1.375rem); }
}

/* ---- Intro ---- */
.lv-intro { padding-block: clamp(5rem, 10vw, 8rem); }
.lv-intro__text { grid-column: 1 / -1; max-width: 60rem; font: 500 clamp(1.25rem, 2.4vw, 1.875rem)/1.5 var(--lv-body); letter-spacing: .01em; }
.lv-intro__text p + p { margin-top: 1.25rem; }
.lv-intro__text strong { font-weight: 700; }
@media (min-width: 1024px) { .lv-intro__text { grid-column: 3 / span 9; } }
.lv-intro a, .lv-spread__text a, .lv-row__text a { color: var(--lv-orange-ink); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; transition: color .5s var(--lv-ease); }
.lv-intro a:hover, .lv-spread__text a:hover, .lv-row__text a:hover { color: var(--lv-ink); }

/* ---- Editorial fragmented grid ---- */
.lv-spread { padding-block: clamp(5rem, 10vw, 8rem); scroll-margin-top: var(--lv-header); }
.lv-spread--flip { background: var(--lv-sand); }
.lv-spread .lv-grid { grid-template-columns: 1fr; align-items: start; }
.lv-spread__head { order: 1; }
.lv-spread__head h2 { font: 800 clamp(2.25rem, 5vw, 4rem)/1.02 var(--lv-display); letter-spacing: -.025em; }
.lv-spread__media { order: 2; aspect-ratio: 4 / 5; width: min(100%, 30rem); margin-top: 2.5rem; }
.lv-spread__square { order: 3; aspect-ratio: 1; width: 46%; margin: -4.5rem 0 0 auto; }
.lv-spread__text { order: 4; max-width: 34rem; margin: 3rem auto 0; text-align: center; }
.lv-spread__text p { font: 400 0.9375rem/1.75 var(--lv-body); color: var(--lv-muted); }
.lv-spread__text p + p { margin-top: 1rem; }
.lv-quote { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; margin-bottom: 1.75rem; border: 1px solid var(--lv-line); border-radius: 50%; color: var(--lv-orange-ink); }
.lv-crop { position: relative; overflow: hidden; border-radius: .25rem; background: var(--lv-sand); }
.lv-crop__img { position: absolute; inset: -10% 0; background: var(--lv-hero) var(--x, 50%) var(--y, 50%) / auto calc(var(--z, 1) * 100%) no-repeat; transform: translate3d(0, var(--py, 0px), 0); will-change: transform; }
@media (min-width: 1024px) {
  .lv-spread { padding-block: 8rem; }
  .lv-spread .lv-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .lv-spread__head { grid-column: 1 / span 8; grid-row: 1; }
  .lv-spread__square { grid-column: 10 / span 3; grid-row: 1; width: auto; margin: -120px 0 0; } /* pulled up into the section padding */
  .lv-spread__media { grid-column: 1 / span 5; grid-row: 2; width: auto; margin-top: 4rem; position: sticky; top: calc(var(--lv-header) + 4rem); align-self: start; } /* staggered below the headline; sticky so it doesn't leave empty space beside a long text column */
  .lv-spread__text { grid-column: 7 / span 6; grid-row: 2; align-self: center; margin: 4rem 0 0; }
  .lv-spread--flip .lv-spread__head { grid-column: 5 / span 8; }
  .lv-spread--flip .lv-spread__square { grid-column: 1 / span 3; }
  .lv-spread--flip .lv-spread__media { grid-column: 8 / span 5; }
  .lv-spread--flip .lv-spread__text { grid-column: 1 / span 6; }
}

/* Anything besides paragraphs an editor adds to a section (lists, sub-headings) keeps the body style */
.lv-rich { font: 400 0.9375rem/1.7 var(--lv-body); color: var(--lv-muted); }
.lv-rich * + * { margin-top: 1rem; }
.lv-rich ul, .lv-rich ol { padding-left: 1.25rem; list-style: revert; text-align: left; }
.lv-rich h3 { font: 800 0.9375rem/1.25 var(--lv-display); color: var(--lv-ink); }

/* Numbered rows for the practical middle sections */
.lv-rows { padding-block: clamp(3rem, 7vw, 6rem); background: var(--lv-sand); }
.lv-row { row-gap: 1rem; padding-block: clamp(2rem, 4vw, 3.5rem); border-top: 1px solid var(--lv-line); scroll-margin-top: var(--lv-header); }
.lv-row:first-child { border-top: 0; }
.lv-row__num { grid-column: 1 / -1; font: 800 .75rem/1 var(--lv-display); letter-spacing: .2em; color: var(--lv-orange-ink); }
.lv-row__title { grid-column: 1 / -1; font: 800 clamp(1.5rem, 3vw, 2.25rem)/1.1 var(--lv-display); letter-spacing: -.025em; }
.lv-row__text { grid-column: 1 / -1; color: var(--lv-muted); }
.lv-row__text p { font: 400 0.9375rem/1.75 var(--lv-body); }
@media (min-width: 1024px) { .lv-row__num { grid-column: 1 / span 1; } .lv-row__title { grid-column: 2 / span 5; } .lv-row__text { grid-column: 8 / span 5; } }

/* ---- Typographic footer ---- */
.lv-outro { padding-block: clamp(6rem, 14vw, 11rem); background: var(--lv-ink); color: var(--lv-cream); text-align: center; }
.lv-outro__logo { width: 88px; height: 88px; margin: 0 auto 2.5rem; opacity: .9; filter: invert(1) brightness(1.15); }
.lv-outro__title { max-width: 22ch; margin-inline: auto; font: 700 clamp(1.75rem, 4vw, 3rem)/1.1 var(--lv-display); letter-spacing: -.02em; color: var(--lv-cream); }
.lv-outro__title strong { font-weight: 800; color: var(--lv-cream); }
.lv-outro__title em { font-style: italic; font-weight: 700; color: rgba(253, 251, 247, .75); }
.lv-outro__text { max-width: 38rem; margin: 1.5rem auto 2.5rem; font: 400 1rem/1.7 var(--lv-body); color: var(--lv-cream); }

.lv-outro__bar { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem 2rem; margin-top: clamp(4rem, 8vw, 7rem); padding-top: 1.5rem; border-top: 1px solid rgba(255, 255, 255, .1); font: 400 .875rem/1.5 var(--lv-body); color: rgba(253, 251, 247, .6); text-align: left; }
.lv-outro__bar nav { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; }
.lv-outro__bar a { transition: color .5s var(--lv-ease); }
.lv-outro__bar a:hover { color: var(--lv-orange); }

/* ---- Scroll reveal (only when JS is running) ---- */
.lv-js [data-lv-reveal] { opacity: 0; transform: translate3d(0, 32px, 0); transition: opacity 1.1s var(--lv-ease), transform 1.1s var(--lv-ease); }
.lv-js [data-lv-reveal].is-in { opacity: 1; transform: none; }

/* ---- Small screens: no pinned runway, slices become stacked rows ---- */
@media (max-width: 767px) {
  .lv-hero-wrap { height: auto; }
  .lv-hero { position: relative; display: flex; flex-direction: column; height: auto; min-height: 100vh; min-height: 100svh; }
  .lv-hero__content { position: relative; inset: auto; flex: 1; padding: calc(var(--lv-header) + 1rem) 0 1.5rem; }
  .lv-hero__headline { padding-block: 2.5rem; }
  .lv-glass { grid-template-columns: 1fr; padding: 1.25rem; }
  .lv-glass .lv-pill { justify-self: start; height: auto; min-height: 48px; padding: .75rem 1.5rem; white-space: normal; text-align: center; }
  .lv-slices { position: relative; flex-direction: column; height: auto; min-height: 0; }
  .lv-slice, .lv-slices:hover .lv-slice { flex: none; height: 5.5rem; filter: none; }
  .lv-slice + .lv-slice { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .1); }
  .lv-slice__label { opacity: 1; transform: none; }
  .lv-header__inner { gap: .75rem; }
  .lv-logo { font-size: 0.9375rem; }
}

@media (prefers-reduced-motion: reduce) {
  .lv-hero__img, .lv-scan, .lv-ticker__track, .lv-logo__dot, .lv-hero__title, .lv-glass, .lv-ticker { animation: none; }
  .lv-js [data-lv-reveal] { opacity: 1; transform: none; transition: none; }
  .lv-crop__img { transform: none !important; }
}
