/* Configurable editorial placements. Product, cart and checkout remain native. */
.lavitto-ui-b .lavitto-campaign { margin: var(--lv-space-32) 0 0; }
.lavitto-ui-b .lavitto-campaign--home-main { margin: 0; }
.lavitto-ui-b .lavitto-campaign--home-seasonal { background: var(--lv-soft); color: var(--lv-ink); }
.lavitto-ui-b .lavitto-campaign--home-seasonal h2 { color: var(--lv-ink); }
.lavitto-ui-b .lavitto-campaign--home-seasonal .lvb-button--light { background: var(--lv-ink); color: var(--lv-white); }
.lavitto-ui-b .lavitto-campaign--home-seasonal .lvb-button--light:hover { background: var(--lv-accent); }
.lavitto-ui-b .lavitto-campaign__eyebrow { margin: 0 0 var(--lv-space-8); font: 600 12px/1.3 var(--lv-font); letter-spacing: .11em; text-transform: uppercase; }
.lavitto-ui-b .lavitto-campaign--catalogue { max-width: var(--lv-content-width); margin: var(--lv-space-40) auto; }
.lavitto-ui-b .lavitto-campaign--product { max-width: var(--lv-content-width); margin-inline: auto; }
.lavitto-ui-b .lavitto-campaign--catalogue picture,
.lavitto-ui-b .lavitto-campaign--product picture { background: var(--lv-soft); }
.lavitto-ui-b .lvb-home { position: relative; }
.lavitto-ui-b .lavitto-home-intro { position: absolute; z-index: 2; top: 14px; right: max(var(--lv-gutter), calc((100vw - var(--lv-content-width)) / 2)); display: block; width: 38px; height: 38px; opacity: 0; pointer-events: none; transform: translate3d(0, 4px, 0) scale(.92); }
.lavitto-ui-b .lavitto-home-intro img { display: block; width: 100%; height: 100%; object-fit: contain; }
.lavitto-ui-b .lavitto-home-intro.is-lavitto-playing { animation: lavitto-home-mark .48s cubic-bezier(.22, .8, .25, 1) both; }
html.lavitto-motion-ready .lavitto-ui-b [data-lavitto-reveal] { opacity: 0; transform: translate3d(0, 10px, 0); transition: opacity .24s ease-out, transform .24s ease-out; }
html.lavitto-motion-ready .lavitto-ui-b [data-lavitto-reveal].is-lavitto-visible { opacity: 1; transform: translate3d(0, 0, 0); }
@keyframes lavitto-home-mark { 0% { opacity: 0; transform: translate3d(0, 5px, 0) scale(.88); } 42% { opacity: .84; transform: translate3d(0, 0, 0) scale(1); } 100% { opacity: 0; transform: translate3d(0, -3px, 0) scale(.96); } }
@media (min-width: 700px) {
  .lavitto-ui-b .lavitto-campaign--catalogue,
  .lavitto-ui-b .lavitto-campaign--product { margin-top: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  .lavitto-ui-b .lavitto-home-intro { display: none; }
  html.lavitto-motion-ready .lavitto-ui-b [data-lavitto-reveal] { opacity: 1; transform: none; transition: none; }
}
