/* Landing de Lafi: estilos acotados a .lafi-landing para no chocar con el tema */
@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@1,500;1,700&family=Poppins:wght@400;500;600;700&display=swap");
.lafi-landing{box-sizing:border-box;width:100vw;margin-left:calc(50% - 50vw);overflow-x:clip;text-align:left;-webkit-font-smoothing:antialiased}
.lafi-landing *,.lafi-landing *::before,.lafi-landing *::after{box-sizing:border-box}
.lafi-landing img{max-width:none;border:0}
.lafi-landing h1,.lafi-landing h2,.lafi-landing h3{color:inherit;text-transform:none;letter-spacing:normal}
.lafi-landing p{font-family:inherit}
.lafi-landing svg{max-width:none}

.lafi-landing a{color:#A8431A}.lafi-landing a:hover{color:#8A3414}
.lafi-landing a:focus-visible{outline:3px solid #F4C77A;outline-offset:3px}
.lafi-landing .lafi-nav a{text-decoration:none}
.lafi-landing .lafi-nav a:hover{color:#C24E1F}
.lafi-landing .lafi-btn{text-decoration:none}
.lafi-landing .lafi-routeline{display:block}
@keyframes lafi-drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes lafi-driftr{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@keyframes lafi-floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes lafi-morph{0%,100%{border-radius:58% 42% 55% 45%/50% 55% 45% 50%}50%{border-radius:42% 58% 45% 55%/55% 45% 55% 45%}}
@keyframes lafi-rise{from{transform:translateY(20px)}to{transform:none}}
@keyframes lafi-march{to{stroke-dashoffset:-56}}
@keyframes lafi-pulse{0%{box-shadow:0 0 0 6px #F6F3EE,0 0 0 6px rgba(214,87,31,0.55)}100%{box-shadow:0 0 0 6px #F6F3EE,0 0 0 24px rgba(214,87,31,0)}}
.lafi-landing .lafi-wave{position:absolute;left:0;width:200%;height:100%;animation:lafi-drift 24s linear infinite}
.lafi-landing .lafi-wave.lafi-rev{animation-name:lafi-driftr;animation-duration:32s}
.lafi-landing .lafi-wave.lafi-slow{animation-duration:40s}
.lafi-landing .lafi-float{animation:lafi-floaty 6s ease-in-out infinite}
.lafi-landing .lafi-blob{position:absolute;animation:lafi-morph 14s ease-in-out infinite}
.lafi-landing .lafi-rise{animation:lafi-rise .9s ease-out both}
.lafi-landing .lafi-march{animation:lafi-march 3s linear infinite}
.lafi-landing .lafi-pulse{animation:lafi-pulse 2s ease-out infinite}
@keyframes lafi-kenburns{0%,100%{transform:scale(1.04) translate(0,0)}50%{transform:scale(1.14) translate(-2%,-2%)}}
.lafi-landing .lafi-marquee{animation:lafi-drift 70s linear infinite}
.lafi-landing .lafi-marquee-mask:hover .lafi-marquee{animation-play-state:paused}
.lafi-landing .lafi-marquee-mask{-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.lafi-landing .lafi-kenburns{animation:lafi-kenburns 26s ease-in-out infinite}
@media (prefers-reduced-motion:no-preference){.lafi-landing .lafi-postal{transition:transform .3s ease}.lafi-landing .lafi-postal:hover{transform:scale(1.04)!important}}
@media (prefers-reduced-motion:reduce){.lafi-landing .lafi-wave,.lafi-landing .lafi-float,.lafi-landing .lafi-blob,.lafi-landing .lafi-rise,.lafi-landing .lafi-march,.lafi-landing .lafi-pulse,.lafi-landing .lafi-marquee,.lafi-landing .lafi-kenburns{animation:none}}
@media (max-width:900px){.lafi-landing .lafi-routeline{display:none}}
@media (prefers-reduced-motion:no-preference){.lafi-landing .lafi-btn{transition:transform .15s ease}.lafi-landing .lafi-btn:hover{transform:translateY(-2px)}}

/* Menú de tres rayitas (solo en pantallas pequeñas) */
.lafi-landing .lafi-menu-check{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.lafi-landing .lafi-burger{display:none;cursor:pointer;width:48px;height:48px;border-radius:14px;border:1px solid #E6DED5;background:#FFFFFF;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.lafi-landing .lafi-burger span{display:block;width:22px;height:2px;background:#26221F;border-radius:2px;transition:transform .2s ease,opacity .2s ease}
.lafi-landing .lafi-menu-check:focus-visible + .lafi-burger{outline:3px solid #F4C77A;outline-offset:3px}
@media (max-width:860px){
.lafi-landing .lafi-burger{display:flex}
.lafi-landing .lafi-nav{display:none !important;flex:1 1 100%;flex-direction:column;align-items:stretch !important;gap:0 !important;background:#FFFFFF;border:1px solid #E6DED5;border-radius:18px;padding:8px;box-shadow:0 16px 36px rgba(38,34,31,0.12)}
.lafi-landing .lafi-menu-check:checked ~ .lafi-nav{display:flex !important}
.lafi-landing .lafi-nav a{display:block;padding:14px 14px !important;border-radius:12px;font-size:16px !important}
.lafi-landing .lafi-nav a.lafi-btn{text-align:center;margin-top:8px}
.lafi-landing .lafi-menu-check:checked + .lafi-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.lafi-landing .lafi-menu-check:checked + .lafi-burger span:nth-child(2){opacity:0}
.lafi-landing .lafi-menu-check:checked + .lafi-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}
html{scroll-behavior:smooth}
