/*
 * La Ruota homepage, 2026 design (handoff 01-homepage.html), loaded on the home route only.
 * Taken from the handoff's own stylesheet: its header and footer rules live in lr-design.css,
 * every selector here is scoped to #lr-home, and its keyframes carry an lrh- prefix so nothing
 * meets the older sheets. --navh follows the site header (68px, 60px under 1100px).
 */
#lr-home .islot { display:block;width:100%;height:100%;object-fit:cover }
#lr-home .islot-empty { background:#E3DFDA }
#lr-home { --ink:#0a0909;--paper:#ebe7e2;--gold:#d69e3e;--gold2:#f3cf86;--red:#c53831;--offc:#f6f1ea;--cream:#f4efe7;--muted:rgba(244,239,231,.72);--line:rgba(244,239,231,.14);--gutter:0px;--navh:68px;--rule-dark:rgba(255,255,255,.14) }
#lr-home * { box-sizing:border-box;margin:0;padding:0 }
#lr-home { background:var(--paper);color:var(--cream);font-family:Outfit,system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip }
#lr-home a { color:inherit;text-decoration:none }
#lr-home a:hover { color:var(--gold) }
#lr-home .btn, #lr-home .btn:hover, #lr-home .gift-btn, #lr-home .gift-btn:hover { color:inherit }
#lr-home .btn { transition:opacity 1s 1.25s,transform 1s cubic-bezier(.2,.7,.2,1) 1.25s,filter .2s,font-size .2s,padding .2s }
#lr-home .btn .lbl, #lr-home .gift-btn .lbl { display:inline-block;transition:transform .2s }
#lr-home .btn:hover .lbl, #lr-home .gift-btn:hover .lbl { transform:scale(1.12) }
#lr-home .hero { position:relative;margin:0 var(--gutter) }
#lr-home .stage { height:calc(100vh - var(--navh));height:calc(100svh - var(--navh));overflow:hidden }
#lr-home .frame { position:relative;height:100%;overflow:hidden;background:#0a0706 }
#lr-home .media { position:absolute;inset:0;transform:scale(1.08);transition:transform 3s cubic-bezier(.2,.7,.2,1) }
#lr-home .loaded .media { transform:none }
#lr-home .frame .loop { position:absolute;inset:0;width:100%;height:100%;object-fit:cover }
#lr-home .veil { position:absolute;inset:0;background:#050303;pointer-events:none;transition:opacity 2.2s ease .1s }
#lr-home .loaded .veil { opacity:0 }
#lr-home .shade { position:absolute;inset:0;pointer-events:none; background: radial-gradient(ellipse 52% 46% at 50% 52%,rgba(8,5,4,.66),rgba(8,5,4,.3) 62%,rgba(8,5,4,0) 100%), linear-gradient(rgba(8,5,4,.1),rgba(8,5,4,.1)), radial-gradient(ellipse 120% 100% at 50% 50%,transparent 55%,rgba(5,3,2,.55) 100%), linear-gradient(180deg,rgba(5,4,4,.45),transparent 22%) }
#lr-home .copy { position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 24px }
/* the headline carries its own shadow; on the whole block (with the button) it was redrawn on every frame of the button's shine */
#lr-home .heads { position:relative;display:grid;place-items:center;filter:drop-shadow(0 2px 4px rgba(0,0,0,.35)) drop-shadow(0 10px 30px rgba(0,0,0,.5)) }
#lr-home .heads h1 { font-weight:500;font-size:clamp(40px,5.4vw,104px);line-height:1.06;letter-spacing:-.025em;max-width:15.5em }
#lr-home .word { display:inline-block;overflow:hidden;vertical-align:top;padding:.04em .02em .12em;margin:-.04em 0 -.12em }
#lr-home .word .s { display:inline-block;will-change:transform }
#lr-home .hero.intro-done .word .s { will-change:auto }
#lr-home .word .l { display:inline-block;transform:translateY(115%);transition:transform 1.8s cubic-bezier(.16,.84,.24,1); background:linear-gradient(100deg,#fff 0%,#fff 42%,#fff6e0 47%,#ffe7b3 50%,#fff6e0 53%,#fff 58%,#fff 100%);background-size:300% 100%;background-position:100% 0; -webkit-background-clip:text;background-clip:text;color:transparent }
#lr-home .loaded h1 .word .l { transform:none;animation:lrh-sweep 1.3s cubic-bezier(.45,0,.55,1) backwards }
@keyframes lrh-sweep { from{background-position:100% 0} 50%{filter:drop-shadow(0 0 18px rgba(255,236,200,.6))} to{background-position:0 0} }
#lr-home .btn { color:#fff;margin-top:clamp(30px,3.4vw,50px);position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;padding:22px 46px;background:var(--red);color:#fff;font-size:15px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;box-shadow:0 12px 36px rgba(0,0,0,.45); opacity:0;transform:translateY(22px);transition:opacity 1s 1.25s,transform 1s cubic-bezier(.2,.7,.2,1) 1.25s,filter .2s }
#lr-home .loaded .btn { opacity:1;transform:none }
#lr-home .btn::after { content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);transform:translateX(-120%);animation:lrh-shine 7s ease-in-out 3s infinite }
@keyframes lrh-shine { 0%,70%{transform:translateX(-120%)}100%{transform:translateX(120%)} }
#lr-home .btn:hover { filter:brightness(1.12) }
#lr-home .cue { position:absolute;left:50%;bottom:28px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.75);text-shadow:0 1px 8px rgba(0,0,0,.6);opacity:0;transition:opacity 1.2s 2.4s;will-change:opacity }
#lr-home .loaded .cue { opacity:1 }
#lr-home .hero.intro-done .cue { transition:opacity .3s }
#lr-home .cue i { width:1px;height:42px;background:linear-gradient(var(--gold),transparent);animation:lrh-cue 1.8s ease-in-out infinite;transform-origin:top }
@keyframes lrh-cue { 0%{transform:scaleY(0)}50%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0} }
#lr-home .endfade { position:absolute;left:0;right:0;bottom:0;height:70%;pointer-events:none;background:linear-gradient(180deg,rgba(246,241,234,0) 0%,rgba(246,241,234,.55) 45%,#f6f1ea 88%);opacity:0;will-change:opacity }
#lr-home .app { --off:var(--offc);--ink2:#141110;--grey:#8b837a;--gold3:#9c6c1e;position:relative;margin:0 var(--gutter);color:var(--ink2); background:radial-gradient(ellipse 60% 50% at 75% 55%,#fbf3e3 0%,rgba(251,243,227,0) 70%),var(--off) }
#lr-home .app-blend { height:14vh;background:var(--off) }
#lr-home .app-track { position:relative;height:460vh;margin-top:-1px }
#lr-home .app-stage { position:sticky;top:var(--navh);height:calc(100vh - var(--navh));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,80px);padding:0 clamp(20px,5vw,110px);overflow:hidden }
#lr-home .app-copy { max-width:640px }
#lr-home .app-eyebrow { display:inline-flex;align-items:center;gap:14px;font-size:13px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--gold3) }
#lr-home .app-eyebrow::before { content:"";width:34px;height:2px;background:var(--gold) }
#lr-home .app h2 { font-weight:600;font-size:clamp(34px,3.9vw,72px);white-space:nowrap;line-height:1.02;letter-spacing:-.03em;margin:18px 0 clamp(26px,3.2vh,44px) }
#lr-home .app h2 em { font-style:normal;color:var(--gold3) }
#lr-home .reveal { opacity:0;transform:translateY(26px);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1) }
#lr-home .app.in .reveal { opacity:1;transform:none }
#lr-home .app.in .reveal.d1 { transition-delay:.12s }
#lr-home .app.in .reveal.d2 { transition-delay:.24s }
#lr-home .app.in .reveal.d3 { transition-delay:.36s }
#lr-home .ease-o { transition-timing-function:cubic-bezier(.16,.84,.24,1) }
#lr-home .intro-eyebrow { opacity:0;transition:opacity .5s }
#lr-home .intro-eyebrow::before { transform:scaleX(0);transform-origin:0 50%;transition:transform .6s cubic-bezier(.16,.84,.24,1) .05s }
#lr-home .app.in .intro-eyebrow { opacity:1 }
#lr-home .app.in .intro-eyebrow::before { transform:none }
#lr-home .intro-h .aw { display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em }
#lr-home .intro-h .aw>span { display:inline-block;transform:translateY(110%) rotate(4deg);transform-origin:0 100%;transition:transform .75s cubic-bezier(.16,.84,.24,1) }
#lr-home .app.in .intro-h .aw>span { transform:none }
#lr-home .app.in .intro-h .aw:nth-of-type(1)>span { transition-delay:0.12s }
#lr-home .app.in .intro-h .aw:nth-of-type(2)>span { transition-delay:0.16s }
#lr-home .app.in .intro-h .aw:nth-of-type(3)>span { transition-delay:0.20s }
#lr-home .app.in .intro-h .aw:nth-of-type(4)>span { transition-delay:0.24s }
#lr-home .app.in .intro-h .aw:nth-of-type(5)>span { transition-delay:0.28s }
#lr-home .app.in .intro-h .aw:nth-of-type(6)>span { transition-delay:0.32s }
#lr-home .app.in .intro-h .aw:nth-of-type(7)>span { transition-delay:0.36s }
#lr-home .app.in .intro-h .aw:nth-of-type(8)>span { transition-delay:0.40s }
#lr-home .app.in .intro-h .aw:nth-of-type(9)>span { transition-delay:0.44s }
#lr-home .benefit { opacity:0;transform:translateX(-30px) }
#lr-home .app.in .benefit { opacity:1;transform:none;transition:opacity .6s cubic-bezier(.16,.84,.24,1),transform .6s cubic-bezier(.16,.84,.24,1),background .6s,box-shadow .6s }
#lr-home .app.in .benefit:nth-child(1) { transition-delay:.4s,.4s,0s,0s }
#lr-home .app.in .benefit:nth-child(2) { transition-delay:.48s,.48s,0s,0s }
#lr-home .app.in .benefit:nth-child(3) { transition-delay:.56s,.56s,0s,0s }
#lr-home .app.intro-done .benefit { transition-delay:0s }
#lr-home .intro-stores .store { opacity:0;transform:translateY(20px) scale(.92) }
#lr-home .app.in .intro-stores .store { opacity:1;transform:none;transition:opacity .5s .65s,transform .6s cubic-bezier(.3,1.5,.5,1) .65s,box-shadow .25s,background .25s }
#lr-home .app.in .intro-stores .store+.store { transition-delay:.72s,.72s,0s,0s }
#lr-home .app.intro-done .intro-stores .store { transition:transform .25s,box-shadow .25s,background .25s }
#lr-home .intro-phone { opacity:0;transform:translateY(90px) scale(.9);filter:blur(10px);transition:opacity .8s cubic-bezier(.16,.84,.24,1) .1s,transform 1s cubic-bezier(.16,.84,.24,1) .1s,filter .8s .1s }
#lr-home .app.in .intro-phone { opacity:1;transform:none;filter:none }
#lr-home .app.intro-done .intro-phone { filter:none;transition:none }
#lr-home .phone-ring circle, #lr-home .phone-ring line { stroke-dasharray:160;stroke-dashoffset:160;transition:stroke-dashoffset 1.4s cubic-bezier(.16,.84,.24,1) .25s }
#lr-home .app.in .phone-ring circle, #lr-home .app.in .phone-ring line { stroke-dashoffset:0 }
#lr-home .phone-ring circle:nth-child(2) { stroke-dasharray:.6 1.2;stroke-dashoffset:0;opacity:0;transition:opacity .9s .6s }
#lr-home .app.in .phone-ring circle:nth-child(2) { opacity:1 }
#lr-home .blobs { opacity:0;transform:scale(.7);transition:opacity 1.2s,transform 1.5s cubic-bezier(.16,.84,.24,1) }
#lr-home .app.in .blobs { opacity:1;transform:none }
#lr-home .benefits { list-style:none;display:flex;flex-direction:column;gap:6px }
#lr-home .benefit { position:relative;display:grid;grid-template-columns:1fr;gap:4px;padding:clamp(14px,2vh,22px) 24px clamp(14px,2vh,22px) 28px;border-radius:16px;cursor:pointer; transition:background .6s,box-shadow .6s }
#lr-home .benefit h3 { font-size:clamp(20px,1.6vw,28px);font-weight:600;letter-spacing:-.01em;color:#a79f95;transition:color .5s }
#lr-home .benefit p { font-size:clamp(15px,1.05vw,18px);line-height:1.55;color:var(--grey);max-height:0;opacity:0;overflow:hidden;transition:max-height .7s cubic-bezier(.2,.7,.2,1),opacity .5s,margin .5s }
#lr-home .benefit .meter { position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:3px;background:rgba(20,17,16,.08);overflow:hidden }
#lr-home .benefit .meter i { position:absolute;inset:0;background:linear-gradient(var(--gold),#e6b964);transform-origin:50% 0;transform:scaleY(0) }
#lr-home .benefit.on { background:#fff;box-shadow:0 18px 50px rgba(60,40,15,.09),0 2px 6px rgba(60,40,15,.05) }
#lr-home .benefit.done h3 { color:var(--ink2) }
#lr-home .benefit h3 .tick { display:inline-grid;place-items:center;width:22px;height:22px;margin-left:10px;border-radius:50%;background:var(--gold);color:#fff;font-size:12px;vertical-align:3px;opacity:0;transform:scale(.4);transition:opacity .4s,transform .5s cubic-bezier(.3,1.6,.5,1) }
#lr-home .benefit.done h3 .tick { opacity:1;transform:none }
#lr-home .benefit.on h3 { color:var(--ink2) }
#lr-home .benefit.on p { max-height:120px;opacity:1;margin-top:4px }
#lr-home .benefit p strong { color:var(--ink2);font-weight:600 }
#lr-home .benefit p .hl { color:var(--ink2);font-weight:600;padding:.06em .2em .1em;margin:0 -.08em;border-radius:5px;-webkit-box-decoration-break:clone;box-decoration-break:clone; background-image:linear-gradient(100deg,rgba(255,255,255,0) 40%,rgba(255,250,235,.85) 50%,rgba(255,255,255,0) 60%),linear-gradient(90deg,rgba(233,184,96,.62),rgba(244,206,128,.7)); background-repeat:no-repeat;background-size:220% 100%,0% 100%;background-position:120% 50%,0 50%; transition:background-size .9s cubic-bezier(.2,.7,.2,1) .35s }
#lr-home .benefit.on p .hl { background-size:220% 100%,100% 100%;animation:lrh-hlShine 3.2s ease-in-out 1.3s infinite }
#lr-home .benefit.on p .hl+.hl { transition-delay:.7s }
@keyframes lrh-hlShine { 0%{background-position:120% 50%,0 50%}60%,100%{background-position:-120% 50%,0 50%} }
#lr-home .stores-wrap { margin-top:clamp(24px,3.4vh,40px) }
#lr-home .stores-note { font-size:14px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold3);max-height:0;opacity:0;overflow:hidden;transition:max-height .6s,opacity .5s,margin .6s }
#lr-home .stores-wrap.focus .stores-note { max-height:30px;opacity:1;margin-bottom:14px }
#lr-home .stores { display:flex;flex-wrap:wrap;gap:14px }
#lr-home .stores-wrap.focus .store { transform:scale(1.08);transform-origin:0 50%;box-shadow:0 0 0 5px rgba(214,158,62,.32),0 16px 34px rgba(20,17,16,.22);animation:lrh-pulse 2.4s ease-in-out infinite }
#lr-home .stores-wrap.focus .store+.store { transform-origin:0 50%;margin-left:12px }
@keyframes lrh-pulse { 50%{box-shadow:0 0 0 10px rgba(214,158,62,.12),0 16px 34px rgba(20,17,16,.22)} }
#lr-home .store { display:inline-flex;align-items:center;gap:12px;background:var(--ink2);color:#fff;padding:12px 22px 12px 18px;border-radius:14px;transition:transform .25s,box-shadow .25s,background .25s }
#lr-home .store:hover { transform:translateY(-2px);box-shadow:0 12px 28px rgba(20,17,16,.25);background:#000 }
#lr-home .store svg { width:26px;height:26px;flex:none }
#lr-home .store span { display:flex;flex-direction:column;line-height:1.1 }
#lr-home .store small { font-size:11px;letter-spacing:.04em;opacity:.8 }
#lr-home .store b { font-size:19px;font-weight:600;letter-spacing:-.01em }
#lr-home .phone-wrap { position:relative;height:100%;display:grid;place-items:center }
#lr-home .phone-glow { position:absolute;margin-top:-6vh;width:min(32vw,58vh);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(214,158,62,.34),rgba(214,158,62,.1) 45%,rgba(214,158,62,0) 70%) }
#lr-home .phone-ring { position:absolute;width:min(34vw,62vh);aspect-ratio:1;opacity:.5 }
#lr-home .phones { position:relative;height:min(84vh,860px);aspect-ratio:888/1400;will-change:transform }
#lr-home .phones img { position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:translateY(50px) scale(.94) rotate(-2deg); transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1);filter:drop-shadow(0 40px 50px rgba(40,25,10,.28)) }
#lr-home .phones img.on { opacity:1;transform:none }
#lr-home .phones img.past { transform:translateY(-50px) scale(.94) rotate(2deg) }
#lr-home .phones.fan img { opacity:1 }
#lr-home .phones.fan img:nth-child(1) { transform:translateX(-36%) translateY(4%) scale(.76) rotate(-8deg);z-index:1 }
#lr-home .phones.fan img:nth-child(2) { transform:translateY(-2%) scale(.88);z-index:3 }
#lr-home .phones.fan img:nth-child(3) { transform:translateX(36%) translateY(4%) scale(.76) rotate(8deg);z-index:2 }
#lr-home .dots { position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px }
#lr-home .dots i { width:8px;height:8px;border-radius:50%;background:rgba(20,17,16,.15);transition:background .4s,transform .4s }
#lr-home .dots i.on { background:var(--gold);transform:scale(1.4) }
#lr-home .app-bg { position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden }
#lr-home .app-copy, #lr-home .phone-wrap { position:relative;z-index:1 }
#lr-home .blobs { position:absolute;top:0;bottom:14%;right:0;width:54%;-webkit-mask-image:radial-gradient(closest-side at 52% 44%,#000 25%,transparent 88%);mask-image:radial-gradient(closest-side at 52% 44%,#000 25%,transparent 88%) }
/* the blobs are soft radial gradients (a 30vw disc blurred by 60px, drawn once) instead of a live blur, and their
   colours glide through registered properties, so moving them is left to the compositor */
