/* Phone layout only. Keep desktop PSD dimensions and editable content intact. */
@media (max-width:680px) {
  /* Legacy footer padding exposed its transparent background below the mint panel. */
  body .ts-footer {padding-bottom:0;margin-bottom:0}
  body .ts-footer .ts-footer-content {padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));margin-bottom:0}
  body .ts-footer .ts-copy:last-child {margin-bottom:0}
  body .ts-footer .ts-footer-character {filter:none}
  .ts-document-content {padding-inline:16px;min-width:0}
  .ts-document-content input:not([type=checkbox]):not([type=radio]),.ts-document-content select,.ts-document-content textarea {box-sizing:border-box;font-size:16px;max-width:100%}
  .ts-document-content h1 {font-size:clamp(26px,7vw,36px);line-height:1.25;overflow-wrap:anywhere}
  .ts-home,.ts-secondary,.ts-membership-page {overflow-wrap:break-word}
  .ts-home .ts-wrap,.ts-secondary .ts2-wrap {width:calc(100% - 32px);min-width:0;box-sizing:border-box}
  /* The primary banner follows the supplied 1920x1080 desktop proportion on phones. */
  .ts-home .ts-hero {height:auto;min-height:0;aspect-ratio:16 / 9}
  .ts-home .ts-hero .ts-hero-slide {background-position:center center!important}
  .ts-home .ts-hero-copy {box-sizing:border-box;height:100%;min-height:0;padding:clamp(14px,4vw,24px) 0 clamp(22px,6vw,36px)}
  .ts-home .ts-hero h1 {font-size:clamp(24px,7.6vw,36px);line-height:1;letter-spacing:0;max-width:88%}
  .ts-home .ts-hero-bottom {max-width:82%}
  .ts-home .ts-hero-kicker {font-size:clamp(9px,2.8vw,12px);line-height:1.4}
  .ts-home .ts-hero p {font-size:clamp(11px,3.2vw,14px);line-height:1.35}
  .ts-home .ts-hero-pagination {right:10px;bottom:8px}
  .ts-secondary.ts2-about-page:before,.ts-secondary.ts2-story-page:before,.ts-secondary.ts2-product-page:before {background-size:100% auto!important;background-repeat:repeat-y!important;background-position:center top!important}
  .ts-home .ts-intro {padding:28px 16px 32px;min-height:0}
  .ts-home .ts-intro h2,.ts-home .ts-intro h3 {font-size:clamp(19px,5.3vw,25px);line-height:1.45}
  .ts-home .ts-section {padding:36px 0}
  .ts-home .ts-section-title {font-size:clamp(24px,6.5vw,32px);line-height:1.2;max-width:100%;box-sizing:border-box}
  .ts-home .ts-section-sub,.ts-home .ts-mantra p {font-size:15px;line-height:1.65}
  .ts-home .ts-slider-shell:not(.is-expanded) .ts-story-art,.ts-home .ts-slider-shell:not(.is-expanded) .ts-story-card--china-to-see .ts-story-art {height:auto;min-height:0;aspect-ratio:580 / 1000}
  .ts-home .ts-about {padding:48px 0 32px}
  .ts-home .ts-about h2 {font-size:clamp(28px,7.4vw,36px);line-height:1.25}
  .ts-home .ts-about-copy {font-size:15px;line-height:1.8;font-weight:500}
  .ts-home .ts-about-copy p {font-weight:500}
  .ts-home .ts-about-copy .is-signature {font-weight:700}
  .ts-secondary .ts2-story-feature,.ts-secondary .ts2-visual .ts2-story-feature {min-width:0;grid-template-columns:minmax(0,1fr);padding:20px;gap:22px}
  .ts-secondary .ts2-story-media,.ts-secondary .ts2-story-copy {grid-column:1;grid-row:auto;min-width:0}
  .ts-secondary .ts2-story-copy h1 {font-size:30px;line-height:1.2;text-shadow:none}
  .ts-secondary .ts2-story-copy>p {font-size:15px;line-height:1.7}
  .ts-secondary .ts2-about .ts2-story-block {padding:24px 18px;font-size:15px;line-height:1.75}
  .ts-secondary .ts2-product {width:calc(100% - 40px)}
  .ts-secondary .ts2-product-info h1 {font-size:28px;line-height:1.25}
  .ts-secondary .ts2-product-features,.ts-secondary .tsp-product-description,.ts-secondary .tsp-product-notes {font-size:15px;line-height:1.7}
  .ts-secondary .ts2-product .ts2-section-title {font-size:24px;line-height:1.25}
  .ts-secondary .ts2-legal-shell {height:auto;min-height:0;width:calc(100% - 32px);box-sizing:border-box;padding:28px 16px}
  .ts-secondary .ts2-legal-scroll {height:auto;overflow:visible;padding-right:0}
  .ts-secondary .ts2-legal-card {padding:20px 16px;font-size:15px;line-height:1.75}
  .ts-footer .ts-footer-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;padding-right:0}
  .ts-footer .ts-footer-grid>div:first-child {min-height:110px}
  .ts-footer .ts-footer-grid>div:nth-child(4),.ts-footer .ts-footer-grid>div:last-child {grid-column:1/-1;max-width:none;width:100%}
  .ts-footer .ts-footer-grid>div:last-child {text-align:center}
  .ts-footer h4 {font-size:15px;line-height:1.4}
  .ts-footer a,.ts-footer p,.ts-footer .ts-contact-unset {font-size:13px;line-height:1.7}
  .ts-footer .ts-signup {width:100%;max-width:360px;margin-inline:auto;box-sizing:border-box}
  .ts-footer .ts-signup input {font-size:16px;min-width:0}
  body .ts-footer .ts-footer-socials .ts-footer-social {width:40px;height:40px;font-size:0}
  body .ts-footer .ts-footer-character {width:32%;max-height:130px;right:12px;top:12px}
  body .ts-signup-badge {width:64px;left:8px;top:auto;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:none}
}
