/* V3.29.11 — contain semantic profile content at every mobile width. */
html{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  overflow-x:clip;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{
  position:relative;
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  overflow-x:clip;
}
main,.profile,.profile>*,.profile section,.profile nav,.profile header,.profile-grid,.facts,.equipment,.table-wrap,.profile-videos,.video-grid{
  min-width:0;
  max-width:100%;
}
.profile-videos,.video-grid{width:100%}
.video-grid{
  grid-auto-columns:32%;
  contain:inline-size;
  overscroll-behavior-inline:contain;
}
.video-grid article,.video-grid h3,.video-grid a{min-width:0;overflow-wrap:anywhere}
.profile-hero>img{
  height:auto!important;
  aspect-ratio:1/1!important;
}
.facts dd,.equipment dd,.profile-card,.timeline div,th,td{min-width:0;overflow-wrap:anywhere}

@media(max-width:720px){
  main{width:calc(100% - 32px)!important;max-width:1120px}
  .profile{width:100%;gap:48px}
  .profile-hero{width:100%;gap:24px;padding-top:14px}
  .profile-hero>img{width:min(100%,240px);max-width:240px}
  .profile-hero h1,.directory-hero h1{font-size:clamp(42px,12vw,52px);overflow-wrap:anywhere}
  .dek{font-size:19px;line-height:1.48}
  .facts div,.equipment div{padding:20px}
  .profile-card{padding:23px}
  .profile-card p,.profile-card li,.timeline p{font-size:16px}
  .video-grid{grid-auto-columns:84%}
  .video-grid article{width:100%}
  .video-heading{max-width:100%}
  .video-heading h2{overflow-wrap:anywhere}
  .table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  table{min-width:560px}
  .sources{max-width:100%}.sources li{min-width:0;max-width:100%}.sources a{overflow-wrap:anywhere}
}

@media(max-width:380px){
  main{width:calc(100% - 24px)!important}
  .profile-hero>img{width:min(100%,220px);max-width:220px}
  .profile-hero h1,.directory-hero h1{font-size:40px}
  .video-grid{grid-auto-columns:88%}
  .facts div,.equipment div,.profile-card{padding:18px}
  .timeline li{grid-template-columns:58px minmax(0,1fr);gap:14px}
}