@property --lrh-b1 { syntax:'<color>';inherits:true;initial-value:#f3d9a4 }
@property --lrh-b2 { syntax:'<color>';inherits:true;initial-value:#f7e7c9 }
@property --lrh-b3 { syntax:'<color>';inherits:true;initial-value:#e8b35c }
#lr-home .app-stage { transition:--lrh-b1 1.4s ease,--lrh-b2 1.4s ease,--lrh-b3 1.4s ease }
#lr-home .blob { position:absolute;width:30vw;aspect-ratio:1;opacity:.8;will-change:transform }
#lr-home .blob::before { content:"";position:absolute;inset:-16%;background:radial-gradient(closest-side,var(--blob) 51%,76%,transparent) }
#lr-home .blob.b1 { left:12%;top:8%;--blob:var(--lrh-b1);animation:lrh-drift1 22s ease-in-out infinite alternate }
#lr-home .blob.b2 { right:6%;top:26%;--blob:var(--lrh-b2);animation:lrh-drift2 26s ease-in-out infinite alternate }
#lr-home .blob.b3 { left:26%;bottom:18%;--blob:var(--lrh-b3);opacity:.6;animation:lrh-drift3 30s ease-in-out infinite alternate }
@keyframes lrh-drift1 { to{transform:translate(8vw,14vh) scale(1.15)} }
@keyframes lrh-drift2 { to{transform:translate(-9vw,12vh) scale(.9)} }
@keyframes lrh-drift3 { to{transform:translate(-6vw,-12vh) scale(1.05)} }
#lr-home .app-stage[data-phase="0"] { --lrh-b1:#efc271;--lrh-b2:#f5d99b;--lrh-b3:#e8b35c }
#lr-home .app-stage[data-phase="1"] { --lrh-b1:#f3d28d;--lrh-b2:#e9b65e;--lrh-b3:#f0c77c }
#lr-home .app-stage[data-phase="2"] { --lrh-b1:#e8b458;--lrh-b2:#f2cf88;--lrh-b3:#e3a94c }
#lr-home .app-stage[data-phase="3"] { --lrh-b1:#e6ad4f;--lrh-b2:#f0c46f;--lrh-b3:#dfa243 }
#lr-home .spot { position:absolute;left:0;top:0;width:620px;height:620px;margin:-310px 0 0 -310px;border-radius:50%; background:radial-gradient(circle,rgba(214,158,62,.36) 0%,rgba(214,158,62,.14) 35%,rgba(214,158,62,0) 68%);opacity:0;transition:opacity .6s;will-change:transform }
#lr-home .app-stage.hover .spot { opacity:1 }
#lr-home .grain { position:absolute;inset:0;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .45 0 0 0 0 .4 0 0 0 .08 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E") }
#lr-home .phone-wrap { perspective:1400px }
#lr-home .phones { transform-style:preserve-3d }
@media (max-width:900px) {
  #lr-home .app-track { height:420vh }
  #lr-home .app-stage { grid-template-columns:1fr;grid-template-rows:auto 1fr;align-content:start;padding:18px 18px 0;gap:6px }
  #lr-home .phone-wrap { order:-1;height:34vh }
  #lr-home .phones { height:34vh }
  #lr-home .blobs { width:100%;height:46%;bottom:auto }
  #lr-home .blob { width:60vw }
  #lr-home .phone-glow { width:44vh }
  #lr-home .phone-ring { width:36vh }
  #lr-home .dots { display:none }
  #lr-home .app h2 { white-space:normal;font-size:32px;margin:10px 0 14px }
  #lr-home .benefit { padding:12px 16px 12px 20px }
  #lr-home .benefit h3 { font-size:18px }
  #lr-home .benefit p { font-size:14px }
  #lr-home .stores { margin-top:12px;flex-wrap:nowrap;gap:10px }
  #lr-home .store { padding:8px 12px;gap:8px;border-radius:12px }
  #lr-home .store svg { width:20px;height:20px }
  #lr-home .store b { font-size:14px }
  #lr-home .store small { font-size:9px }
  #lr-home .phone-wrap { height:30vh }
  #lr-home .phones { height:30vh }
}
@media (prefers-reduced-motion:reduce) {
  #lr-home .reveal, #lr-home .phones img, #lr-home .benefit p, #lr-home .intro-h .aw>span, #lr-home .benefit, #lr-home .intro-stores .store, #lr-home .intro-phone, #lr-home .blobs, #lr-home .intro-eyebrow, #lr-home .intro-eyebrow::before { transition:none!important }
  #lr-home .blob { animation:none }
}
#lr-home .spot { display:none!important }
#lr-home .embers { position:absolute;inset:0;overflow:hidden;pointer-events:none }
#lr-home .embers i { position:absolute;bottom:-12px;width:var(--s);height:var(--s);opacity:0;animation:lrh-ember-rise var(--life) linear var(--delay) infinite }
#lr-home .embers b { display:block;width:100%;height:100%;border-radius:50%;background:radial-gradient(closest-side,var(--a),var(--b) 25%,var(--c));animation:lrh-ember-sway var(--sw) ease-in-out infinite alternate,lrh-ember-flicker var(--fl) ease-in-out infinite alternate }
@keyframes lrh-ember-rise { 0%{transform:translateY(0);opacity:0} 25%{opacity:.7} 50%{opacity:1} 75%{opacity:.7} 100%{transform:translateY(calc(-1 * var(--rise)));opacity:0} }
@keyframes lrh-ember-sway { from{transform:translateX(calc(-1 * var(--sway)))} to{transform:translateX(var(--sway))} }
@keyframes lrh-ember-flicker { from{opacity:.15} to{opacity:1} }
#lr-home .gift { --esp:#fbf6ee;--cream2:#1a1412;--brown:#5b2c26;--gold3:#9c6c1e;position:relative;margin:0 var(--gutter);color:var(--cream2);background:linear-gradient(180deg,var(--offc) 0%,var(--esp) 25%);overflow:clip }
#lr-home .gift-blend { height:0 }
#lr-home .gift-track { position:relative;height:calc(100vh + 70vh) }
#lr-home .gift-inner { position:sticky;top:var(--navh);min-height:calc(100vh - var(--navh));display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(24px,4vw,80px);padding:clamp(12px,2.5vh,32px) clamp(20px,5vw,110px) clamp(20px,4vh,44px); background:radial-gradient(ellipse 42% 55% at 30% 52%,rgba(240,196,110,.42),rgba(240,196,110,.12) 45%,rgba(240,196,110,0) 72%),radial-gradient(ellipse 30% 35% at 82% 20%,rgba(243,207,134,.22),transparent 70%),radial-gradient(ellipse 35% 40% at 40% 95%,rgba(232,180,160,.18),transparent 70%) }
#lr-home .gift-fx { position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:9 }
#lr-home .gift-copy { position:relative;z-index:2;max-width:560px }
#lr-home .gift-eyebrow { display:inline-flex;align-items:center;gap:14px;font-size:13px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--gold3);opacity:0;transition:opacity .5s }
#lr-home .gift-eyebrow::before { content:"";width:34px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:0 50%;transition:transform .6s cubic-bezier(.16,.84,.24,1) .05s }
#lr-home .gift.in .gift-eyebrow { opacity:1 }
#lr-home .gift.in .gift-eyebrow::before { transform:none }
#lr-home .gift-h { font-weight:600;font-size:clamp(34px,3.5vw,64px);white-space:nowrap;line-height:1.02;letter-spacing:-.03em;margin:18px 0 22px;color:#1a1412 }
#lr-home .gift-h em { font-style:normal;color:var(--gold3) }
#lr-home .app h2 em, #lr-home .gift-h em { background:linear-gradient(90deg,#8a5a14 0%,#d69a3e 100%) 0 0/100% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent }
@keyframes lrh-goldShine { 0%,100%{background-position:100% 0}50%{background-position:0 0} }
@media (prefers-reduced-motion:reduce) {
  #lr-home .app h2 em, #lr-home .gift-h em { animation:none }
}
#lr-home .gift-h .aw { display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em }
#lr-home .gift-h .aw>span { display:inline-block;transform:translateY(110%) rotate(4deg);transform-origin:0 100%;transition:transform .75s cubic-bezier(.16,.84,.24,1) }
#lr-home .gift.in .gift-h .aw>span { transform:none }
#lr-home .gift-p { font-size:clamp(17px,1.25vw,21px);line-height:1.6;color:#6f655c;max-width:470px }
#lr-home .gift-p strong { color:#1a1412;font-weight:600 }
#lr-home .fade-up { opacity:0;transform:translateY(18px);transition:opacity .6s,transform .7s cubic-bezier(.16,.84,.24,1) }
#lr-home .gift.in .fade-up { opacity:1;transform:none }
#lr-home .chips { display:flex;gap:12px;margin-top:30px }
#lr-home .chip { position:relative;font:inherit;font-size:19px;font-weight:600;color:var(--cream2);background:rgba(255,255,255,.05);border:1px solid rgba(243,207,134,.28);padding:12px 22px;border-radius:999px;cursor:pointer;transition:background .35s,color .35s,border-color .35s,transform .35s cubic-bezier(.3,1.6,.5,1) }
#lr-home .chip:hover { border-color:var(--gold2);transform:translateY(-2px) }
#lr-home .chip.on { background:linear-gradient(135deg,#f3cf86,#d69e3e);color:#2a1510;border-color:transparent;box-shadow:0 10px 28px rgba(214,158,62,.35) }
#lr-home .hint { display:flex;align-items:center;gap:8px;font-size:13px;color:rgba(243,234,220,.5);margin-top:14px;letter-spacing:.02em }
#lr-home .hint svg { width:16px;height:16px;animation:lrh-tap 1.8s ease-in-out infinite }
@keyframes lrh-tap { 50%{transform:translateY(2px) scale(.9)} }
#lr-home .gift-btn { color:#1b110e;position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:12px;margin-top:34px;padding:20px 38px;background:var(--gold);color:#1b110e;box-shadow:0 10px 26px rgba(214,158,62,.28);font-size:15px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;transition:transform .25s,box-shadow .25s,background .25s }
#lr-home .gift.intro-done .gift-btn { transition:transform .15s,box-shadow .15s,background .15s,filter .15s!important;transition-delay:0s!important }
#lr-home .gift-btn::after { content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);animation:lrh-shine 7s ease-in-out 3s infinite;pointer-events:none }
#lr-home .gift.in .gift-btn:hover { transform:translateY(-2px) }
#lr-home .gift-btn:hover { filter:brightness(1.08);background:#e3ad4f;transform:translateY(-2px);box-shadow:0 14px 34px rgba(214,158,62,.35) }
#lr-home .gift-btn i { font-style:normal;transition:transform .3s }
#lr-home .gift-btn:hover i { transform:translateX(4px) }
#lr-home .gift.in .d1 { transition-delay:.35s }
#lr-home .gift.in .d2 { transition-delay:.5s }
#lr-home .gift.in .d3 { transition-delay:.62s }
#lr-home .gift.in .d4 { transition-delay:.74s }
#lr-home .gift-stagewrap { position:relative;z-index:3;display:grid;place-items:center;order:-1 }
#lr-home .gift-stage { --w:min(28vw,40vh,430px);position:relative;width:calc(var(--w)*1.3);height:calc(var(--w)*1.46);perspective:1600px }
#lr-home .stage-shadow { position:absolute;left:50%;bottom:-2%;width:calc(var(--w,400px)*1.3);height:40px;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(90,50,20,.28),transparent 70%);filter:blur(6px);pointer-events:none }
#lr-home .env { position:absolute;left:50%;bottom:0;width:var(--w);height:calc(var(--w)*.66);transform:translateX(-50%) }
#lr-home .env-back { z-index:1;border-radius:10px;background:linear-gradient(180deg,#8f231e,#761a16) }
#lr-home .env-flap { z-index:7;position:absolute;left:50%;bottom:calc(var(--w)*.66 - 1px);width:var(--w);height:calc(var(--w)*.4);transform:translateX(-50%) rotateX(180deg);transform-origin:50% 100%; clip-path:polygon(0 100%,50% 4%,100% 100%);background:linear-gradient(0deg,#b12e28,#9a2620) }
#lr-home .env-flap::after { content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.12),transparent 60%) }
#lr-home .env-front { z-index:6;border-radius:0 0 10px 10px;clip-path:polygon(0 0,50% 50%,100% 0,100% 100%,0 100%); background:linear-gradient(160deg,#d6453d 0%,#c53831 50%,#a92d27 100%);box-shadow:inset 0 -20px 40px rgba(60,10,8,.22) }
#lr-home .env-front::before { content:"";position:absolute;inset:0;background:linear-gradient(33deg,transparent 49.6%,rgba(243,207,134,.35) 50%,transparent 50.6%),linear-gradient(-33deg,transparent 49.6%,rgba(243,207,134,.35) 50%,transparent 50.6%) }
#lr-home .seal { position:absolute;left:50%;top:50%;width:calc(var(--w)*.15);aspect-ratio:1;transform:translate(-50%,-38%);border-radius:50%;display:grid;place-items:center; background:radial-gradient(circle at 35% 30%,#f6d690,#d69e3e 45%,#9c6c1e 100%);box-shadow:0 4px 12px rgba(80,50,10,.35),inset 0 -3px 6px rgba(0,0,0,.2);transition:transform .5s cubic-bezier(.3,1.6,.5,1) }
#lr-home .seal svg { width:62%;height:62% }
#lr-home .seal svg * { stroke:#5b3a10 !important }
#lr-home .gift:not(.open) .seal { animation:lrh-sealPulse 1.6s ease-in-out infinite }
@keyframes lrh-sealPulse { 50%{transform:translate(-50%,-38%) scale(1.08)} }
#lr-home .env-group { position:absolute;inset:0;opacity:0;transform:translateY(60px) }
#lr-home .gift:not(.settled) .gc { transition:none }
#lr-home .gc { position:absolute;left:50%;bottom:calc(var(--w)*.06);width:calc(var(--w)*.86);aspect-ratio:1011/638;border:0;padding:0;background:none;cursor:pointer; transform:translate(-50%,0) rotate(0) scale(.98);transition:transform .75s cubic-bezier(.3,1.25,.4,1) }
#lr-home .gc:focus-visible { outline:none }
#lr-home .gc:focus-visible .gc-in { box-shadow:0 0 0 3px var(--gold2),0 20px 40px rgba(0,0,0,.45) }
#lr-home .gc-in { position:absolute;inset:0;border-radius:calc(var(--w)*.035);overflow:hidden;box-shadow:0 22px 44px rgba(90,55,20,.28),0 2px 6px rgba(90,55,20,.18);transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .4s }
#lr-home .gc img { width:100%;height:100%;display:block;object-fit:cover;pointer-events:none }
#lr-home .gc-shine { position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,0) 35%,rgba(255,248,225,.55) 48%,rgba(255,236,190,.2) 52%,rgba(255,255,255,0) 62%);background-size:260% 100%;background-position:130% 0;mix-blend-mode:screen }
#lr-home .gc.top .gc-shine { animation:lrh-glint 4.5s ease-in-out 1.5s infinite }
@keyframes lrh-glint { 0%,65%{background-position:130% 0}100%{background-position:-60% 0} }
#lr-home .gc:not(.top):hover .gc-in { box-shadow:0 0 0 10px rgba(214,158,62,.16),0 0 34px rgba(214,158,62,.45),0 28px 54px rgba(90,55,20,.3) }
#lr-home .gift.settled .gc.top .gc-in { animation:lrh-cardFloat 5s ease-in-out infinite }
@keyframes lrh-cardFloat { 50%{translate:0 -7px} }
#lr-home .gift.in .gift-stage { animation:lrh-stageFloat 6.5s ease-in-out infinite }
@keyframes lrh-stageFloat { 50%{transform:translateY(-9px) rotate(.35deg)} }
#lr-home .gift.in .stage-shadow { animation:lrh-shadowFloat 6.5s ease-in-out infinite }
@keyframes lrh-shadowFloat { 50%{transform:translateX(-50%) scale(.93);opacity:.75} }
@media (max-width:900px) {
  #lr-home .gift-track { height:auto }
  #lr-home .gift-inner { position:relative;top:0;grid-template-columns:minmax(0,1fr);padding:30px 20px 60px;gap:10px }
  #lr-home .gift-stagewrap { order:-1 }
  #lr-home .gift-stage { --w:min(62vw,34vh) }
  #lr-home .gift-h br { display:none }
  #lr-home .gift-h { font-size:34px;white-space:normal }
  #lr-home .chip { font-size:16px;padding:10px 18px }
}
@media (prefers-reduced-motion:reduce) {
  #lr-home .gift * { transition:none!important;animation:none!important }
}
#lr-home .cursor-fx { position:fixed;left:0;top:0;width:0;height:0;pointer-events:none;z-index:40 }
#lr-home .cfx-glow { position:absolute;left:-150px;top:-150px;width:300px;height:300px;border-radius:50%;opacity:0;will-change:transform,opacity;background:radial-gradient(closest-side,rgba(214,158,62,.2),rgba(230,180,90,.08) 45%,rgba(230,180,90,0)) }
#lr-home .cfx-glow.dark { background:radial-gradient(closest-side,rgba(243,207,134,.24),rgba(214,158,62,.1) 40%,rgba(214,158,62,0)) }
#lr-home .cfx-ember { position:absolute;left:0;top:0;width:var(--s);height:var(--s);margin:calc(var(--s) / -2) 0 0 calc(var(--s) / -2);border-radius:50%;opacity:0;animation:lrh-cfx-rise var(--life) linear forwards;background:radial-gradient(closest-side,#fff,rgba(255,253,245,.8) 35%,rgba(255,250,235,0)) }
#lr-home .cfx-ember.dark { background:radial-gradient(closest-side,#fff,rgba(255,248,225,.95) 28%,rgba(243,200,110,.8) 50%,rgba(214,158,62,0)) }
@keyframes lrh-cfx-rise { 0%{transform:translate(var(--x),var(--y));opacity:0} 50%{opacity:.9} 100%{transform:translate(calc(var(--x) + var(--dx)),calc(var(--y) - var(--rise)));opacity:0} }
@media (max-width:640px) {
  #lr-home .btn { padding:18px 32px;font-size:13px }
}
@media (prefers-reduced-motion:reduce) {
  #lr-home .word .l, #lr-home .btn, #lr-home .cue, #lr-home .media, #lr-home .veil { transition:none }
  #lr-home .loaded h1 .word .l { animation:none }
  #lr-home .btn::after { animation:none }
}
#lr-home .btn, #lr-home .gift-btn { border-radius:999px }

/* The site header is 60px tall in the narrow layout (lr-design.css). */
@media (max-width: 1100px) {
  #lr-home { --navh: 60px; }
}
