/* Progressive mobile proof controls. Existing desktop presentation is untouched. */
#case-explorer .proof-mobile-select,
#homepage-industries .proof-mobile-select { display:none; }
#case-explorer .mobile-project-pager,
#case-explorer .viewer-zoom { display:none; }
#case-explorer .viewer-scroll { display:contents; }
#client-reviews .cp-position { display:none; }
@media (max-width:767px), (max-width:1023px) and (max-height:500px) and (pointer:coarse) {
  #client-reviews .cp-controls { gap:8px; }
  #client-reviews .cp-controls button { width:44px; height:44px; }
  #client-reviews .cp-position { display:block; font-size:14px; line-height:1.5; color:#52606e; }
  #client-reviews .cp-heading { display:flex; flex-wrap:wrap; gap:14px; }
  #client-reviews .cp-heading>div:first-child { flex:1 0 100%; }
  #client-reviews .cp-controls { margin-left:auto; }
  #client-reviews .cp-source { scroll-snap-type:x mandatory; scroll-behavior:auto; }
  #client-reviews .cp-source .cp-client { scroll-snap-align:start; }
  #client-reviews blockquote p { font-size:21px; line-height:1.5; }
  #homepage-ai-cta .cta-button { font-size:17px; min-height:54px; padding:13px 16px; gap:12px; white-space:nowrap; color:#fff; }
  #case-explorer .image-viewer { inset:0; width:100%; max-width:none; height:100dvh; max-height:none; margin:0; border-radius:0; padding:12px; padding-bottom:max(12px,env(safe-area-inset-bottom)); overflow:hidden; }
  #case-explorer .image-viewer[open] { display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; gap:10px; }
  #case-explorer .viewer-head { margin:0; gap:12px; align-items:start; }
  #case-explorer .viewer-head h2 { font-size:16px; line-height:1.4; max-height:20dvh; overflow:auto; }
  #case-explorer .close-viewer { flex:none; min-width:70px; min-height:44px; }
  #case-explorer .viewer-zoom { display:block; justify-self:start; min-height:44px; padding:8px 14px; border:1px solid #8c9bad; border-radius:4px; background:#f5f7fa; color:#101d30; font-size:14px; }
  #case-explorer .viewer-scroll { display:block; min-width:0; min-height:0; overflow:auto; overscroll-behavior:contain; background:#101d30; touch-action:pan-x pan-y pinch-zoom; }
  #case-explorer .enlarged-image { width:100%; max-width:none; max-height:none; height:auto; margin:0; transition:none!important; }
  #case-explorer .is-zoomed .enlarged-image { width:200%; }
  #case-explorer .image-caption { margin:0; max-height:20dvh; overflow:auto; font-size:14px; line-height:1.5; }
  #case-explorer .mobile-project-pager { display:flex; justify-content:space-between; margin:18px 0 0; }
  #case-explorer .project h4 { scroll-margin-top:120px; }
  #case-explorer .proof-mobile-select,
  #homepage-industries .proof-mobile-select { display:grid; gap:8px; }
  #case-explorer .proof-mobile-select label,
  #homepage-industries .proof-mobile-select label { display:block; font-size:14px; font-weight:600; line-height:1.4; color:#f5f7fb; }
  #case-explorer .proof-mobile-select select,
  #homepage-industries .proof-mobile-select select { box-sizing:border-box; display:block; width:100%; min-width:0; min-height:52px; border:1px solid #8c9bad; border-radius:4px; padding:12px 10px; background:#fff; color:#101d30; font:inherit; font-size:16px; line-height:1.4; }
  #case-explorer .proof-mobile-select select:focus-visible,
  #homepage-industries .proof-mobile-select select:focus-visible { outline:3px solid #ee4865; outline-offset:3px; }
  #case-explorer.has-mobile-capability-select .category-controls,
  #case-explorer.has-mobile-capability-select .menu-label,
  #homepage-industries.has-mobile-industry-select .industry-nav { display:none; }
  #case-explorer.has-mobile-capability-select .capability-menu { padding:0; background:transparent; box-shadow:none; }
  #case-explorer .explorer-layout { grid-template-columns:minmax(0,1fr); gap:22px; }
  #case-explorer .country-strip { display:block; padding:12px 0; margin-bottom:20px; }
  #case-explorer .country-strip>p { margin:0 0 10px; }
  #case-explorer .country-places { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px 8px; }
  #case-explorer .country-place { flex-direction:column; align-items:flex-start; justify-self:start; gap:4px; font-size:12px; line-height:1.3; }
  #case-explorer .country-place img { height:17px; }
  #homepage-industries .proof-mobile-select { margin-bottom:24px; }
  #homepage-industries.ready .industry-stage { display:block; height:auto; min-height:0; }
  #homepage-industries.ready .industry-feature[hidden] { display:none!important; }
  #homepage-industries .industry-feature { display:block; height:auto; min-height:0; }
  #homepage-industries .industry-copy { height:auto; min-height:0; padding:22px 0 0; }
  #homepage-industries .industry-visual { height:196px; min-height:0; }
}
@media (min-width:768px) and (max-width:1023px) and (max-height:500px) and (pointer:coarse) {
  #softlabs-homepage #case-explorer.explorer { padding-top:32px; padding-bottom:32px; }
  #case-explorer .explorer-layout { gap:16px; }
  #case-explorer .country-places { grid-template-columns:repeat(8,minmax(0,1fr)); }
  #case-explorer .proof-mobile-select,
  #homepage-industries .proof-mobile-select { grid-template-columns:100px minmax(0,1fr); align-items:center; }
}
