/* PSD source metrics: home canvas 3840 px; secondary artboards 2223 px.
 * Poppins Bold is bundled. Arial Black uses the visitor's licensed local font.
 * Galano / OPPOSans / Feibo require supplied webfont files for exact fidelity.
 */
.ts-about-copy{font-family:var(--ts-font-design);font-weight:700;font-size:clamp(15px,1.2834vw,29px);line-height:2;max-width:none}
.ts-about-copy p{font-weight:700;margin-bottom:1em}
.ts-about-copy p.is-accent{font-weight:700;font-style:normal}
.ts-about-copy p.is-signature{font-weight:700}
.ts-home .ts-about h2{font-weight:700;letter-spacing:0;font-size:clamp(36px,3.578vw,82px)}
.ts-fixed-dock .ts-links{font-family:var(--ts-font-display);font-weight:700;letter-spacing:0}
.ts-chinese{font-family:"TS Design Calligraphy",KaiTi,STKaiti,serif;font-weight:700}
.ts-hero h1{font-family:var(--ts-font-display);font-weight:700;letter-spacing:.05em;line-height:1.056}
.ts-footer{font-weight:700}
/* The supplied Poppins Regular is mapped by tsd6_bundled_font('Regular').
   Override legacy Inter shorthands only in the Poppins sign-in form. */
body .ts-auth-screen .ts-auth-form #loginform input:not([type=checkbox]):not([type=hidden]):not([type=submit]){font-family:var(--ts-font-design);font-weight:400}
body .ts-auth-screen .ts-auth-form #loginform #wp-submit{font-family:var(--ts-font-design);font-weight:700}
.ts-footer h4{font-weight:700;font-size:clamp(14px,1.6vw,34px)}
.ts-footer a,.ts-footer p,.ts-footer .ts-contact-unset{font-weight:700;font-size:clamp(11px,.962vw,21px);line-height:1.7}
.ts-footer .ts-copy,.ts-footer .ts-copy>a{font-size:clamp(11px,1.069vw,23px)}
.ts-footer .ts-wrap{width:96%;padding-right:25%;max-width:none}
.ts-footer-grid{grid-template-columns:1.15fr .95fr .9fr 1.35fr 1.3fr;gap:clamp(16px,2vw,44px)}
.ts-footer .ts-signup input{font-weight:700}
.ts-footer .ts-signup input::placeholder{font-size:clamp(11px,.89vw,19px)}
.ts-footer .ts-footer-social{font-size:0}

