/* MNK 131 — Optical Monogram Portal. Isolated from all site animations. */
html.mnk-portal-preparing{background:#0a2032!important}
html.mnk-portal-preparing body{visibility:hidden}
html.mnk-portal-preparing #mnk-portal{visibility:visible}
#mnk-portal{position:fixed;inset:0;width:100vw;height:100dvh;z-index:2147483646;pointer-events:none;overflow:hidden;contain:layout paint style;transform:translate3d(0,-101%,0);will-change:transform;background:transparent;color:#e7d7b2;isolation:isolate}
#mnk-portal.mnk-portal-idle{display:none}
#mnk-portal .mnk-portal-surface{position:absolute;inset:0;overflow:hidden;isolation:isolate}
#mnk-portal .mnk-portal-svg{position:absolute;inset:0;width:100%;height:100%;display:block;overflow:visible}
#mnk-portal .mnk-portal-knockout{opacity:0;transition:opacity 500ms cubic-bezier(.18,.8,.2,1)}
#mnk-portal.mnk-portal-ready .mnk-portal-knockout{opacity:1}
#mnk-portal .mnk-portal-rim{filter:drop-shadow(0 0 3px rgba(234,206,147,.22))}
#mnk-portal .mnk-portal-caption{position:absolute;left:50%;top:calc(50% + clamp(90px,12vw,155px));transform:translateX(-50%);display:flex;align-items:center;gap:13px;white-space:nowrap;font-family:Arial,Helvetica,sans-serif;font-size:9px;line-height:1.1;letter-spacing:.24em;font-weight:600;color:rgba(231,211,168,.75);pointer-events:none}
#mnk-portal .mnk-portal-caption i{width:21px;height:1px;background:rgba(231,211,168,.52)}
#mnk-portal .mnk-portal-edge{position:absolute;bottom:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent 4%,rgba(232,196,122,.12) 24%,rgba(243,220,169,.7) 50%,rgba(232,196,122,.12) 76%,transparent 96%);box-shadow:0 0 20px 1px rgba(219,178,102,.11)}
@media(max-width:639px){#mnk-portal .mnk-portal-caption{top:calc(50% + 105px);font-size:8px;letter-spacing:.16em;gap:9px}#mnk-portal .mnk-portal-caption i{width:12px}}
@media(prefers-reduced-motion:reduce){#mnk-portal{display:none!important}}

/* v130: on direct loads, the real colored mark is visible before it
   strips off to become a transparent MNK-shaped aperture. */
#mnk-portal .mnk-portal-logo-fallback,#mnk-portal .mnk-portal-logo-image{display:none}
#mnk-portal.mnk-portal-intro .mnk-portal-logo-fallback{display:block}
#mnk-portal.mnk-portal-intro.mnk-portal-logo-loaded .mnk-portal-logo-fallback{display:none}
#mnk-portal.mnk-portal-intro.mnk-portal-logo-loaded .mnk-portal-logo-image{display:block}
#mnk-portal.mnk-portal-peeling .mnk-portal-knockout{opacity:1!important;transition:none!important}
#mnk-portal.mnk-portal-intro .mnk-portal-rim{opacity:.22}
#mnk-portal.mnk-portal-intro.mnk-portal-peeling .mnk-portal-rim{opacity:.56;transition:opacity .65s ease}

/* v131 — The original navy-and-gold monogram needs a contrasting optical
   surface. On direct visits and reloads, use a warm, pale glass curtain
   behind the unmodified artwork. Internal handoffs retain navy. */
#mnk-portal.mnk-portal-intro .mnk-portal-plate{fill:#f3f5f3}
#mnk-portal.mnk-portal-intro .mnk-portal-caption{color:rgba(25,47,65,.74)}
#mnk-portal.mnk-portal-intro .mnk-portal-caption i{background:rgba(31,54,72,.38)}
/* Avoid a second gold-outline "ghost logo" over the original artwork. */
#mnk-portal.mnk-portal-intro .mnk-portal-rim{opacity:0;filter:none}
#mnk-portal.mnk-portal-intro.mnk-portal-peeling .mnk-portal-rim{opacity:.45;transition:opacity .65s ease}

/* v132: never show the old gold-only vector placeholder. Paint the REAL logo once decoded before the curtain enters. */
#mnk-portal .mnk-portal-logo-fallback{display:none!important}
#mnk-portal.mnk-portal-intro .mnk-portal-logo-image{display:none}
#mnk-portal.mnk-portal-intro.mnk-portal-logo-loaded .mnk-portal-logo-image{display:block}


/* MNK v154: original, intact logo on mobile; never expose sliced SVG fragments.
   Desktop portal is unaffected (these rules apply only through 639px). */
#mnk-portal .mnk-portal-mobile-logo{display:none}
@media (max-width:639px){
  #mnk-portal .mnk-portal-surface{
    background:linear-gradient(175deg,#f7f9fa 0%,#f1f5f6 60%,#e9eff2 100%);
  }
  #mnk-portal .mnk-portal-svg{display:none!important}
  #mnk-portal .mnk-portal-mobile-logo{
    display:block;
    position:absolute;
    left:50%;top:46.5%;
    width:min(61vw,228px);
    height:auto;
    max-height:34svh;
    object-fit:contain;
    transform:translate3d(-50%,-50%,0) scale(1);
    opacity:1;
    filter:none;
    transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1);
    pointer-events:none;
    will-change:opacity,transform;
  }
  #mnk-portal.mnk-portal-mobile-fading .mnk-portal-mobile-logo{
    opacity:0;
    transform:translate3d(-50%,-50%,0) scale(.965);
  }
  #mnk-portal .mnk-portal-caption{
    top:calc(46.5% + min(15vw,63px) + 32px);
    color:#496075!important;
    opacity:1;
    transition:opacity .45s ease;
    font-size:8px;letter-spacing:.16em;
  }
  #mnk-portal .mnk-portal-caption i{background:#748a9d!important}
  #mnk-portal.mnk-portal-mobile-fading .mnk-portal-caption{opacity:0}
  #mnk-portal .mnk-portal-edge{background:linear-gradient(90deg,transparent,rgba(16,43,59,.2),transparent);box-shadow:none}
}
