/* Lthero brand: L door-frame monogram + bold-on-hover wordmark */
.lm{display:block;width:100%;height:100%;overflow:visible}
.lm path{stroke-linecap:butt;stroke-linejoin:miter}
.lm-l{stroke-dasharray:1;stroke-dashoffset:1;animation:lmDraw 1.1s .15s cubic-bezier(.65,0,.25,1) forwards}
.lm-acc{stroke-dasharray:26 200;stroke-dashoffset:26;animation:lmAcc .7s .95s cubic-bezier(.2,.9,.2,1) forwards;transition:stroke-dashoffset .6s cubic-bezier(.2,.9,.2,1),stroke-dasharray .6s cubic-bezier(.2,.9,.2,1)}
.lm-dot{transform-box:fill-box;transform-origin:center;transform:scale(0);animation:lmPop .5s 1.3s cubic-bezier(.2,1.8,.4,1) forwards}
.lm-leaf{fill:rgba(255,91,46,.0);stroke:rgba(243,241,234,.0);stroke-width:1.2;transform-box:fill-box;transform-origin:0 50%;transform:scaleX(.08);transition:transform .6s cubic-bezier(.2,.9,.2,1),fill .4s,stroke .4s}
@keyframes lmDraw{to{stroke-dashoffset:0}}
@keyframes lmAcc{to{stroke-dashoffset:0}}
@keyframes lmPop{to{transform:scale(1)}}
@keyframes lmPulse{0%,100%{transform:scale(1)}40%{transform:scale(1.55)}70%{transform:scale(.9)}}
/* hover (on any .lm-host): accent slides down the stile, door leaf swings open, knob pulses */
.lm-host:hover .lm-acc,.lm-host:focus-visible .lm-acc{stroke-dashoffset:-56;stroke-dasharray:40 200}
.lm-host:hover .lm-leaf,.lm-host:focus-visible .lm-leaf{transform:scaleX(1);fill:rgba(255,91,46,.12);stroke:rgba(243,241,234,.35)}
.lm-host:hover .lm-dot,.lm-host:focus-visible .lm-dot{animation:lmPulse 1.1s ease-in-out infinite;transform:scale(1)}

/* hero title icon: replaces the letter L */
.hero-mark{display:inline-block;height:.735em;aspect-ratio:48/56;margin-right:.01em;color:var(--ink,#f3f1ea);cursor:pointer;filter:drop-shadow(0 14px 40px rgba(255,91,46,.35));transition:transform .5s cubic-bezier(.2,.9,.2,1)}
.hero-mark:hover{transform:translateY(-3%) rotate(-3deg)}

/* top-left wordmark */
.brand-word{display:inline-flex;align-items:center;gap:9px;font-family:"Unbounded",system-ui,sans-serif;font-size:17px;letter-spacing:-.02em;line-height:1;color:var(--ink,#f3f1ea);text-transform:none;position:relative;padding:4px 2px 7px}
.brand-word .bw-mark{width:17px;height:20px;display:inline-block;flex:0 0 auto}
.brand-word .bw{display:inline-flex;position:relative}
.brand-word .char{display:inline-block;font-weight:400;font-variation-settings:"wght" 400;transition:font-weight .45s cubic-bezier(.2,.9,.2,1),font-variation-settings .45s cubic-bezier(.2,.9,.2,1),color .35s,transform .45s cubic-bezier(.2,.9,.2,1);transition-delay:calc(var(--d,0) * 45ms)}
.brand-word .char:first-child{color:var(--quire,#ff5b2e)}
.brand-word .knob{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--folio,#c6ff3d);margin-left:-6px;align-self:flex-end;margin-bottom:2px;transition:transform .5s cubic-bezier(.2,1.8,.4,1) .2s}
.brand-word .bw::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:2px;background:linear-gradient(90deg,var(--quire,#ff5b2e),var(--folio,#c6ff3d));transform:scaleX(0);transform-origin:0 50%;transition:transform .55s cubic-bezier(.2,.9,.2,1)}
.brand-word:hover .char,.brand-word:focus-visible .char,.brand-word.is-wave .char{font-weight:900;font-variation-settings:"wght" 900;transform:translateY(-1px)}
.brand-word:hover .knob,.brand-word:focus-visible .knob,.brand-word.is-wave .knob{transform:translate(4px,-9px) scale(1.25)}
.brand-word:hover .bw::after,.brand-word:focus-visible .bw::after,.brand-word.is-wave .bw::after{transform:scaleX(1)}
@media (max-width:620px){.brand-word{font-size:15px}.brand-word .bw-mark{width:15px;height:18px}}
@media (prefers-reduced-motion:reduce){.lm-l,.lm-acc,.lm-dot{animation:none!important;stroke-dashoffset:0;transform:none}.brand-word .char{transition:none}}
