:root { --entrance-ease: cubic-bezier(.22,1,.36,1); }
html.monq-entrance-pending, html.monq-entrance-open { overflow:hidden; background:#000; }
.monq-entrance-pending body { visibility:hidden; }
.monq-entrance-open body { overflow:hidden; }
.monq-entrance {
  --pointer-x:0px; --pointer-y:0px; --reflection-x:50%; --orb-size:368px;
  position:fixed; inset:0; z-index:1000; isolation:isolate; overflow:hidden;
  color:#f5f5f4; font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
  background:#000;
  -webkit-font-smoothing:antialiased;
}
.monq-entrance::after {
  content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:radial-gradient(ellipse at 50% 46%,transparent 20%,#00000033 55%,#000000cc 100%);
}
.monq-entrance button { border:0; background:none; color:inherit; font:inherit; cursor:pointer; }
.monq-entrance__space { position:absolute; inset:0; perspective:1400px; transform:translate3d(var(--pointer-x),var(--pointer-y),0); transition:transform .8s var(--entrance-ease); }
.monq-entrance__ribbon {
  position:absolute; top:46%; left:-12%; width:124%;
  transform:translateY(-50%) rotate(-13deg) rotateY(-12deg);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  opacity:.83; transition:transform 1.1s var(--entrance-ease),opacity .8s;
}
.monq-entrance__track { display:flex; width:max-content; animation:monq-ribbon-drift 64s linear infinite; }
.monq-entrance__frames { display:flex; gap:12px; padding:9px 12px 9px 0; border-block:1px solid #d6e2eb26; background:#0c0f1340; }
.monq-entrance__panel { position:relative; width:310px; height:174px; flex:none; overflow:hidden; border:1px solid #e6edf020; border-radius:3px; background:#171a1f; }
.monq-entrance__panel::after { content:''; position:absolute; inset:0; background:linear-gradient(120deg,#eef4ff0d,transparent 45%,#02050b26); border-radius:inherit; pointer-events:none; }
.monq-entrance__panel img { display:block; width:100%; height:100%; object-fit:cover; filter:saturate(.82) brightness(.92); }
.monq-entrance__ribbon--far { top:58%; left:-18%; width:136%; transform:translateY(-50%) rotate(17deg) rotateY(18deg) translateZ(-190px); opacity:.24; filter:blur(1.2px); }
.monq-entrance__track--far { animation-duration:76s; animation-direction:reverse; }
.monq-entrance__ribbon--far .monq-entrance__panel { width:350px; height:197px; }
.monq-entrance__center { position:absolute; z-index:3; top:50%; left:50%; width:440px; max-width:94%; transform:translate(-50%,-43%); text-align:center; }
.monq-entrance__center::before { content:''; position:absolute; z-index:-1; inset:-80px -75px 0; background:radial-gradient(ellipse at 50% 42%,#00000080 12%,#00000050 43%,transparent 72%); pointer-events:none; }
.monq-entrance .monq-entrance__enter {
  position:relative; display:grid; place-items:center; width:var(--orb-size); height:var(--orb-size); max-width:100%; margin:0 auto; padding:72px; border-radius:50%; isolation:isolate;
  background:radial-gradient(ellipse at var(--reflection-x) 12%,#ebf0f321 0%,transparent 48%),radial-gradient(ellipse at 48% 76%,#080c1399 0%,#171c2270 58%,#d5dfe513 90%);
  box-shadow:inset 0 1px 2px #ffffff6b,inset 0 -2px 4px #cddce62e,inset 12px 0 30px #d7e8f008,inset -18px -8px 35px #070a1070,0 22px 55px #00000040;
  backdrop-filter:blur(8px) saturate(.65); -webkit-backdrop-filter:blur(8px) saturate(.65);
  transition:transform .45s var(--entrance-ease),box-shadow .5s,filter .45s;
}
.monq-entrance__enter img { position:relative; z-index:2; width:100%; max-width:250px; min-width:0; height:auto; filter:drop-shadow(0 2px 7px #00000038); }
.monq-entrance__glass { position:absolute; inset:0; border-radius:inherit; overflow:hidden; pointer-events:none; }
.monq-entrance__glass::before { content:''; position:absolute; inset:1px; border-radius:50%; background:radial-gradient(ellipse at 30% 12%,#ffffff32 0%,#eaf2f50b 25%,transparent 47%),radial-gradient(ellipse at 72% 89%,#cbdcea16,transparent 42%); }
.monq-entrance__glass::after { content:''; position:absolute; width:65%; height:17%; top:9%; left:12%; border-top:2px solid #ffffff5c; border-radius:50%; transform:rotate(-24deg); filter:blur(.7px); opacity:.55; animation:monq-glass-breathe 12s ease-in-out infinite alternate; }
.monq-entrance__halo { position:absolute; inset:-9px; border:1px solid #d9e5ed1f; border-radius:50%; pointer-events:none; transition:transform 1.1s var(--entrance-ease),box-shadow .6s,opacity .7s; }
.monq-entrance__halo::before { content:''; position:absolute; inset:-1px; border:1px solid transparent; border-top-color:#edf4f357; border-right-color:#d9e4ee13; border-radius:inherit; animation:monq-halo-turn 38s linear infinite; }
.monq-entrance__invitation { font-size:10px; letter-spacing:.4em; margin:37px 0 13px; color:#edf0f1; }
.monq-entrance__hint { font-size:10px; letter-spacing:.07em; margin:0; color:#a9adb3; }
.monq-entrance .monq-entrance__skip { display:block; min-width:44px; min-height:44px; margin:15px auto 0; padding:12px; font-size:8px; letter-spacing:.22em; color:#8c9199; transition:color .3s; }
.monq-entrance .monq-entrance__skip:hover { color:#fff; }
.monq-entrance button:focus-visible { outline:1px solid #bdd9e8; outline-offset:8px; }
@media (hover:hover) and (pointer:fine) {
  .monq-entrance__enter:hover { transform:scale(1.03); filter:brightness(1.1); box-shadow:inset 0 1px 3px #ffffff80,inset 0 -2px 5px #cddce644,0 22px 65px #00000040,0 0 32px #bdd6e90d; }
  .monq-entrance__enter:hover .monq-entrance__halo { animation:monq-hover-pulse .85s ease-out 1; }
}
.monq-entrance__light { position:absolute; inset:0; z-index:7; pointer-events:none; background:#fff; opacity:0; transition:opacity .65s ease-in-out; }
.monq-entrance.is-opening .monq-entrance__enter { animation:monq-enter-press .55s var(--entrance-ease) both; }
.monq-entrance.is-opening .monq-entrance__invitation,.monq-entrance.is-opening .monq-entrance__hint,.monq-entrance.is-opening .monq-entrance__skip { opacity:0; transition:opacity .3s; }
.monq-entrance.is-expanding .monq-entrance__enter { box-shadow:inset 0 0 85px #e9f1f280,0 0 100px #dae7ef38; }
.monq-entrance.is-expanding .monq-entrance__glass { background:radial-gradient(ellipse at center,#eff4f538,transparent 72%); }
.monq-entrance.is-expanding .monq-entrance__halo { transform:scale(3.5); box-shadow:0 0 100px 40px #e3edf044; opacity:0; }
.monq-entrance.is-expanding .monq-entrance__ribbon { transform:translateY(-50%) rotate(-13deg) rotateY(-12deg) translateZ(-400px); opacity:0; }
.monq-entrance.is-expanding .monq-entrance__ribbon--far { transform:translateY(-50%) rotate(17deg) rotateY(18deg) translateZ(-600px); }
.monq-entrance.is-light .monq-entrance__light { opacity:1; }
.monq-entrance.is-light .monq-entrance__center { opacity:0; transition:opacity .45s; }
.monq-entrance.is-skip .monq-entrance__light { transition-duration:.4s; }
@keyframes monq-ribbon-drift { to { transform:translateX(-33.333333333%); } }
@keyframes monq-halo-turn { to { transform:rotate(360deg); } }
@keyframes monq-glass-breathe { to { opacity:.85; transform:rotate(-17deg) translateX(4px); } }
@keyframes monq-hover-pulse { 50% { transform:scale(1.025); opacity:.75; } }
@keyframes monq-enter-press { 25% { transform:scale(.97); } 100% { transform:scale(1.04); } }
@keyframes monq-home-reveal { from { opacity:0; } to { opacity:1; } }
.monq-home-reveal > main,.monq-home-reveal > .site-header { animation:monq-home-reveal .45s ease-out both; }
@media (min-width:761px) and (max-width:1040px) {
  .monq-entrance { --orb-size:320px; }
  .monq-entrance .monq-entrance__enter { padding:60px; }
  .monq-entrance__panel { width:250px; height:140px; }
  .monq-entrance__frames > :nth-child(n+7) { display:none; }
  .monq-entrance__ribbon--far { opacity:.16; }
}
@media (max-width:760px) {
  .monq-entrance { --orb-size:254px; }
  .monq-entrance__space { perspective:none; transform:none; }
  .monq-entrance__ribbon { left:-60%; width:220%; top:46%; transform:translateY(-50%) rotate(-17deg); opacity:.75; }
  .monq-entrance__track { animation-duration:38s; }
  .monq-entrance__frames { gap:8px; padding:7px 8px 7px 0; }
  .monq-entrance__panel { width:190px; height:107px; }
  .monq-entrance__frames > :nth-child(n+5) { display:none; }
  .monq-entrance__ribbon--far { display:none; }
  .monq-entrance__center { width:310px; transform:translate(-50%,-42%); }
  .monq-entrance .monq-entrance__enter { padding:45px; backdrop-filter:blur(5px); -webkit-backdrop-filter:blur(5px); }
  .monq-entrance__invitation { margin-top:30px; }
  .monq-entrance.is-expanding .monq-entrance__ribbon { transform:translateY(-50%) rotate(-17deg) scale(.94); }
}
@media (max-height:600px) and (orientation:landscape) {
  .monq-entrance { --orb-size:210px; }
  .monq-entrance .monq-entrance__enter { padding:38px; }
  .monq-entrance__center { transform:translate(-50%,-42%); }
  .monq-entrance__invitation { margin-top:22px; }
  .monq-entrance__skip { margin-top:4px !important; }
}
@media (prefers-reduced-motion:reduce) {
  .monq-entrance *,.monq-entrance *::before,.monq-entrance *::after { animation:none !important; transition:none !important; }
  .monq-entrance__space { transform:none; }
  .monq-entrance.is-reduced { opacity:0; transition:opacity .18s ease !important; }
  .monq-home-reveal > main,.monq-home-reveal > .site-header { animation:none; }
}

/* Brand opening: official SVG slices, then a drawn circle, then the showcase. */
.monq-entrance .monq-entrance__enter { background:none; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; }
.monq-entrance__logo { position:relative; z-index:2; display:block; width:100%; max-width:250px; aspect-ratio:476 / 164; }
.monq-entrance__logo-letter { position:absolute; inset:0; animation:monq-letter-arrive .36s var(--entrance-ease) var(--letter-delay) both; }
.monq-entrance__logo-letter img { display:block; width:100%; height:100%; max-width:none; }
.monq-entrance__glass {
  background:radial-gradient(ellipse at var(--reflection-x) 12%,#ffffff16,transparent 48%),radial-gradient(ellipse at 48% 76%,#00000099,#0a0a0a70 58%,#ffffff0d 90%);
  box-shadow:inset 0 1px 2px #ffffff45,inset 0 -2px 4px #ffffff18,0 22px 55px #00000040;
  backdrop-filter:blur(8px) saturate(.65); -webkit-backdrop-filter:blur(8px) saturate(.65);
  animation:monq-orb-arrive .7s ease 1.45s both;
}
.monq-entrance__halo { inset:-1px; border:0; }
.monq-entrance__halo::before { display:none; }
.monq-entrance__halo svg { display:block; width:100%; height:100%; overflow:visible; transform:rotate(-90deg); }
.monq-entrance__halo circle { stroke:#ffffff75; stroke-width:.28; stroke-dasharray:1; stroke-dashoffset:0; animation:monq-circle-draw .75s var(--entrance-ease) 1.45s both; }
.monq-entrance__space { animation:monq-ribbons-arrive 1.05s var(--entrance-ease) 2.2s both; }
.monq-entrance__invitation,.monq-entrance__hint,.monq-entrance__skip { animation:monq-orb-arrive .5s ease 1.9s both; }
.monq-entrance.is-introducing:not(.is-keyboard) .monq-entrance__enter:focus-visible { outline:none; }
.monq-entrance__skip:focus-visible { animation:none; }
.monq-entrance.is-introducing .monq-entrance__enter { box-shadow:none; filter:none; }
.monq-entrance.is-introducing .monq-entrance__halo { animation:none; }
.monq-entrance.is-opening .monq-entrance__logo-letter,
.monq-entrance.is-opening .monq-entrance__glass,
.monq-entrance.is-opening .monq-entrance__space,
.monq-entrance.is-opening .monq-entrance__invitation,
.monq-entrance.is-opening .monq-entrance__hint,
.monq-entrance.is-opening .monq-entrance__skip { animation:none; }
.monq-entrance.is-opening .monq-entrance__halo circle { animation:none; }
@keyframes monq-letter-arrive { from { opacity:0; filter:blur(2px); } to { opacity:1; filter:blur(0); } }
@keyframes monq-orb-arrive { from { opacity:0; } to { opacity:1; } }
@keyframes monq-circle-draw { from { stroke-dashoffset:1; opacity:0; } 10% { opacity:1; } to { stroke-dashoffset:0; opacity:1; } }
@keyframes monq-ribbons-arrive { from { opacity:0; filter:brightness(0); scale:.94; } to { opacity:1; filter:brightness(1); scale:1; } }
@media (max-width:760px) { .monq-entrance__glass { backdrop-filter:blur(5px); -webkit-backdrop-filter:blur(5px); } }
@media (prefers-reduced-motion:reduce) {
  .monq-entrance__logo-letter,.monq-entrance__glass,.monq-entrance__halo circle,.monq-entrance__space,.monq-entrance__invitation,.monq-entrance__hint { animation:none; }
}
