/* Reading layout for narrow screens. Approved desktop rules remain unchanged. */
@media(max-width:900px){
 #main-about .wrap,#s6.team.wrap{width:88%;max-width:680px;margin-left:auto;margin-right:auto}
 #main-about h2,#main-about .location-intro h2,#main-about .application h2{font-size:34px;line-height:1.16;letter-spacing:-1px;overflow-wrap:break-word}
 #main-about p,#main-about .story-text p,#main-about .letter p{font-size:16px;line-height:1.7}
 #main-about .hero{height:auto;min-height:0;padding:0 0 40px;display:flex;flex-direction:column;container-type:normal}
 #main-about .hero-text.wrap{position:relative;order:0;width:88%;padding:112px 0 0;margin:auto;pointer-events:auto}
 #main-about .hero h1{font-size:clamp(30px,7.6vw,46px);line-height:1.12;width:100%;letter-spacing:-1px}
 #main-about .hero-line{display:inline;white-space:normal}
 #main-about .hero-line:not(:last-child):after{content:' '}
 #main-about .hero-support{width:100%;max-width:none;margin-top:24px;font-size:16px;line-height:1.6}
 #main-about .heroart{position:relative;order:1;top:auto;right:auto;bottom:auto;width:88%;height:auto;aspect-ratio:1.4;margin:8px auto 0}
 #main-about .heroart img{object-fit:contain}
 #main-about .vision-section{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;padding:48px 0 64px}
 #main-about .belief,#main-about .belief+.belief{min-width:0;width:100%;padding:24px 12px}
 #main-about .belief p{font-size:22px;line-height:1.5}
 #main-about .belief p span{display:inline;white-space:normal}
 #main-about .belief p span:not(:last-child):after{content:' '}
 #main-about .vision-section:before,#main-about .vision-section:after,#main-about .systems:before,#main-about .ceo:before{width:150px;height:163px;opacity:.45}
 #main-about .story,#main-about .systems,#main-about .ceo,#main-about .location{padding-top:56px;padding-bottom:56px}
 #main-about .section-intro{margin-bottom:36px}
 #main-about .timeline:before{left:0;top:8px;bottom:0}
 #main-about .milestone{display:flex;flex-direction:column;gap:20px;padding:0 0 48px 22px;min-width:0}
 #main-about .milestone>.axis{display:none}
 #main-about .milestone>.left,#main-about .milestone>.right{width:100%;min-width:0}
 #main-about .milestone>div:has(.story-text){order:0}
 #main-about .milestone>div:has(.story-graphic){order:1}
 #main-about .milestone:before{content:'';position:absolute;left:-4px;top:14px;width:9px;height:9px;background:#3065ff;border-radius:50%}
 #main-about .milestone:last-child:before{background:#07ce9a}
 #main-about .milestone-label{margin-bottom:20px}
 #main-about .story-text h3{font-size:21px;line-height:1.35}
 #main-about .story-graphic{padding:0}
 #main-about .story-graphic svg{width:100%;height:auto;max-height:160px}
 #main-about .milestone img{max-width:100%;height:auto}
 #main-about .system-idea,#main-about .application,#main-about .location-intro,#main-about .location-layout,#main-about .hq-inner{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
 #main-about .system-idea>* ,#main-about .application>*,#main-about .location-layout>*{min-width:0}
 #main-about .software-diagram{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;height:auto;margin:32px 0 48px;padding:24px 12px;border:1px solid #254b59;border-radius:8px}
 #main-about .software-diagram svg{display:none}
 #main-about .di-label,#main-about .di-title{position:static;transform:none;text-align:center;width:auto;white-space:normal;line-height:1.4}
 #main-about .di-label{font-size:15px}
 #main-about .di-title{grid-column:1/-1;grid-row:2;font-size:32px;color:#4e86ff;padding:16px 0;border-top:1px solid #254b59;border-bottom:1px solid #254b59}
 #main-about .application{padding:0}
 #main-about .application .culture{height:auto;aspect-ratio:1.4}
 #main-about .application-copy .reading-copy{margin-top:24px}
 #main-about .letter-layout{display:block}
 #main-about .ceo>h2{margin-bottom:32px;text-align:left}
 #main-about .letter .opening{font-size:27px;line-height:1.35;max-width:100%;margin-bottom:24px}
 #main-about .letter .opening .blue{white-space:normal}
 #main-about .letter .world-lines{margin:28px 0;padding:20px 16px}
 #main-about .signature{max-width:100%}
 #main-about .location-layout{margin-top:36px;padding-top:0;gap:40px}
 #main-about .hq-inner{margin-top:20px}
 #main-about .office-photo{width:100%;max-width:340px;height:auto;margin:auto}
 #main-about .hq-copy{min-width:0}
 #main-about .hq-copy address{font-size:16px;line-height:1.6;margin-top:20px}
 #main-about .company{padding:0}
 #main-about .company dl{row-gap:0;margin-top:20px}
 #main-about .fact{grid-template-columns:minmax(0,1fr);gap:6px;padding:16px 0;border-bottom:1px solid #23323b;font-size:16px;line-height:1.5}
 #main-about .fact dd{overflow-wrap:anywhere}
 #main-about .network{height:auto;min-height:210px;margin-top:32px;padding:32px 0;display:block}
 #main-about .network-copy{position:relative;inset:auto;padding:0;width:100%}
 #main-about .network-heading{font-size:20px;flex-wrap:wrap;gap:7px}
 #main-about .network-heading:before,#main-about .network-heading:after{width:15px;margin:0 4px}
 #main-about .network-names{position:static;height:auto;display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;margin-top:22px;font-size:17px}
 #main-about .network-names span{position:static;transform:none}
 #main-about .bridge-field{inset:0;opacity:.45}
 #s6 .people-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:42px;padding-left:0;padding-right:0}
 #s6 .person{min-width:0;width:100%}
 #s6 .person .role,#s6 .person .bio,#s6 .person .expertise{min-height:0;max-width:100%}
}

@media(max-width:700px){.homepage-chrome .header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.homepage-chrome .header nav.open a{display:block;min-height:44px}}
