/* aip-mobile.css - generated by genmob.py, phone only */
@media(max-width:900px){
.ev-date{width:56px;min-width:56px;flex:0 0 56px;padding:8px 4px;align-items:center;justify-content:center}
.ev-d{font-size:19px;line-height:1}
.ev-m{font-size:10px;letter-spacing:.08em}

.ev-row{grid-template-columns:64px 1fr}
.ev-d{font-size:20px;line-height:1}
.ev-date,.ev-dbox{width:64px;min-width:0;padding:10px 6px}

.pub-head{display:block}
.pub-head>*{max-width:100%}

.m-panel,.m-sub,.m-sub-cta{max-width:86vw}
.m-panel{contain:layout paint}
body>*{max-width:100vw}

*,*::before,*::after{box-sizing:border-box}

html,body{overflow-x:hidden;max-width:100%}
img,svg,video,iframe,image-slot{max-width:100%;height:auto}
.wrap,.hero-inner{padding-left:20px;padding-right:20px}
/* collapse every multi-column grid */
.archive-grid{grid-template-columns:1fr;gap:24px}
/* NOT collapsed: seven columns is the meaning of a calendar, not a
   desktop convenience. genmob.py swept these in with the layout grids. */
.cal-grid[data-show="2"]{grid-template-columns:1fr;gap:1px}
.cal-grid[data-show="3"]{grid-template-columns:1fr;gap:1px}
.cform{grid-template-columns:1fr;gap:24px}
.contact-cols{grid-template-columns:1fr;gap:24px}
.contact-grid{grid-template-columns:1fr;gap:24px}
.dir-stats{grid-template-columns:1fr;gap:1px}
/* .ev-row single-column removed: it contradicted the 64px 1fr rule
   above in the same 900px block, collapsing every row. */
.feat-grid{grid-template-columns:1fr;gap:1px}
.ff-row{grid-template-columns:1fr;gap:24px}
.foot-grid{grid-template-columns:1fr;gap:24px}
.home-firms{grid-template-columns:1fr;gap:1px}
.hs-grid{grid-template-columns:1fr;gap:1px}
.intro-01{grid-template-columns:1fr;gap:24px}
.intro-lead{grid-template-columns:1fr;gap:24px}
.jur-grid{grid-template-columns:1fr;gap:1px}
.latest-grid{grid-template-columns:1fr;gap:24px}
.map-body{grid-template-columns:1fr;gap:24px}
.msg-form{grid-template-columns:1fr;gap:24px}
.past-grid{grid-template-columns:repeat(2,1fr);gap:16px}
.pillars{grid-template-columns:1fr;gap:1px}
.pub-body{grid-template-columns:1fr;gap:24px}
.puzzle-grid{grid-template-columns:1fr;gap:24px}
.pw-grid{grid-template-columns:1fr;gap:24px}
.rgrid{grid-template-columns:1fr;gap:1px}
.signup-form{grid-template-columns:1fr;gap:24px}
.signup-grid{grid-template-columns:1fr;gap:24px}
.streams{grid-template-columns:1fr;gap:1px}
.svc-grid{grid-template-columns:1fr;gap:24px}
.two-col{grid-template-columns:1fr;gap:24px}
/* type scale */
.hero-title,.dhero-title{font-size:38px;line-height:1.05}
.hero-sub{font-size:16px;line-height:1.55}
.mod-title,.p-title,.intro-01 .title,.intro-lead .title,.puzzle-copy .lead,
.intro-02 .lead,.searchband h1{font-size:29px;line-height:1.08}
.evgroup-title,.issue-theme,.contact h2,.signup-title,.results-title,
.axis-title,.csuccess .ct{font-size:24px;line-height:1.12}
.pillar .pt,.stream .pt,.rcard-name,.feat-name{font-size:20px;line-height:1.15}
.hs-v{font-size:32px}
.dir-stat .v{font-size:28px}
.ev-d{font-size:22px}
.pub-quote{font-size:22px;line-height:1.35}
.pub-quote .qm,.pub-pull .qm{font-size:44px}
.callout .co-mail,.ct-mail{font-size:17px;word-break:break-word}
}

/* uniform-heads-2026-08-26 */
@media(max-width:600px){
.hero-title,.dhero-title{font-size:50px;line-height:1.05}
.title,.evgroup-title,.mod-title,.results-title,.signup-title,.contact h2,.axis-title,.issue-theme,.searchband h1{font-size:38px;line-height:1.12}
}
