/* Bienvenida: el emblema se dibuja en grande al centro, sube y quedan solo nombre y botón. Sin movimiento de fondo. */
body.is-splash{background:#fff}
.wl-layer{position:fixed;inset:0;z-index:300;background:#fff;overflow:hidden auto;-webkit-overflow-scrolling:touch}
.wl-layer.leave{opacity:0;transition:opacity .6s ease;pointer-events:none}
.wl{position:relative;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#0a0a0a;overflow:hidden;
  padding:max(18px,env(safe-area-inset-top)) 20px max(28px,env(safe-area-inset-bottom));font-family:'Montserrat',var(--sans);cursor:default}
.wl-bg{position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(ellipse 60% 42% at 50% 112%,rgba(214,236,209,.7),transparent 70%),
  radial-gradient(ellipse 46% 34% at 0% 0%,rgba(224,241,220,.6),transparent 70%),
  radial-gradient(ellipse 40% 30% at 100% 0%,rgba(232,245,229,.5),transparent 70%)}
/* hueco donde termina el emblema */
.wl-slot{position:relative;z-index:1;height:clamp(130px,29vh,270px);aspect-ratio:182/242;margin-bottom:clamp(14px,3.2vh,32px)}
.wl-emb{position:absolute;z-index:3;left:50%;top:50%;height:var(--h0,70vh);aspect-ratio:182/242;transform:translate(-50%,-50%);
  transition:top 1.4s cubic-bezier(.7,0,.2,1),height 1.4s cubic-bezier(.7,0,.2,1)}
.wl-emb.no-tr{transition:none}
.wl-svg{width:100%;height:100%;overflow:visible;display:block}
/* el emblema se dibuja en tres partes: contorno claro, contorno medio y casco con la M */
.wl-svg path{fill-opacity:0;stroke:#5fae56;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
.wl-svg path:nth-of-type(3){stroke:#1f7d13;stroke-width:1.7}
.wl-svg path:nth-of-type(1){animation:wlDraw 1.7s cubic-bezier(.55,.05,.25,1) .25s forwards,wlFill 1s ease 2.2s forwards}
.wl-svg path:nth-of-type(2){animation:wlDraw 1.7s cubic-bezier(.55,.05,.25,1) 1s forwards,wlFill 1s ease 2.6s forwards}
.wl-svg path:nth-of-type(3){animation:wlDraw 2s cubic-bezier(.55,.05,.25,1) 1.6s forwards,wlFill 1s ease 3.2s forwards}
/* título */
.wl-title{position:relative;z-index:2;margin:0;display:flex;flex-direction:column;align-items:center;gap:.2em;font-family:'Poppins',var(--sans);font-weight:800;line-height:.95;letter-spacing:-.015em;text-transform:uppercase}
.wl-title .row{display:flex;align-items:center;justify-content:center}
.wl-title .r1{gap:.26em;font-size:min(10.8vw,8.6vh,6.6rem)}
.wl-title .r1 .w:first-child{color:#0a0a0a}.wl-title .r1 .w:nth-child(2){color:#1f7d13}
.wl-title .r2{gap:.8em;font-size:min(5.6vw,4.4vh,2.6rem);font-weight:600;letter-spacing:.5em;color:#1f7d13;margin-right:-.5em}
.wl-title .w{display:inline-flex;overflow:hidden;padding:.05em .02em .12em}
.wl-title .l{display:inline-block;opacity:0;transform:translateY(118%)}
.wl-title .ln{display:block;height:2px;width:clamp(28px,8vw,96px);background:linear-gradient(90deg,transparent,#83c47b);transform:scaleX(0);transform-origin:right;margin-right:-.3em}
.wl-title .ln:last-child{background:linear-gradient(270deg,transparent,#83c47b);transform-origin:left;margin:0 0 0 -.3em}
.wl-go{position:relative;z-index:2;margin-top:clamp(20px,4vh,38px);display:inline-flex;align-items:center;gap:.9em;padding:1.08em 2.5em 1.08em 2.8em;border-radius:999px;background:#1f7d13;color:#fff;font-family:'Poppins',var(--sans);font-weight:600;font-size:.92rem;letter-spacing:.28em;text-decoration:none;
  box-shadow:0 14px 30px -14px rgba(31,125,19,.7);opacity:0;transform:translateY(14px);pointer-events:none;transition:background .25s,box-shadow .25s}
.wl-go:hover{background:#176a0e;box-shadow:0 18px 34px -14px rgba(31,125,19,.8)}
.wl-go .ic-arrow{transition:transform .25s}.wl-go:hover .ic-arrow{transform:translateX(5px)}
.wl-go:focus-visible{outline:3px solid #83c47b;outline-offset:5px}
/* segundo tiempo: el emblema sube y entran el nombre y el botón */
.wl.is-up .l{animation:wlUp .95s cubic-bezier(.2,.9,.15,1) forwards;animation-delay:calc(.8s + var(--k)*.06s)}
.wl.is-up .ln{animation:wlLn 1s ease 1.8s forwards}
.wl.is-up .wl-go{animation:wlUp2 .9s cubic-bezier(.2,.9,.2,1) 2.1s forwards;pointer-events:auto}
@keyframes wlDraw{to{stroke-dashoffset:0}}
@keyframes wlFill{to{fill-opacity:1;stroke-opacity:0}}
@keyframes wlUp{to{opacity:1;transform:none}}
@keyframes wlUp2{to{opacity:1;transform:none}}
@keyframes wlLn{to{transform:scaleX(1)}}
@media (max-width:700px){.wl-title .r2{letter-spacing:.42em;margin-right:-.42em}}
@media (max-height:520px){.wl-slot{height:96px}.wl-title .r1{font-size:min(8vw,12vh,3rem)}}
@media (prefers-reduced-motion:reduce){
  .wl *{animation:none!important;transition:none!important}
  .wl-svg path{fill-opacity:1;stroke-opacity:0;stroke-dashoffset:0}
  .wl-title .l{opacity:1;transform:none}.wl-title .ln{transform:none}
  .wl-go{opacity:1;transform:none;pointer-events:auto}
}
