.nsmi{--g1:#8C6A3B;--g2:#E9D29A;--g3:#B8955C;--g4:#F6E7B8;--ink:#E9E4DA;--mute:#8E887D;
  position:relative;height:100vh;height:100svh;min-height:560px;overflow:hidden;background:#050607;color:var(--ink);isolation:isolate}
.nsmi *{box-sizing:border-box}
.nsmi .m-sky{position:absolute;inset:-4%;z-index:0;will-change:transform}
.nsmi .m-blob{position:absolute;border-radius:50%;filter:blur(70px);mix-blend-mode:screen;opacity:0;transition:opacity 2.4s ease}
.nsmi.is-in .m-blob{opacity:var(--o)}
.nsmi .b4{--o:.20;width:40%;height:40%;left:30%;top:42%;background:radial-gradient(closest-side,#8C6A3B,transparent);animation:nsmi-d1 30s ease-in-out infinite alternate-reverse}
@keyframes nsmi-d1{to{transform:translate(12%,6%) scale(1.15)}}
.nsmi canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.6s ease}
.nsmi.is-in canvas{opacity:1}
.nsmi .m-ridge{position:absolute;left:0;right:0;bottom:0;width:100%;height:22%;z-index:1;pointer-events:none}
.nsmi .m-vig{position:absolute;inset:0;z-index:2;pointer-events:none;
  background:radial-gradient(120% 90% at 50% 45%,transparent 40%,rgba(3,4,5,.85) 100%),linear-gradient(to bottom,transparent 70%,#0B0C0E)}
.nsmi .m-grain{position:absolute;inset:-50%;z-index:3;pointer-events:none;opacity:.07;
  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%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:nsmi-grain 1.2s steps(6) infinite}
@keyframes nsmi-grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
.nsmi .m-spot{position:absolute;z-index:2;width:46vmax;height:46vmax;left:0;top:0;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(233,210,154,.10),transparent);transform:translate(-50%,-50%);opacity:0;transition:opacity .6s}
.nsmi:hover .m-spot{opacity:1}
.nsmi .m-stage{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:calc(var(--header-height,64px) + 8px) 16px 96px;perspective:1200px}
.nsmi .m-mark{position:relative;height:min(36vh,330px);aspect-ratio:202/592;transform-style:preserve-3d;will-change:transform}
.nsmi .m-beam{position:absolute;left:50%;top:-30%;width:1px;height:160%;transform:translateX(-50%) scaleY(0);transform-origin:top;
  background:linear-gradient(to bottom,transparent,rgba(246,231,184,.9) 45%,rgba(246,231,184,.0));filter:blur(.3px);opacity:.9}
.nsmi.is-in .m-beam{animation:nsmi-beam 1.6s cubic-bezier(.7,0,.2,1) forwards}
@keyframes nsmi-beam{0%{transform:translateX(-50%) scaleY(0);opacity:1}60%{transform:translateX(-50%) scaleY(1);opacity:1}100%{transform:translateX(-50%) scaleY(1);opacity:0}}
.nsmi .m-halo{position:absolute;left:50%;top:50%;width:220%;aspect-ratio:1;transform:translate(-50%,-50%) scale(.6);border-radius:50%;
  background:radial-gradient(closest-side,rgba(233,210,154,.16),rgba(30,156,110,.06) 55%,transparent);opacity:0;transition:opacity 2s ease 1.2s,transform 2.4s ease 1.2s}
.nsmi.is-in .m-halo{opacity:1;transform:translate(-50%,-50%) scale(1)}
.nsmi svg.m-sym{position:relative;display:block;width:100%;height:100%;overflow:visible}
.nsmi .s-line{fill:none;stroke:url(#nsmi-g);stroke-width:2.2;stroke-dasharray:1;stroke-dashoffset:1;opacity:1}
.nsmi.is-in .s-line{animation:nsmi-draw 1.7s cubic-bezier(.65,0,.35,1) .25s forwards,nsmi-out .8s ease 1.9s forwards}
@keyframes nsmi-draw{to{stroke-dashoffset:0}}
@keyframes nsmi-out{to{opacity:0}}
.nsmi .s-fill{fill:url(#nsmi-g);opacity:0}
.nsmi.is-in .s-fill{animation:nsmi-in 1s ease 1.35s forwards}
@keyframes nsmi-in{to{opacity:1}}
.nsmi .s-shine{fill:url(#nsmi-sh)}
.nsmi .m-word{display:block;width:min(70vw,440px);margin-top:clamp(18px,3.4vh,34px);overflow:visible}
.nsmi .m-word path{fill:url(#nsmi-gw);opacity:0;transform-box:fill-box;transform-origin:50% 100%;transform:translateY(40%);filter:blur(4px)}
.nsmi.is-in .m-word path{animation:nsmi-letter .9s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(1.55s + var(--i) * 55ms)}
@keyframes nsmi-letter{to{opacity:1;transform:none;filter:blur(0)}}
.nsmi .m-tag{margin:clamp(20px,3.6vh,36px) 0 0;font-family:var(--font-heading--family);font-weight:300;
  font-size:clamp(15px,1.5vw,19px);letter-spacing:.32em;text-transform:uppercase;color:var(--ink);display:flex;flex-wrap:wrap;justify-content:center;gap:0 .55em}
.nsmi .m-tag span{display:inline-block;overflow:hidden;padding-bottom:.1em}
.nsmi .m-tag span i{display:inline-block;font-style:normal;transform:translateY(110%)}
.nsmi.is-in .m-tag span i{animation:nsmi-up .9s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(2.25s + var(--i) * 90ms)}
@keyframes nsmi-up{to{transform:none}}
.nsmi .m-ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:clamp(22px,4vh,34px);opacity:0;transform:translateY(10px)}
.nsmi.is-in .m-ctas{animation:nsmi-fade .9s ease 2.7s forwards}
@keyframes nsmi-fade{to{opacity:1;transform:none}}
.nsmi .m-btn{position:relative;display:inline-flex;align-items:center;gap:12px;padding:14px 28px;border-radius:999px;overflow:hidden;
  font-size:12px;letter-spacing:.24em;text-transform:uppercase;text-decoration:none;transition:color .35s,border-color .35s,background .35s}
.nsmi .m-btn.pri{color:#0B0C0E;background:linear-gradient(110deg,var(--g3),var(--g2) 45%,var(--g4) 55%,var(--g3));background-size:220% 100%;background-position:100% 0;transition:background-position .7s ease,box-shadow .35s}
.nsmi .m-btn.pri:hover,.nsmi .m-btn.pri:focus-visible{background-position:0 0;box-shadow:0 8px 30px rgba(194,167,128,.25)}
.nsmi .m-btn.sec{color:var(--ink);border:1px solid rgba(233,228,218,.28);background:rgba(255,255,255,.03);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.nsmi .m-btn.sec:hover,.nsmi .m-btn.sec:focus-visible{border-color:var(--g2);color:var(--g4)}
.nsmi .m-btn svg{width:16px;height:10px;transition:transform .35s}
.nsmi .m-btn:hover svg{transform:translateX(4px)}
.nsmi .m-foot{position:absolute;left:0;right:0;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:5;display:flex;align-items:flex-end;justify-content:space-between;
  padding:0 clamp(16px,3vw,40px);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--mute);opacity:0}
.nsmi.is-in .m-foot{animation:nsmi-in 1.2s ease 3s forwards}
.nsmi .m-foot .c{position:absolute;left:50%;bottom:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px}
.nsmi .m-line{position:relative;width:1px;height:38px;background:rgba(233,228,218,.15);overflow:hidden}
.nsmi .m-line::after{content:"";position:absolute;left:0;top:-40%;width:1px;height:40%;background:var(--g2);animation:nsmi-run 2s cubic-bezier(.6,0,.4,1) infinite}
@keyframes nsmi-run{to{top:100%}}
@media (max-width:749px){
  .nsmi .m-mark{height:min(30vh,250px)}
  .nsmi .m-word{width:min(78vw,360px)}
  .nsmi .m-foot .l,.nsmi .m-foot .r{display:none}
  .nsmi .m-btn{padding:13px 22px}
}
.nsmi.is-quick *{animation-duration:.01s!important;animation-delay:0s!important;transition-duration:.01s!important;transition-delay:0s!important}
.nsmi.is-quick .m-blob,.nsmi.is-quick .m-grain,.nsmi.is-quick .m-line::after{animation-duration:revert!important}
@media (prefers-reduced-motion:reduce){
  .nsmi *,.nsmi *::after{animation-duration:.01s!important;animation-delay:0s!important;animation-iteration-count:1!important;transition:none!important}
}