/* Exactly one language control: GTranslate's flag, or a keyboard-usable fallback. */
.ts-language .tsp-language{position:relative}
.ts-language .tsp-language>summary{display:grid;place-items:center;list-style:none;width:38px;height:38px;cursor:pointer}
.ts-language .tsp-language>summary::-webkit-details-marker{display:none}
.ts-language .tsp-language>summary svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.5}
.tsp-language-options{position:absolute;right:0;top:100%;min-width:110px;max-height:60vh;overflow:auto;padding:8px;border-radius:12px;background:#063b24;box-shadow:0 8px 22px #002d1966}
.tsp-language-options a{display:block;padding:8px 16px}
.tsp-language-options a:focus-visible,.tsp-language-options a:hover{background:#306d50;outline:2px solid #fff8df}

/* About: restore Arial Black and original proportions, keep editable carousels. */
.ts2-about-page:before{background-image:url("about-background.webp")!important;background-color:#124b35!important;background-size:100% 100%!important;background-repeat:no-repeat!important}
.ts-secondary .ts2-about{width:85.2%;padding-top:clamp(32px,3.15vw,70px)}
.ts2-about,.ts2-about h1,.ts2-about h2,.ts2-about .ts2-pill,.ts2-about-cta,.ts2-about .ts2-story-block{font-family:"TS Design Black","Arial Black",var(--ts-font-design);font-weight:900;letter-spacing:0}
.ts2-about h1,.ts2-about h2{font-size:clamp(30px,3.6vw,80px);line-height:1.35}
.ts2-about .ts2-pill{font-size:clamp(13px,1.277vw,28.4px);padding:.75em 1.7em}
.ts2-about .ts2-story-block{font-size:clamp(15px,1.35vw,30px);line-height:1.2;padding:clamp(24px,3vw,67px) clamp(18px,2.2vw,49px);border:0;border-radius:clamp(22px,2.25vw,50px);background:rgba(171,207,185,.29)}
.ts2-about .ts2-story-block p{margin:0 auto 1.2em;max-width:88%}
.ts2-about .ts2-story-block p:last-child{margin-bottom:0}
.ts2-about .ts2-story-block strong{font-weight:inherit}
.ts2-about-carousel{margin:clamp(24px,2.6vw,58px) 0;padding:0}
.ts2-about-track{gap:clamp(12px,1vw,23px);grid-auto-columns:calc((100% - clamp(24px,2vw,46px))/3);padding-bottom:10px}
.ts2-about-track img{border:0;box-shadow:none;border-radius:clamp(18px,2.25vw,50px);aspect-ratio:1.67}
.ts2-about-carousel:first-of-type .ts2-about-track img{aspect-ratio:2.1}
.ts2-about-carousel{padding-inline:64px}
.ts2-about-prev{left:0}.ts2-about-next{right:0}
.ts-app .ts2-about-arrow{display:grid;place-items:center;box-sizing:border-box;top:50%;width:56px;height:56px;margin:0;padding:0;transform:translateY(-50%);border:3px solid #f7d782;border-radius:50%;background:#155d43;color:#fff8df;box-shadow:none;font-size:0;line-height:0;transition:background .18s ease,transform .18s ease}
.ts-app .ts2-about-arrow svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
.ts-app .ts2-about-arrow:not(:disabled):hover,.ts-app .ts2-about-arrow:not(:disabled):focus-visible{transform:translateY(-50%) scale(1.06);background:#ffbf31;color:#174d38;box-shadow:none}
.ts-app .ts2-about-arrow:focus-visible{outline:3px solid #fff8df;outline-offset:3px}
.ts-app .ts2-about-arrow:disabled{opacity:1;background:#286e53;border-color:#b9d0a8;color:#d5e6d8;box-shadow:none;cursor:default}
.ts2-legal,.ts2-legal h1,.ts2-legal h2,.ts2-legal-card{font-family:"TS Design Black","Arial Black",var(--ts-font-design);font-weight:900;letter-spacing:0}
/* Desktop legal artwork is a centered 65%-wide reading panel in the source design. */
@media(min-width:681px){.ts2-legal-shell{width:min(1240px,65vw)}}
.tsp-measurement-settings{margin-top:2em;padding-top:1em;border-top:1px solid #b9dcd2}
.tsp-measurement-settings>div{display:flex;gap:12px;flex-wrap:wrap}
.tsp-measurement-settings button{font:700 16px/1.4 var(--ts-font-design);padding:10px 20px;border:1px solid #fff8df;border-radius:999px;background:#124b35;color:#fff8df;cursor:pointer}
.tsp-measurement-settings button[aria-pressed=true]{background:#ffbc2f;color:#124b35}
.tsp-measurement-settings button:focus-visible{outline:3px solid white;outline-offset:3px}
@media(max-width:1050px){
  .ts-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ts-footer h4{font-size:15px}.ts-footer a,.ts-footer p,.ts-footer .ts-contact-unset{font-size:12px}
  .ts2-about .ts2-story-block p{max-width:100%}
}
@media(max-width:680px){
  .ts-secondary .ts2-about{width:calc(100% - 28px)}
  .ts2-about h1,.ts2-about h2{font-size:30px;line-height:1.25}
  .ts2-about .ts2-story-block{font-size:15px;line-height:1.5}
  .ts2-about-track{grid-auto-columns:86%;gap:14px}
  .ts2-about-carousel{padding:0 48px}.ts2-about-prev{left:0}.ts2-about-next{right:0}.ts-app .ts2-about-arrow{width:42px;height:42px;border-width:2px}.ts-app .ts2-about-arrow svg{width:20px;height:20px}
  .ts-about-copy{font-size:15px;line-height:1.75}
  .ts-home .ts-about h2{font-size:36px}
  .ts-footer .ts-wrap{width:calc(100% - 36px);padding-right:0}
  .ts-footer h4{font-size:13px}.ts-footer .ts-copy,.ts-footer .ts-copy>a{font-size:10px}
}
