/* duomoi logo sting (4 s animated logo). Scoped under .sting so it can sit inside any page; see sting.js. */
@font-face { font-family: "MPlusRoundedSting"; src: url("/brand/fonts/MPLUSRounded1c-sting.woff2") format("woff2"); font-weight: 800; font-display: block; }
.sting { --stage: #16141F; --ink: #FFFFFF; --cn: #FFFFFF; --coral: #F2546B; --violet: #8F84F0;
  --f-logo: "Outfit", "Poppins", "Helvetica Neue", Arial, sans-serif; --f-cn: "MPlusRoundedSting", "Noto Sans SC", "PingFang SC", sans-serif;
  background: var(--stage); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.sting.light { --stage: #F6F5FA; --ink: #16141F; --cn: #16141F; --violet: #5B4BDB; }
.sting .logo { display: flex; align-items: baseline; font-family: var(--f-logo); font-weight: 700; font-size: clamp(40px, 11.5vw, 128px);
  letter-spacing: -.027em; line-height: 1; padding-top: .22em; color: var(--ink); }
.sting .ch { display: inline-block; transform-origin: 50% 100%; }
.sting .dot, .sting .ring { position: relative; width: .536em; height: .536em; border-radius: 50%; transform-origin: 50% 100%; }
.sting .dot { background: var(--coral); margin: 0 .054em 0 .036em; }
.sting .ring { box-sizing: border-box; border: .116em solid var(--violet); margin: 0 .036em 0 .054em; }
.sting .m { position: relative; }
.sting .cn { position: absolute; left: 50%; bottom: calc(100% - .861em); transform: translateX(-50%); white-space: nowrap; font-family: var(--f-cn);
  font-size: .321em; font-weight: 800; letter-spacing: .167em; padding-left: .167em; line-height: 1.15; color: var(--cn); }
.sting .cn .ch { transform-origin: 50% 50%; }
.sting .cn .wo { color: var(--violet); }
.sting .eyes { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: .04em; transform: scale(0); pointer-events: none; }
.sting .eye { display: flex; align-items: center; justify-content: center; width: .12em; height: .16em; border-radius: 50%; background: #FFFFFF; }
.sting .pupil { display: block; width: .06em; height: .075em; border-radius: 50%; background: #16141F; }
.sting .ring .eyes { gap: .03em; }
.sting .ring .eye { width: .085em; height: .11em; box-shadow: 0 0 0 .012em #16141F22; }
.sting .ring .pupil { width: .045em; height: .055em; }

/* full-screen intro on a page */
.sting-overlay { position: fixed; inset: 0; z-index: 2000; cursor: pointer; transition: opacity .45s ease; }
.sting-overlay.out { opacity: 0; pointer-events: none; }
.sting-overlay .sting-skip { position: absolute; right: 18px; bottom: 16px; font: 600 .8rem "Outfit", system-ui, sans-serif; color: rgba(255, 255, 255, .55); letter-spacing: .06em; }
