/* 9.22 official-site footer: shared by the static homepages and inner pages. */
.site-footer.footer-psd.official-footer{display:block!important;padding:48px 0 35px!important;background:#101010;color:#ededed;font-size:16px;line-height:1.5}
.official-footer .footer-container{width:min(1040px,calc(100% - 96px));max-width:none;margin:auto}
.official-footer .footer-psd-cols{display:grid;grid-template-columns:repeat(4,max-content);justify-content:space-between;gap:30px;align-items:start}
.official-footer .footer-psd-col{padding:0}
.official-footer .footer-psd-col h2{margin:0 0 22px;color:#f4f4f4;font-size:26px;font-weight:400;line-height:1.4}
.official-footer .footer-psd-col>a{display:block;width:max-content;max-width:100%;color:#999;font-size:16px;line-height:2.35}
.official-footer .footer-psd-legal{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:37px;padding:0;color:#999;font-size:12px}
.official-footer .footer-psd-links{display:flex;gap:30px;flex-wrap:wrap}
.official-footer .footer-psd-links a{color:#999;font-size:12px}
.official-footer .footer-psd-copy{margin:30px 0 0;color:#aaa;font-size:13px;line-height:1.4;text-align:center}
.official-footer .footer-psd-reg{margin:7px 0 0;color:#777;font-size:10px;line-height:1.4;text-align:center}
.official-footer .footer-psd-reg a{color:inherit}
.footer-region{position:relative;max-width:100%;color:#aaa;font-size:12px}
.footer-region summary{display:flex;align-items:center;gap:10px;min-height:40px;list-style:none;white-space:nowrap;cursor:pointer}
.footer-region summary::before{display:block;width:14px;height:14px;flex:none;border:1px solid currentColor;border-radius:50%;background:linear-gradient(90deg,transparent 43%,currentColor 47%,currentColor 53%,transparent 57%),linear-gradient(transparent 43%,currentColor 47%,currentColor 53%,transparent 57%);content:"";opacity:.8}
.footer-region summary::-webkit-details-marker{display:none}
.footer-region summary span{margin-left:8px;font-size:18px}
.footer-region nav{position:absolute;bottom:100%;left:0;z-index:4;min-width:175px;padding:8px 12px;border:1px solid #444;background:#202020;box-shadow:0 8px 20px #0007}
.footer-region nav a{display:block!important;width:auto!important;margin:0!important;padding:7px 0;color:#ddd!important;font-size:12px!important;line-height:1.5!important}
.footer-cn-social{display:grid;grid-template-columns:repeat(3,24px);gap:12px 24px;align-items:center;margin-top:28px}
.footer-cn-social>*{display:grid;width:24px;height:24px;place-items:center;color:#fff}
.cn-social-icon{background-image:url('/strict/assets/components/footer-socials.webp');background-repeat:no-repeat;background-size:144px 58px}
.cn-social-icon.wechat{background-position:-72px -29px}
.cn-social-icon.weibo{background-position:-24px -29px}
.cn-social-icon.douyin{background-position:-120px 0}
.cn-social-symbol{font-size:22px;font-weight:600;line-height:1}
.cn-social-symbol img{display:block;width:22px;height:22px;filter:invert(1)}
.cn-social-word{font-size:10px;font-weight:700;white-space:nowrap}
.international-footer.official-footer{display:block!important;padding:48px 0 35px!important;background:#101010;color:#eee}
.official-footer .international-footer-inner{width:min(1550px,calc(100% - 96px));max-width:none;margin:auto}
.official-footer .international-footer-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr 1.4fr;gap:28px}
.official-footer.international-footer h2{margin:0 0 22px;font-size:25px;font-weight:600;line-height:1.35}
.official-footer.international-footer nav a{margin:0 0 16px;color:#bdbdbd;font-size:16px}
.official-footer.international-footer section>p{margin:-12px 0 34px;color:#bdbdbd;font-size:17px}
.official-footer .international-newsletter{height:60px;margin:0;border-color:#555}
.official-footer .international-socials{display:flex;gap:25px;align-items:center;margin-top:28px}
.official-footer .international-socials a,.official-footer .international-socials span{display:grid;width:28px;height:28px;place-items:center}
.official-footer .international-socials img{display:block;width:23px;height:23px;object-fit:contain;filter:brightness(0) invert(1)}
.official-footer .international-socials img[src$="/contact-facebook.svg"]{filter:none}
.official-footer .international-footer-meta{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:37px;color:#aaa;font-size:12px}
.official-footer .international-footer-meta>nav{display:flex;gap:28px;flex-wrap:wrap}
.official-footer .international-footer-meta>nav a{margin:0;font-size:12px}
.official-footer .international-footer-copy{margin:30px 0 0;color:#999;font-size:13px;text-align:center}
@media(max-width:900px){
 .official-footer .footer-container,.official-footer .international-footer-inner{width:calc(100% - 48px)}
 .official-footer .footer-psd-cols,.official-footer .international-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 28px}
 .official-footer .footer-psd-legal,.official-footer .international-footer-meta{margin-top:55px}
 .official-footer .international-footer-copy{margin-top:30px}
}
@media(max-width:560px){
 .site-footer.footer-psd.official-footer,.international-footer.official-footer{padding:48px 0 35px!important}
 .official-footer .footer-psd-cols,.official-footer .international-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 20px}
 .official-footer .footer-psd-col h2,.official-footer.international-footer h2{font-size:20px}
 .official-footer .footer-psd-col>a,.official-footer.international-footer nav a{font-size:13px}
 .official-footer .footer-psd-legal,.official-footer .international-footer-meta{align-items:flex-start;flex-direction:column;gap:16px;margin-top:40px}
 .official-footer .footer-psd-links,.official-footer .international-footer-meta>nav{gap:14px}
 .official-footer .international-newsletter{height:auto;grid-template-columns:1fr}
 .official-footer .international-newsletter input,.official-footer .international-newsletter button{height:50px}
 .official-footer .international-newsletter button{border-top:1px solid #555;border-left:0}
 .official-footer .footer-psd-copy,.official-footer .international-footer-copy{margin-top:50px}
}

/* Shared controls and explicit base styles prevent page styles changing the footer. */
.footer-language-picker{display:inline-flex;align-items:center;gap:8px;color:#bcbcbc;max-width:100%;font-size:13px;line-height:1.5}
.footer-language-picker svg{width:18px;height:18px;flex-shrink:0}
.footer-language-select{max-width:100%;min-height:44px;padding:8px 4px;border:0;border-radius:0;background:transparent;color:inherit;font:inherit;cursor:pointer;color-scheme:dark}
.footer-language-select option{background:#111;color:#fff}
.footer-language-select:focus-visible{outline:1px solid currentColor;outline-offset:4px}
.footer-language-picker:hover{color:#fff}
footer.official-footer{font-family:"HIFIMAN Outfit","HIFIMAN OPPOSans",sans-serif;line-height:1.5;text-align:left;letter-spacing:normal}
footer.official-footer *{box-sizing:border-box}
footer.official-footer a{text-decoration:none}
.official-footer .footer-psd-cols{justify-items:start}
.official-footer.international-footer nav a{display:block;line-height:1.5}
.official-footer .international-newsletter{display:grid;grid-template-columns:minmax(0,1fr) auto;border:1px solid #555}
.official-footer .international-newsletter input{min-width:0;padding:0 24px;border:0;background:#ffffff08;color:#fff;font:inherit;font-size:13px;border-radius:0}
.official-footer .international-newsletter button{padding:0 28px;border:0;border-left:1px solid #555;background:transparent;color:#fff;font:inherit;font-size:13px;text-transform:uppercase;border-radius:0}
@media(max-width:560px){.official-footer .international-newsletter{grid-template-columns:1fr}.official-footer .international-newsletter button{border-left:0;border-top:1px solid #555}}

/* Both locales share the same layout slots; content can wrap without clipping. */
footer.official-footer .footer-container,footer.official-footer .international-footer-inner{width:min(1550px,calc(100% - 96px));position:relative;padding-bottom:21px}
footer.official-footer .footer-psd-cols,footer.official-footer .international-footer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.4fr);gap:28px;justify-items:stretch;align-items:start;min-height:256px}
footer.official-footer .footer-psd-cols>*,footer.official-footer .international-footer-grid>*{min-width:0;width:auto;padding:0}
footer.official-footer .footer-psd-col h2,footer.official-footer.international-footer h2{margin:0 0 22px;font-size:25px;font-weight:600;line-height:1.35;color:#f4f4f4}
footer.official-footer .footer-psd-col>a,footer.official-footer .international-footer-grid>nav>a{margin:0 0 16px;font-size:16px;line-height:24px;color:#bdbdbd}
footer.official-footer .footer-follow>p,footer.official-footer .international-footer-grid>section>p{margin:-12px 0 34px;font-size:17px;line-height:25.5px;color:#bdbdbd}
footer.official-footer .footer-cn-social,footer.official-footer .international-socials{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:28px;min-height:28px}
footer.official-footer .footer-psd-legal,footer.official-footer .international-footer-meta{margin-top:37px;min-height:44px;gap:25px;flex-wrap:nowrap;align-items:center;flex-direction:row}
footer.official-footer .footer-psd-copy,footer.official-footer .international-footer-copy{margin:30px 0 0;font-size:13px;line-height:19.5px;color:#999}
footer.official-footer .footer-psd-reg{position:absolute;bottom:0;left:0;right:0;margin:0;line-height:14px}
@media(max-width:900px){
 footer.official-footer .footer-container,footer.official-footer .international-footer-inner{width:calc(100% - 48px)}
 footer.official-footer .footer-psd-cols,footer.official-footer .international-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 28px;min-height:0}
 footer.official-footer .footer-psd-legal,footer.official-footer .international-footer-meta{align-items:flex-start;flex-direction:column;gap:16px;margin-top:40px}
}
@media(max-width:560px){
 footer.official-footer .footer-psd-cols,footer.official-footer .international-footer-grid{gap:35px 20px}
 footer.official-footer .footer-psd-col h2,footer.official-footer.international-footer h2{font-size:20px}
 footer.official-footer .footer-psd-col>a,footer.official-footer .international-footer-grid>nav>a{font-size:13px}
 footer.official-footer .footer-follow>p,footer.official-footer .international-footer-grid>section>p{font-size:14px;min-height:51px}
}

footer.official-footer .footer-cn-social>*{display:flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;margin:0;padding:0;line-height:1;background:none}
footer.official-footer .footer-cn-social img{display:block;width:23px;height:23px;object-fit:contain;filter:brightness(0) invert(1)}
footer.official-footer .footer-cn-social>*:last-child{flex-basis:42px;width:42px}
footer.official-footer .footer-cn-social>*:last-child img{width:40px;height:auto}
footer.official-footer .footer-cn-social .cn-social-word{font-size:9px;line-height:1}

/* 9.24 type sizes; retain the confirmed four-column subscription layout. */
footer.official-footer .footer-psd-col h2{font-weight:400}
@media(min-width:901px){
 footer.international-footer.official-footer{padding:clamp(70px,6vw,120px) 0 35px!important;background:#08080a}
 footer.international-footer.official-footer .international-footer-inner{width:min(1550px,76%)}
 footer.international-footer.official-footer .international-footer-grid{grid-template-columns:1fr 1fr 1.2fr 1.4fr;gap:40px}
 footer.international-footer.official-footer .international-footer-meta{margin-top:75px}
 footer.international-footer.official-footer .international-footer-copy{margin-top:95px}
}

@media(min-width:901px){
 footer.official-footer .footer-psd-col h2,footer.official-footer.international-footer h2{font-size:clamp(17px,1.22vw,25px);margin-bottom:clamp(14px,1.07vw,22px)}
 footer.official-footer .footer-psd-col>a,footer.official-footer .international-footer-grid>nav>a{font-size:clamp(12px,.78vw,16px);line-height:1.5;margin-bottom:clamp(10px,.78vw,16px)}
 footer.official-footer .footer-follow>p,footer.official-footer .international-footer-grid>section>p{font-size:clamp(12px,.83vw,17px);line-height:1.5;margin:-8px 0 28px}
 footer.official-footer .international-newsletter input,footer.official-footer .international-newsletter button{padding-inline:clamp(12px,1.17vw,24px);font-size:clamp(10px,.64vw,13px)}
}

/* Newsletter feedback stays below the input without squeezing the submit button. */
.official-footer .international-newsletter[data-newsletter]{height:auto}
.official-footer [data-newsletter] input,.official-footer [data-newsletter] button{min-height:60px}
.official-footer [data-newsletter-status]{grid-column:1/-1;padding:8px 12px;font-size:13px;line-height:1.5;color:#fff}
.official-footer [data-newsletter-status]:empty{display:none}

/* Keep brand artwork at its own aspect ratio and QR images out of icon rules. */
footer.official-footer .footer-cn-social .social-control{position:relative;flex:0 0 28px;width:28px;height:32px;color:#fff;border:0;background:none}
footer.official-footer .social-control summary{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0;list-style:none;cursor:pointer}
footer.official-footer .social-control summary::-webkit-details-marker{display:none}
footer.official-footer .footer-cn-social img.social-logo{width:26px;height:26px;max-width:none;object-fit:contain;transform:none;filter:brightness(0) invert(1)}
footer.official-footer .footer-cn-social .social-control:last-child{flex-basis:42px;width:42px}
footer.official-footer .social-word{font-size:12px;font-weight:700;line-height:1;white-space:nowrap}
footer.official-footer .social-qr .social-popover{display:none;position:absolute;right:0;bottom:100%;z-index:20;width:184px;padding:12px;background:#fff;color:#171719;box-shadow:0 4px 20px #0005;text-align:center;border-radius:4px}
footer.official-footer .social-qr:hover .social-popover,footer.official-footer .social-qr:focus-within .social-popover,footer.official-footer .social-qr[open] .social-popover{display:block}
footer.official-footer .footer-cn-social .social-popover img{display:block;width:160px;height:160px;max-width:100%;object-fit:contain;filter:none;margin:0 auto 8px}
footer.official-footer .social-popover p{margin:8px 0;font-size:13px;line-height:1.5}
footer.official-footer .social-popover span{font-size:12px;line-height:1.5}
footer.official-footer .social-control:focus-visible,footer.official-footer .social-control summary:focus-visible{outline:2px solid #fff;outline-offset:4px}
/* Closed details must allow hover/focus previews as well as tap-to-open. */
footer.official-footer .social-qr::details-content{content-visibility:visible}
