/* Approved mobile composition, promoted from the 2026-07-13 review pass.
   Desktop composition and authored product-screen coordinates remain untouched. */
.mobile-nav-link,
.mobile-chapter-progress,
.mobile-carousel-cue{display:none}
.mobile-experience>summary{display:none}

@media(max-width:640px){
  html{scroll-padding-top:96px}
  body{overflow-x:clip}
  header.top>.wrap{height:60px!important;min-height:60px!important;padding-left:18px!important;padding-right:18px!important}
  header.top::after,footer::before,.sec::before{left:20px!important;right:20px!important}
  .wrap{padding-left:20px!important;padding-right:20px!important}
  .navtoggle{width:44px!important;height:44px!important}
  .hero .scroll{display:none!important}
  .sec{padding-top:50px!important;padding-bottom:54px!important}
  .shead{gap:12px!important;margin-bottom:28px!important}
  .shead h2,.shead h2.stmt{font-size:clamp(30px,9.2vw,38px)!important;line-height:1.02!important;letter-spacing:-.04em!important}
  .shead .gloss{font-size:14px!important;line-height:1.55!important;padding-left:12px!important}
  .closeh{font-size:clamp(32px,9.5vw,40px)!important;line-height:1.02!important}
  .cta-row{gap:12px!important}
  footer .wrap{padding:20px!important;row-gap:8px!important}
  footer .tblock{margin-top:4px!important}

  /* The desktop product dropdown remains intact; mobile gets direct destinations. */
  .nav>.pdrop,
  .nav>a:not(.mobile-nav-link):not(.cta){display:none!important}
  .nav>.mobile-nav-link{display:flex!important;align-items:center}

  .mobile-carousel-cue{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 3px;color:var(--ink4,#777b84);font:600 8px/1.2 var(--mono,'JetBrains Mono',monospace);letter-spacing:.1em;text-transform:uppercase}
  .mobile-carousel-cue-meta{display:flex;align-items:center;gap:10px;color:var(--clay,#9c4a33);letter-spacing:.08em;white-space:nowrap}
  .mobile-carousel-dots{display:flex;align-items:center;gap:5px}
  .mobile-carousel-dots i{display:block;width:4px;height:4px;border-radius:50%;background:var(--strong,#b7bac1);transition:width var(--site-motion-medium) var(--site-ease),background var(--site-motion-medium) var(--site-ease)}
  .mobile-carousel-dots i.on{width:13px;border-radius:5px;background:var(--clay,#9c4a33)}
  .mobile-carousel-swipe{display:inline-flex;align-items:center;gap:5px}
  .mobile-carousel{position:relative;display:grid!important;grid-template-columns:none!important;grid-auto-flow:column!important;grid-auto-columns:min(82vw,310px)!important;gap:12px!important;align-items:stretch!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory!important;overscroll-behavior-inline:contain;padding:8px 30px 16px 8px!important;margin:0 -20px 0 -8px!important;scrollbar-width:none;-ms-overflow-style:none}
  .mobile-carousel::-webkit-scrollbar{display:none;width:0;height:0}
  .mobile-carousel>*{scroll-snap-align:start;min-width:0}

  .mobile-chapter-progress{position:sticky;z-index:23;top:60px;width:100%;height:30px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;background:rgba(250,250,251,.97);border-bottom:1px solid var(--border,#d9dbe0);box-shadow:0 7px 18px -16px rgba(20,22,28,.5);transition:top var(--site-motion-slow) var(--site-ease),opacity var(--site-motion-medium) var(--site-ease);pointer-events:none}
  header.top.nav-up+.mobile-chapter-progress{top:0}
  body.nav-open .mobile-chapter-progress{opacity:0}
  .mobile-chapter-progress span{font:600 8px var(--mono,'JetBrains Mono',monospace);letter-spacing:.1em;text-transform:uppercase;color:var(--ink3,#676b74)}
  .mobile-chapter-progress b{font:600 8px var(--mono,'JetBrains Mono',monospace);letter-spacing:.07em;color:var(--clay,#9c4a33)}
  .mobile-chapter-track{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:rgba(156,74,51,.12)}
  .mobile-chapter-fill{display:block!important;width:100%;height:100%;background:var(--clay,#9c4a33);transform:scaleX(0);transform-origin:left center}

  /* Home */
  body[data-mobile-page="home"] #overview.hero{min-height:0!important;padding:42px 0 56px!important}
  body[data-mobile-page="home"] #overview h1{font-size:clamp(40px,11vw,48px)!important;line-height:.99!important}
  body[data-mobile-page="home"] #overview .sub{font-size:17px!important;line-height:1.5!important;margin-top:24px!important}
  body[data-mobile-page="home"] #overview .meta{margin-top:22px!important}
  body[data-mobile-page="home"] #overview .cta-row{margin-top:24px!important}
  body[data-mobile-page="home"] #products .twop{gap:14px!important}
  body[data-mobile-page="home"] #products .pcd .ptab{height:28px!important}
  body[data-mobile-page="home"] #products .pcd .pv{height:160px!important}
  body[data-mobile-page="home"] #products .pcd .pcb{padding:16px 16px 15px!important}
  body[data-mobile-page="home"] #demo .dstage{margin-top:4px!important}
  body[data-mobile-page="home"] #demo .dvpt{height:384px!important;transition:height var(--site-motion-medium) var(--site-ease)}
  body[data-mobile-page="home"].mobile-demo-meetings #demo .dvpt{height:420px!important}
  body[data-mobile-page="home"].mobile-demo-rfi #demo .dvpt{height:350px!important}
  body[data-mobile-page="home"] #loop .loopclose{margin-top:18px!important}
  body[data-mobile-page="home"] #outcomes .mobile-carousel{grid-auto-columns:min(78vw,294px)!important;padding-bottom:8px!important}
  body[data-mobile-page="home"] #outcomes .ocard{height:auto!important;box-shadow:0 1px 2px rgba(24,24,27,.06)!important}
  body[data-mobile-page="home"] #trust .tgrid{margin-top:2px!important;gap:7px!important}
  body[data-mobile-page="home"] #trust .tcard{padding:12px 9px 4px!important}
  body[data-mobile-page="home"] #trust .tkl{font-size:10.25px!important;letter-spacing:.55px!important}
  body[data-mobile-page="home"] #trust .titem .tt{gap:5px!important;font-size:13px!important;line-height:1.22!important}
  body[data-mobile-page="home"] #trust .titem .tt svg{width:11px!important;height:11px!important;margin-top:2px!important}
  body[data-mobile-page="home"] #trust .titem .ts{padding-left:0!important}
  body[data-mobile-page="home"] #fit.sec{padding-top:56px!important}

  /* Project Intelligence */
  body[data-mobile-page="pi"] #overview.hero{min-height:0!important;padding:42px 0 54px!important}
  body[data-mobile-page="pi"] #overview .htop h1{font-size:clamp(40px,11vw,49px)!important;line-height:.98!important}
  body[data-mobile-page="pi"] #overview .htop .sub{font-size:16px!important;line-height:1.52!important}
  body[data-mobile-page="pi"] #overview .stage{margin-top:28px!important}
  body[data-mobile-page="pi"] #meetvec .vectrust{margin-top:16px!important}
  body[data-mobile-page="pi"] #bento .mobile-carousel{grid-auto-columns:min(86vw,322px)!important}
  body[data-mobile-page="pi"] #bento .acard{height:auto!important}
  body[data-mobile-page="pi"] #bento .acard .viz{min-height:188px}
  body[data-mobile-page="pi"] #workshops .stage{margin-top:22px!important}
  body[data-mobile-page="pi"] #deliverables .wsjoin{margin-bottom:22px!important}
  body[data-mobile-page="pi"] #capacity .capfig{margin-top:4px!important}
  body[data-mobile-page="pi"] #shift .shiftbody{gap:16px!important}
  body[data-mobile-page="pi"] #fit.sec{padding-top:56px!important}

  /* Firm Intelligence */
  body[data-mobile-page="fi"] #overview.hero{min-height:0!important;padding:42px 0 54px!important}
  body[data-mobile-page="fi"] #overview .htop h1{font-size:clamp(39px,10.8vw,48px)!important;line-height:.99!important}
  body[data-mobile-page="fi"] #overview .htop .sub{font-size:16px!important;line-height:1.52!important}
  body[data-mobile-page="fi"] #overview .stage{margin-top:28px!important}
  body[data-mobile-page="fi"] #findings .qjoin{margin:22px 0!important}
  body[data-mobile-page="fi"] #moat .mobile-carousel{grid-auto-columns:min(88vw,328px)!important;align-items:start!important}
  body[data-mobile-page="fi"] #moat .mobile-carousel .ansjoin{display:none!important}
  body[data-mobile-page="fi"] #moat .moatleft,
  body[data-mobile-page="fi"] #moat .solpanel{height:auto!important}
  body[data-mobile-page="fi"] #intel .mobile-carousel{grid-auto-columns:min(82vw,308px)!important}
  body[data-mobile-page="fi"] #intel .l2card{height:auto!important}
  body[data-mobile-page="fi"] #fit.sec{padding-top:56px!important}

  /* About */
  body[data-mobile-page="about"] #overview.hero{min-height:0!important;padding:42px 0 56px!important}
  body[data-mobile-page="about"] #overview h1{font-size:clamp(39px,10.8vw,47px)!important;line-height:.99!important}
  body[data-mobile-page="about"] #overview .sub{font-size:16px!important;line-height:1.52!important}
  body[data-mobile-page="about"] #belief .belief-lead{margin-bottom:24px!important}
  body[data-mobile-page="about"] #principles .pic-e3{gap:9px!important}
  body[data-mobile-page="about"] #work .section-intro{margin-bottom:24px!important}
  body[data-mobile-page="about"] #founder .founder-grid{gap:16px!important}
  body[data-mobile-page="about"] #founder .portrait-card{height:auto!important}
  body[data-mobile-page="about"] #founder .portrait{height:278px!important;background-position:center 24%!important}
  body[data-mobile-page="about"] #founder .pmeta{padding:14px 16px!important}
  body[data-mobile-page="about"] #founder .founder-copy{height:auto!important}
  body[data-mobile-page="about"] #founder .letter{margin-bottom:0!important}
  .mobile-experience{margin-top:16px;border:1px solid var(--border,#d9dbe0);border-radius:7px;background:var(--panel,#fff);overflow:hidden}
  .mobile-experience>summary{display:block;list-style:none;cursor:pointer;padding:15px 40px 15px 16px;position:relative;font:600 9px/1.4 var(--mono,'JetBrains Mono',monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--clay,#9c4a33)}
  .mobile-experience summary::-webkit-details-marker{display:none}
  .mobile-experience summary::after{content:'+';position:absolute;right:16px;top:50%;transform:translateY(-50%);font:500 18px/1 var(--font,Inter,sans-serif);color:var(--ink3,#676b74)}
  .mobile-experience[open] summary::after{content:'−'}
  .mobile-experience-body{border-top:1px solid var(--border,#d9dbe0);padding:0 15px 8px}
  .mobile-experience .profile-ledger{margin-top:0!important;border:0!important}
  body[data-mobile-page="about"] #fit.sec{padding-top:56px!important}

  /* Research index */
  body[data-mobile-page="research"] .rs{padding-left:20px!important;padding-right:20px!important}
  body[data-mobile-page="research"] .rs-hero{padding-top:38px!important;padding-bottom:22px!important}
  body[data-mobile-page="research"] .rs-hero h1{font-size:34px!important;line-height:1.02!important}
  body[data-mobile-page="research"] .rs-hero .rs-gloss{font-size:15.5px!important;line-height:1.48!important;margin-top:15px!important}
  body[data-mobile-page="research"] .rs-list{padding-top:22px!important;padding-bottom:34px!important}
  body[data-mobile-page="research"] .rs-count{margin-bottom:13px!important}
  body[data-mobile-page="research"] .feat .fcover{height:90px!important;padding:16px!important}
  body[data-mobile-page="research"] .feat .fcover h2{font-size:24px!important;line-height:1.02!important}
  body[data-mobile-page="research"] .feat .fbody{padding:16px!important}
  body[data-mobile-page="research"] .feat .fdek{font-size:15px!important;line-height:1.55!important;margin-bottom:18px!important}
  body[data-mobile-page="research"] .feat .fmeta{gap:12px!important;align-items:center!important}
  body[data-mobile-page="research"] .feat .author{min-width:0}
  body[data-mobile-page="research"] .feat .read{white-space:nowrap}

  /* Research article */
  body[data-mobile-page="article"] .sheetwrap.wrap{padding-left:0!important;padding-right:0!important}
  body[data-mobile-page="article"] .crumb{padding:13px 20px!important;margin:0!important}
  body[data-mobile-page="article"] .sheet{padding:12px 20px 34px!important;border-left:0!important;border-right:0!important;box-shadow:none!important}
  body[data-mobile-page="article"] .cover{margin:-12px -20px 0!important;padding:25px 20px 24px!important;min-height:172px!important}
  body[data-mobile-page="article"] .cover .ccopy{max-width:none!important}
  body[data-mobile-page="article"] .cover h1{font-size:31px!important;line-height:1.01!important}
  body[data-mobile-page="article"] .art{padding-left:0!important;padding-right:0!important}
  body[data-mobile-page="article"] .art .body>h2{scroll-margin-top:96px}
  body[data-mobile-page="article"] .exhibit{margin-top:30px!important;margin-bottom:30px!important}
  body[data-mobile-page="article"] .exhibit.xwide,
  body[data-mobile-page="article"] .wsfig{margin-left:-20px!important;margin-right:-20px!important;border-left:0!important;border-right:0!important;border-radius:0!important}
  body[data-mobile-page="article"] .exhibit .xtitle{padding-left:16px!important;padding-right:16px!important}
  body[data-mobile-page="article"] .exhibit:not(.xwide){margin-left:-8px!important;margin-right:-8px!important}
  body[data-mobile-page="article"] #s-founder{margin-top:50px!important}
}

@media(max-width:350px){
  body[data-mobile-page="home"] #demo .dvpt{height:360px!important}
  body[data-mobile-page="home"].mobile-demo-meetings #demo .dvpt{height:402px!important}
  body[data-mobile-page="home"].mobile-demo-rfi #demo .dvpt{height:332px!important}
  body[data-mobile-page="home"] #trust .tcard{padding-left:8px!important;padding-right:8px!important}
  body[data-mobile-page="home"] #trust .titem .tt{font-size:12.5px!important;gap:4px!important}
}

@media(prefers-reduced-motion:reduce){
  .mobile-carousel-dots i,
  .mobile-chapter-progress,
  body[data-mobile-page="home"] #demo .dvpt{transition:none!important}
}
