/* Phone layout of the existing site. Desktop rules and all page content stay intact. */
@media(max-width:680px){
 .site-header{padding:12px 20px 10px;gap:8px 12px;min-height:0}
 .site-header .brand{gap:4px;min-height:44px;justify-content:center}
 .brand-tagline{font-size:10px;line-height:1.4}
 /* Whole words, whole items: the menu never breaks "Business Agents" over two lines. Where the row is too narrow, the Download button takes the next row, at the right. */
 .site-nav{font-size:12px;padding-top:6px;gap:6px 8px;flex-wrap:wrap}
 .site-nav a{white-space:nowrap}
 .site-nav .button{padding:10px 12px;margin-left:auto}
 .site-theme-toggle{min-width:68px}
 .wrap{width:calc(100% - 40px)}
 .scene{width:calc(100% - 40px)}
 .scene h2{font-size:30px;line-height:1.12}.scene-lead{font-size:17px;line-height:1.55}
 /* The hero: the two lines, then the window. */
 .scene-hero{padding-top:32px}.hero-head h1{font-size:38px;line-height:1.06}.hero-lead{font-size:20px;line-height:1.4;margin-top:14px}.hero-app{margin-top:28px}
 .hero-side{margin-top:22px;font-size:18px}.hero-side .hero-goal{margin-top:10px;font-size:20px;line-height:1.4}
 .transport{min-height:60px;padding:8px 4px;gap:14px}.play{min-height:44px}
 .page-ending .site-footer,.site-footer{padding:24px 20px 28px}
 .foot-signoff{padding:16px 4px 38px}.foot-signoff p{font-size:40px;line-height:1.08}
 .foot-signoff .button{margin-top:24px}
 .foot-scene-static{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;max-width:none;margin:12px auto 0;align-items:end}
 .foot-scene-static .foot-mail{grid-column:1/-1;grid-row:1;justify-self:start;align-self:start;font-size:28px;margin:0 0 26px;min-height:44px;display:flex;align-items:center}
 .foot-city-drawing{min-width:0;align-self:end}
 .foot-city-drawing:first-child{grid-column:1;grid-row:2}
 .foot-city-drawing:last-child{grid-column:2;grid-row:2}
 .foot-city-drawing>svg{width:100%;height:auto;aspect-ratio:470/242;display:block}
 .foot-city-drawing figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 5px;margin-top:6px;font-size:11px;line-height:1.6;text-align:left;padding-right:12px}
 .foot-city-drawing:last-child figcaption{padding-right:0;padding-left:12px}
 .foot-country{display:none}.foot-city{font-size:12px}.foot-time{font-size:11px;margin-left:0;color:var(--at-text-muted)}
 .foot-scene-static .foot-line{stroke-width:1.65}.foot-scene-static .foot-part{stroke-width:.8}
 .foot-base{display:flex;flex-direction:column;gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid var(--at-line)}
 .foot-legal{font-size:12px;line-height:1.75;max-width:100%;overflow-wrap:anywhere}
 .foot-role{position:static;margin:0 0 5px;font-size:11px}
 .foot-base .foot-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;width:100%;font-size:12px;border-top:1px solid var(--at-line);padding-top:12px}
 .foot-links a,.foot-cookie{min-height:44px;display:flex;align-items:center}
 .site-contact{max-width:100%;width:100%;margin-left:auto;margin-right:auto}
 .contact-form{min-width:0}.contact-fields input,.contact-fields textarea{font-size:16px}
 .contact-policy-row{align-items:flex-start}.contact-policy label{flex:1;min-width:0}
 .site-contact header h2{font-size:32px;line-height:1.15}
 .dl{padding:36px 0 64px}.dl h1{font-size:38px}.dl-lead{font-size:18px}
 .ses-body{padding:16px 14px 8px;font-size:13px;min-height:0}.ses-q{grid-template-columns:minmax(0,1fr);gap:2px}
 .ses-q input,.ses-q textarea{font-size:16px}
 .privacy-page,.terms-page{padding-top:36px;padding-bottom:56px}
 .privacy-page h1,.terms-page h1{font-size:40px}
 .solutions-page{padding-top:36px;padding-bottom:56px}.solutions-page h1{font-size:40px;margin-bottom:20px}.solutions-lead{font-size:24px;line-height:1.5}
 .privacy-page a,.terms-page a{overflow-wrap:anywhere}
}
@media(max-width:350px){
 .site-header{padding-left:16px;padding-right:16px}.site-nav{font-size:12px;gap:8px}
 .brand-tagline{font-size:9px}.site-header .brand img{height:29px}
 .wrap{width:calc(100% - 32px)}.scene{width:calc(100% - 32px)}.hero-head h1{font-size:34px}
 .foot-signoff p{font-size:36px}.foot-scene-static .foot-mail{font-size:26px}
 .site-footer,.page-ending .site-footer{padding-left:16px;padding-right:16px}
 .foot-city{font-size:11px}.foot-city-drawing figcaption{padding-right:6px}.foot-city-drawing:last-child figcaption{padding-left:6px}
}

@media(max-width:680px){.talks{padding:40px 0 64px}.talks h1{font-size:42px;margin-bottom:22px}.talks-lede{font-size:18px;line-height:1.6}.talk-list{margin-top:40px}.talk{grid-template-columns:minmax(0,1fr);gap:16px;padding:28px 0 32px}.talk-when{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.talk-when time{font-size:18px}.talk h2{font-size:24px;line-height:1.25}.talk-where{font-size:15px}.talk-summary{font-size:17px;line-height:1.7}.talk-actions{gap:14px 20px}.talk-actions .button{width:100%}.talk-event{min-height:44px;display:inline-flex;align-items:center}}
@media(max-width:680px){.terminology{padding:40px 0 64px}.terminology h1{font-size:42px;margin-bottom:22px}.terms-lede{font-size:18px;line-height:1.6}.terms{margin-top:40px}.term{grid-template-columns:minmax(0,1fr);gap:12px;padding:24px 0}.term dt{font-size:20px}.term dd{font-size:17px;line-height:1.7;overflow-wrap:anywhere}}

/* Equal reading gutters around enquiry forms, including AI Native's nested form. */
@media(max-width:820px){
 .ai-story .site-contact.ai-contact,.system-story .site-contact.story-contact{width:100%;max-width:100%;margin-left:auto;margin-right:auto}
 .site-contact,.contact-form,.contact-fields{min-width:0}
 .contact-fields>div{min-width:0}
}
