/* S-005 only. Gate B shared header, breadcrumb, footer and hover remain unchanged. */
.tf-about-title{padding:40px 0 28px}
.tf-about-title h1{margin:0;color:var(--tf-deep);font-size:38px;line-height:1.3;font-weight:700}
.tf-about-intro{background:var(--tf-soft)}
.tf-about-intro-inner{display:flex;align-items:center;justify-content:center;gap:28px;padding-top:40px;padding-bottom:40px}
.tf-about-copy{max-width:700px}
.tf-about-lead{margin:0 0 14px;color:var(--tf-brown);font-size:30px;line-height:1.5;font-weight:700;text-wrap:balance}
.tf-about-text{margin:0;font-size:16px;line-height:1.85}
.tf-about-mascot{display:block;width:180px;height:auto;flex:none}
.tf-about-footer-gap{height:32px}
@media(max-width:767px){
  .tf-about-title{padding:24px 0 20px}
  .tf-about-title h1{font-size:27px}
  .tf-about-intro-inner{display:block;padding-top:24px;padding-bottom:20px}
  .tf-about-lead{max-width:334px;font-size:21px;line-height:1.5;margin-bottom:12px;text-wrap:balance}
  .tf-about-text{font-size:14px;line-height:1.72}
  .tf-about-mascot{width:105px;margin:9px auto 0}
  .tf-about-footer-gap{height:20px}
}

.tf-about-operator{background:var(--tf-page)}
.tf-about-operator-inner{width:min(100% - 72px,760px);margin-inline:auto;padding:32px 0 36px}
.tf-about-operator h2{margin:0 0 12px;color:var(--tf-deep);font-size:22px;line-height:1.45;font-weight:700}
.tf-about-operator p{margin:0;font-size:16px;line-height:1.85}
@media(max-width:767px){
 .tf-about-operator-inner{width:calc(100% - 32px);padding:24px 0 28px}
 .tf-about-operator h2{margin-bottom:10px;font-size:18px;line-height:1.5}
 .tf-about-operator p{font-size:14px;line-height:1.75}
}

/* Full group stays visible, including on small screens. */
.tf-about-family{display:block;width:42%;max-width:560px;height:auto;object-fit:contain;flex:0 1 560px}
.tf-about-copy{min-width:0;flex:1}
@media(max-width:1023px){.tf-about-intro-inner{display:flex;flex-direction:column;align-items:center}.tf-about-family{width:100%;max-width:640px;flex:none}}
