/* Responsive layout corrections. Approved wide desktop styles remain untouched. */
/* The interview overlay lives outside .site, so it needs its own responsive scope. */
@media(max-width:900px){
 #interviewModal{padding:16px;z-index:10000}
 #interviewModal .interview-dialog{width:100%;max-width:680px;min-width:0;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
 #interviewModal .interview-head{padding:20px;gap:16px}
 #interviewModal .interview-head>div{min-width:0}
 #interviewModal .interview-head h3{font-size:26px;line-height:1.2;overflow-wrap:break-word}
 #interviewModal .modal-close{flex:0 0 44px;width:44px;height:44px}
 #interviewModal .interview-list{padding:0 20px 20px}
 #interviewModal .interview-item{grid-template-columns:minmax(0,1fr);gap:12px;padding:24px 0}
 #interviewModal .interview-item>*{min-width:0;max-width:100%}
 #interviewModal .interview-item .meta{font-size:12px;line-height:1.5}
 #interviewModal .interview-item h4{font-size:19px;line-height:1.4;word-break:normal;overflow-wrap:anywhere}
 #interviewModal .interview-item p{font-size:16px;line-height:1.55;overflow-wrap:anywhere}
 #interviewModal .interview-item a{justify-self:start;display:inline-flex;align-items:center;min-height:44px;font-size:14px;white-space:normal}
}
@media(max-width:1200px){
 .site .control-row{flex-wrap:wrap;overflow:visible;gap:8px}
 .site .filter-btn{flex:0 0 auto;min-height:44px;max-width:100%;white-space:normal}
 .site .search{min-width:180px;flex:1 1 220px}
 .site .case-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
 .site .hero-copy{width:100%;max-width:100%;min-width:0}
 .site .hero h1{font-size:clamp(42px,6.1vw,74px);overflow-wrap:break-word}
 .site :is(.section,.partners,.closing,.cta,.final){padding-left:40px;padding-right:40px}
 .site :is(.section,.partners,.closing,.cta,.final) h2{font-size:clamp(36px,5.2vw,63px);line-height:1.1;overflow-wrap:break-word}
 .site :is(.algorithm-grid,.croflow){grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .site :is(.org-grid,.partner-areas){grid-template-columns:repeat(2,minmax(0,1fr))}
 .site .publication-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
 .site :is(.pub-field,.pub-card>div,.leader-card>div,.org-card){min-width:0}
 .site :is(.project-head,.project-evidence,.project-architecture){grid-template-columns:1fr;gap:28px}
 .site :is(.method-row,.process-step,.algorithm-map-row,.architecture-layer){grid-template-columns:60px minmax(0,1fr)!important}
 .site :is(.method-row,.process-step,.algorithm-map-row,.architecture-layer)>*{grid-column:auto!important;min-width:0}
 .site :is(.method-row,.process-step,.algorithm-map-row,.architecture-layer)>:nth-child(n+3){grid-column:2!important}
 .site .method-head{display:none}
 .site :is(.method-row,.process-step,.algorithm-map-row,.architecture-layer)>p{border-top:1px solid var(--line);margin:0}
}
@media(max-width:1000px){
 .site :is(.rpanel,.ritems,.decision,.ditems,.module-application){grid-template-columns:minmax(0,1fr)!important}
 .site .applied-module h3{overflow-wrap:break-word}
 .site .mini-flow{grid-template-columns:minmax(0,1fr);gap:8px}
 .site .mini-flow>.arrow{transform:rotate(90deg);min-height:28px;text-align:center}
 .site .limit-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px}
 .site .limit{grid-template-columns:40px minmax(0,1fr);min-height:0!important}
 .site .limit>div{min-width:0}
 .site .scope{grid-template-columns:minmax(0,1fr)!important;flex-wrap:wrap;gap:12px}
 .site .scope>span{min-width:0;white-space:normal}
}
@media(min-width:721px) and (max-width:1000px){
 .site :is(.why-grid,.tech-pillars,.rd-grid,.rnd-themes,.time-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
 .site .publication-columns{grid-template-columns:1fr}
 .site :is(.two-way,.origin-story,.leadership-grid,.prototype){grid-template-columns:1fr}
 .site .institution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .site .final-grid{grid-template-columns:1fr;gap:40px}
 .site .news-track>.news-card{flex-basis:calc((100% - 18px)/2)}
 .site .news-card h3{font-size:24px}
}
@media(max-width:720px){
 .site :is(.section,.partners,.closing,.cta,.final){padding:64px 24px!important}
 .site .hero{height:auto!important;min-height:560px!important;padding:64px 24px 48px!important}
 .site .contact-hero{padding:0!important}
 .site .contact-hero>.hero-copy{padding:64px 24px 40px}
 .site .hero h1{font-size:clamp(36px,9.8vw,52px)!important;line-height:1.1!important;letter-spacing:-.04em;max-width:100%!important;width:auto;overflow-wrap:anywhere}
 .site .hero-copy{width:100%!important;max-width:100%!important;margin-left:0;margin-right:0;min-width:0}
 .site :is(.section,.partners,.closing,.cta,.final) h2{font-size:clamp(30px,8vw,42px)!important;line-height:1.15!important;letter-spacing:-.035em;overflow-wrap:anywhere}
 .site h3{font-size:24px!important;line-height:1.25!important;overflow-wrap:anywhere;height:auto!important;min-height:0!important}
 .site :is(p,li,dd){overflow-wrap:anywhere}
 .site :is(.intro,.section-intro,.final-intro,.hero-copy),.site .hero-copy>p:last-of-type{font-size:16px!important;line-height:1.6!important}
 .site :is(.kicker,.label,.section-label){font-size:12px;line-height:1.5;letter-spacing:.1em}
 .site .hero-note{position:relative;right:auto;bottom:auto;width:100%;margin-top:30px}
 .site .hero-index{position:relative!important;inset:auto!important;margin-top:32px!important;width:100%!important;grid-template-columns:1fr!important}
 .site .hero-index>div{width:100%;min-height:0;padding:16px 0}
 .site :is(.subnav,.company-subnav){padding-left:24px!important;padding-right:24px!important}
 .site :is(.why-grid,.tech-pillars,.business-grid,.rd-grid,.final-grid,.asset-card,.who-grid,.origin-story,.difference-grid,.metric-grid,.arch-solutions,.publication-columns,.rnd-themes,.leadership-strip,.leadership-grid,.org-grid,.network-group,.institution-grid,.partner-areas,.roles,.two-way,.limit-grid,.time-grid,.application-grid,.algorithm-grid,.grid2,.map-head,.crossbar,.mapping,.flow,.portfolio4,.architecture,.prototype,.qa-grid,.ai-band,.viz-main,.outs,.brief,.policy,.jhead,.lifecycle,.bottles,.bottlenecks,.solution-cards,.crossnote,.dockflow,.baseflow,.rpanel,.ritems,.sysmap,.twout,.croflow,.decision,.ditems,.gbrief,.project-head,.project-meta,.project-architecture,.module-application,.shared-goal,.project-evidence,.limits-grid,.value-proof,.value-levers,.method-rail,.market-head,.market-stats,.market-cases,.case-facts,.case-tracks,.case-flow,.case-bottom,.governance-band){grid-template-columns:minmax(0,1fr)!important;gap:0}
 .site :is(.why-grid,.tech-pillars,.business-grid,.rd-grid,.difference-grid,.metric-grid,.leadership-grid,.algorithm-grid,.solution-cards,.sysmap,.case-tracks){grid-template-rows:auto!important;grid-auto-rows:auto}
 .site :is(.why-grid,.tech-pillars,.business-grid,.rd-grid,.difference-grid,.metric-grid,.leadership-grid,.algorithm-grid,.solution-cards,.sysmap,.case-tracks)>*{grid-column:auto!important;grid-row:auto!important;grid-template-rows:auto!important;min-width:0}
 .site :is(.business-card>ul,.sysmap .zlist){grid-template-rows:auto!important;grid-row:auto!important}
 .site :is(.flow,.croflow,.lifecycle,.stages,.bottles,.outs,.ritems,.ditems,.case-flow)>*{min-width:0;min-height:0!important;height:auto!important}
 .site :is(.grid2,.why-grid,.rd-grid,.roles,.time-grid,.application-grid,.algorithm-grid,.org-grid,.solution-cards,.sysmap,.croflow,.twout,.ritems,.ditems,.case-flow)>*+*{border-top:1px solid var(--line);border-left:0}
 .site :is(.grid2,.why-grid,.rd-grid,.roles,.time-grid,.application-grid,.algorithm-grid,.org-grid,.solution-cards,.sysmap,.croflow,.twout)>*{padding:24px;min-width:0;min-height:0!important}
 .site :is(.business-card,.asset-card,.difference-card,.metric,.network-group,.focus-note,.project-meta>div,.case-track,.case-bottom>div){padding:24px;min-width:0;min-height:0}
 .site :is(.final-grid,.origin-story,.prototype,.project-head,.project-evidence,.project-architecture){row-gap:24px}
 .site :is(.network-group,.shared-goal,.policy,.crossnote,.crossbar,.brief,.jhead,.decision,.rpanel){row-gap:16px}
 .site :is(.portfolio-head,.evidence-head,.rnd-head,.arch-core,.bridge,.focus-note,.loop,.news-head){flex-direction:column;align-items:flex-start;gap:20px}
 .site .portfolio-head span{text-align:left}
 .site .news-track>.news-card{flex-basis:100%;min-width:0}
 .site .news-card .news-copy{padding:24px}
 .site .news-card h3{font-size:24px!important}
 .site .news-head h2{width:100%}
 .site .news-viewport{margin-top:32px}
 .site .actions{flex-wrap:wrap;gap:12px}
 .site :is(.btn,.button){max-width:100%;white-space:normal;text-align:center;min-height:44px}
 .site .pipeline-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;font-size:15px}
 .site .pipeline-row>*{min-width:0;overflow-wrap:anywhere}
 .site .leader-card{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px}
 .site .leader-card img{width:88px;height:132px}
 .site .pub-card{grid-template-columns:78px minmax(0,1fr)}
 .site .pub-card img{width:78px;height:104px}
 .site .interview-item,.site .event{grid-template-columns:1fr;gap:12px}
 .site .network-group{padding:24px 0}
 .site .institution-grid{margin-top:18px;gap:10px}
 .site .institution{min-width:0}
 .site .company-number-label{align-items:flex-start;gap:14px}
 .site .company-number-label>span:last-child{min-width:0;word-break:normal;overflow-wrap:normal;letter-spacing:.06em}
 .site .org-card h3{margin-top:32px}
 .site .two-way>*{min-width:0}
 .site .two-way .connector{min-height:64px}
 .site .cap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .site .layer,.site .map-row{grid-template-columns:1fr}
 .site .map-head{grid-template-columns:1fr}
 .site .method-row,.site .process-step,.site .algorithm-map-row,.site .architecture-layer{grid-template-columns:44px minmax(0,1fr)!important}
 .site :is(.method-row,.process-step,.algorithm-map-row,.architecture-layer)>*{padding:16px 12px!important}
 .site :is(.method-row,.process-step,.algorithm-map-row,.architecture-layer)>:nth-child(n+3){grid-column:1/-1!important}
 .site :is(.dockflow,.baseflow)>.arrow{min-height:44px;transform:rotate(90deg)}
 .site .sysmap .zone::after{display:none!important}
 .site .stages{grid-template-columns:repeat(2,minmax(0,1fr))}
 .site .mhead{grid-template-columns:1fr!important;gap:20px!important}
 .site .mhead .mno{width:120px!important;height:104px!important;padding:12px;font-size:28px}
 .site .mhead .mno strong{font-size:36px;line-height:1;white-space:nowrap}
 .site .mhead .mno span{font-size:10px;line-height:1.4}
 .site .modcap{flex-wrap:wrap;gap:12px}
 .site .modcap>span:last-child{white-space:normal;overflow-wrap:break-word;min-width:0;max-width:100%}
 .site .loop>*{white-space:normal;overflow-wrap:anywhere}
 .site .control-row{flex-wrap:wrap;overflow:visible;gap:8px}
 .site .filter-label{flex:0 0 100%;width:100%;margin-bottom:4px}
 .site .filter-btn{flex:0 0 auto;min-height:44px}
 .site .search{flex:1 1 100%;width:100%;min-width:0!important}
 .site .project-meta>div{border-bottom:1px solid #ffffff40}
 .site .project-copy{min-width:0}
 .site .module-application>article{min-height:0}
 .site .frame{min-width:0}
 .site .prototype>.frame{width:100%!important}
 .site .case-flow>div{border-left:0;border-right:0;padding:20px}
 .site .case-flow p{margin-top:16px}
 .site .case-facts>div{border-bottom:1px solid #ffffff40}
 .site .role-row,.site .metric-row{grid-template-columns:1fr;gap:8px}
 .site .product-card{grid-row:auto!important;grid-template-rows:auto!important}
 .site .product-grid{grid-template-rows:auto!important}
 .site .product-card h3{font-size:32px!important}
 .site .algo-detail{min-height:0!important}
 .site .algo-detail h3{font-size:24px!important}
 .site .algo-module{overflow-wrap:anywhere}
 .site .marquee-wrap:before,.site .marquee-wrap:after{width:24px}
 .site .partner-chip{width:220px}
 .site .qic-scroll-prepared{--qic-entry-distance:24px!important}
 .site .prototype{translate:none!important}
 .qic-global-links a{min-height:44px;display:inline-flex;align-items:center}
 .qic-language button{min-height:38px}
}
