*{box-sizing:border-box}body{margin:0;background:#fffaf0;color:#294843;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}a{color:inherit}header,main,footer{width:min(1040px,calc(100% - 48px));margin:auto}header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:30px 0;border-bottom:1px solid #e6dfce;gap:20px}.brand{display:block;text-decoration:none}.brand strong{font-size:26px;font-weight:800;letter-spacing:-.05em}.brand small{display:block;color:#697d73;font-size:13px}select{max-width:100%;font:inherit;color:inherit;border:0;background:transparent;padding:9px 30px 9px 12px;border-radius:10px}main{padding:64px 0 90px;min-height:65vh}h1{font-size:clamp(32px,5vw,46px);line-height:1.15;margin:0 0 16px;letter-spacing:-.03em}.intro{color:#697d73;margin:0 0 42px;font-size:17px}.apps{display:grid;gap:clamp(16px,2vw,24px);list-style:none;padding:0;margin:0}.app{display:flex;align-items:center;gap:26px;background:#fff;border:1px solid #eee6d4;border-radius:24px;padding:28px;box-shadow:0 12px 40px #806b3306}.app-icon{width:100px;height:100px;border-radius:22px;flex:none}.app>div{min-width:0}.app h2{overflow-wrap:anywhere;font-size:22px;line-height:1.35;margin:0;font-weight:700;max-width:420px}.platform{display:block;color:#697d73;font-size:13px;margin-top:10px}.download{margin-left:auto;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:11px;min-width:164px;min-height:54px;border:1px solid #284a43;border-radius:16px;background:linear-gradient(180deg,#365e55,#25473f);color:#fffdf6;padding:14px 20px;text-decoration:none;font-weight:600;font-size:15px;box-shadow:inset 0 1px 0 #ffffff26,0 5px 12px #29484318;transition:box-shadow .18s,transform .18s}.download:hover{box-shadow:inset 0 1px 0 #ffffff30,0 8px 18px #29484326;transform:translateY(-1px)}.download:active{transform:translateY(1px)}.download .bi-apple{width:22px;height:22px;flex:none}.download .bi-arrow-up-right{width:16px;height:16px;flex:none;margin-left:7px;opacity:.8}.download-label{letter-spacing:.01em}footer{border-top:1px solid #e6dfce;padding:25px 0 35px;display:flex;align-items:center;flex-wrap:nowrap;gap:20px;justify-content:space-between;color:#697d73;font-size:13px}footer nav{display:flex;align-items:center;gap:22px;flex-wrap:nowrap}footer a{text-decoration:none}footer a:hover{text-decoration:underline}:focus-visible{outline:3px solid #279a96;outline-offset:5px}.skip{position:absolute;left:20px;top:-80px}.skip:focus{top:8px;background:white;padding:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:620px){header,main,footer{width:calc(100% - 36px)}header{padding:22px 0;gap:12px}main{padding:38px 0 55px}.intro{margin-bottom:28px}.app{display:grid;grid-template-columns:72px minmax(0,1fr);padding:20px;gap:17px}.app-icon{width:72px;height:72px;border-radius:17px}.app h2{font-size:18px}.download{grid-column:1/-1;margin:5px 0 0;justify-content:center;white-space:normal;text-align:center}footer{flex-direction:row;gap:10px;font-size:clamp(11px,2.9vw,13px)}footer nav{gap:clamp(8px,2.4vw,16px)}}
.brand{display:flex;align-items:center;gap:14px}.brand-logo{display:flex;width:96px;height:76px;flex:none;align-items:center}.portrait{width:64px;height:64px;flex:none;background-size:300% 200%;background-repeat:no-repeat;background-position:0 0}.portrait+.portrait{margin-left:-28px;margin-top:12px}.portrait.dada{background-image:url('/assets/dada-expressions.png')}.portrait.xiaoxiao{background-image:url('/assets/xiaoxiao-expressions.png')}.welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:230px;margin-top:-34px;margin-bottom:24px}.welcome .intro{margin-bottom:0}.duo{position:relative;width:320px;height:240px;flex:none;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse,#f6df9540,transparent 70%)}.friend{width:180px;height:180px;flex:none;background-size:300% 100%;background-repeat:no-repeat;animation:wave 2s steps(1,end) infinite,bob 4.8s ease-in-out infinite}.friend.dada{background-image:url('/assets/dada-frames.png');transform:rotate(-4deg)}.friend.xiaoxiao{background-image:url('/assets/xiaoxiao-frames.png');margin-left:-55px;animation-delay:-1s,-2s}.star{position:absolute;width:26px;height:26px;background:url('/assets/sparkle.png') center/contain no-repeat;animation:twinkle 3s ease-in-out infinite}.star.one{top:26px;left:28px}.star.two{top:53px;right:15px;width:19px;height:19px;animation-delay:-1.3s}@keyframes wave{0%,100%{background-position:0 0}25%,75%{background-position:50% 0}50%{background-position:100% 0}}@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -7px}}@keyframes twinkle{0%,100%{opacity:.35;scale:.85}50%{opacity:1;scale:1.1}}@media(max-width:700px){.welcome{gap:0}.duo{width:230px;height:210px}.friend{width:150px;height:150px}.brand-logo{width:78px}.portrait{width:54px;height:54px}.brand strong{font-size:23px}}@media(max-width:500px){.welcome{position:relative;min-height:210px;margin-top:-14px;align-items:flex-start;padding-bottom:105px}.welcome h1{font-size:32px}.welcome .intro{font-size:15px;max-width:240px}.duo{position:absolute;bottom:-19px;right:-10px;height:170px;width:210px;pointer-events:none}.friend{width:135px;height:135px}.friend.xiaoxiao{margin-left:-35px}.star.one{left:15px;top:35px}.star.two{right:4px;top:50px}.brand small{font-size:12px}header{gap:14px}.brand-logo{width:75px}}@media(prefers-reduced-motion:reduce){.friend,.star{animation:none}.download{transition:none;transform:none}}

.brand-logo-mark{width:88px;height:88px;object-fit:contain;flex:none}.brand-local-name{display:block;font-size:13px;font-weight:500;letter-spacing:.03em;color:#697d73;margin-top:1px}.brand-wordmark{display:inline-flex;align-items:baseline;gap:1px;white-space:nowrap}.brand-wordmark .brand-domain{font-size:.5em;font-weight:700;letter-spacing:-.02em;transform:translateY(.18em)}
.policy{max-width:760px;min-height:65vh}.policy h1{font-size:clamp(30px,5vw,44px)}.policy h2{font-size:22px;margin:32px 0 10px}.policy p{line-height:1.85;margin:12px 0}.policy .updated{color:#697d73;font-size:14px}.policy .back{display:inline-block;margin-bottom:24px;color:#697d73}.contact-email{font-size:clamp(21px,4vw,30px);font-weight:700;overflow-wrap:anywhere}
.welcome{min-height:300px;margin:0 0 32px;gap:16px}.welcome>div:first-child{max-width:570px}.welcome h1{font-size:clamp(34px,4.4vw,56px);max-width:580px;line-height:1.15;letter-spacing:-.035em}.welcome .intro{font-size:18px;margin-top:20px}.duo{width:400px;height:290px}.friend{width:240px;height:240px}.friend.xiaoxiao{margin-left:-80px}.star.one{top:22px;left:30px}.star.two{top:45px;right:15px}.brand small{display:none}main{padding-top:28px}@media(max-width:800px){.duo{width:310px;height:240px}.friend{width:190px;height:190px}.friend.xiaoxiao{margin-left:-60px}}@media(max-width:620px){.welcome{flex-direction:column;align-items:flex-start;gap:0;padding:0;min-height:0;margin:0 0 18px}.welcome>div:first-child{max-width:100%}.welcome h1{font-size:38px;max-width:460px}.welcome .intro{font-size:16px;max-width:none;margin-top:14px}.duo{position:relative;bottom:auto;right:auto;align-self:center;width:320px;max-width:100%;height:240px;margin-top:8px}.friend{width:200px;height:200px}.friend.xiaoxiao{margin-left:-60px}main{padding-top:32px}.brand strong{font-size:24px}.brand-logo{width:80px}header{padding:16px 0}.brand-logo-mark{width:76px;height:76px}}

/* Keep the language control anchored beside the brand, including narrow phones. */
.brand{min-width:0}.brand>span{min-width:0}.brand-local-name{overflow-wrap:anywhere}
.language-picker{justify-self:end;align-self:start;padding-top:8px}
.language-picker select{display:block;min-height:44px;box-shadow:none;cursor:pointer;text-align-last:right;font-weight:500}.language-picker select:hover{color:#367268}.language-picker select option{text-align:left}
footer>span,footer nav a{white-space:nowrap}footer nav a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:620px){
  header{column-gap:8px;align-items:start}
  .brand{gap:8px}
  .brand-logo-mark{width:clamp(36px,calc(16vw - 15.2px),68px);height:clamp(36px,calc(16vw - 15.2px),68px)}
  .brand strong{font-size:clamp(18px,calc(6vw - 1.2px),24px)}
  .brand-local-name{font-size:12px;letter-spacing:0;line-height:1.35}
  .language-picker{padding-top:0}
  .language-picker select{width:136px;font-size:12px;padding:9px 2px 9px 8px}
  .friend{width:clamp(160px,50vw,200px);height:clamp(160px,50vw,200px)}
  footer{padding:18px 0 24px}
}
