/* Touch targets and small UI fixes. Loaded after each page's inline styles.
   WCAG 2.2 SC 2.5.8 asks for at least 24 x 24 CSS px; 32 to 44 px is the usual comfort range on phones. */
@media (max-width:768px), (pointer:coarse){
  .lang-switch button{min-height:32px; min-width:40px; padding-left:10px; padding-right:10px;}
  .lang-toggle{min-height:36px;}
  /* Enlarge the logo's tap area (25px+ high) without moving anything. */
  header .brand, a.brand{padding-top:6px; padding-bottom:6px; margin-top:-6px; margin-bottom:-6px;}
  footer a{display:inline-flex; align-items:center; min-height:32px;}
  .rp3d-pin{min-height:32px;}
  .tp-toggle{min-height:36px;}
}

/* ---- Quiet type ----
   No forced capitals or card shadows. Outlined chips, buttons and cards are kept (the owner prefers them). */
.eyebrow, .role-tag, .role-target-label{text-transform:none;}
html[lang="ja"] .eyebrow{letter-spacing:.08em;}
html[lang="en"] .eyebrow{letter-spacing:.05em;}
.btn, .submit-btn{text-transform:none; letter-spacing:.02em;}
.form-card, .success-panel{box-shadow:none;}

@media (max-width:480px){ .header-wtea{display:none !important;} }

/* iOS Safari inflates text in blocks that contain a long unbreakable line. Keep authored sizes. */
html{-webkit-text-size-adjust:100%; text-size-adjust:100%;}

/* 320px phones: three team cards must fit (1fr alone lets the button text force a wider column). */
.team-grid-photo{grid-template-columns:repeat(3,minmax(0,1fr));}
@media (max-width:340px){
  .tp-toggle{font-size:10px; padding-left:0; padding-right:0;}
  .tp-toggle::after{margin-left:1px;}
  .team-photo-cap{padding-left:6px; padding-right:6px;}
}
