/* PINpoint mobile-first correction layer — loaded last on every public page. */
@media(max-width:767px){
  :root{--mobile-pad:20px;--mobile-section:64px;--nav-h:66px}

  html,body{width:100%;max-width:100%;overflow-x:clip}
  body{font-size:15px;line-height:1.75}
  main{width:100%;min-width:0}
  img,video,iframe{max-width:100%;height:auto}

  /* Mobile content must never depend on reveal JS to be visible. */
  [data-r]{opacity:1!important;transform:none!important;transition:none!important}

  .site-nav{padding:0 16px!important}
  .nav-left{min-width:0;max-width:calc(100vw - 70px)}
  .nav-brand{font-size:14px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .nav-toggler{width:44px;height:44px;align-items:center;justify-content:center;padding:10px!important}

  /* Inner-page first viewport is compact and content-led. */
  .page-hero{min-height:56svh!important;max-height:none!important;align-items:flex-end!important}
  .page-hero-body{padding:112px var(--mobile-pad) 44px!important}
  .page-h1{font-size:clamp(38px,11.5vw,54px)!important;line-height:1.08!important;letter-spacing:-.05em!important;margin-bottom:18px!important}
  .page-sub{font-size:15px!important;line-height:1.75!important;max-width:none!important}
  .page-eyebrow{margin-bottom:18px!important}

  .sec,.sec-sm,.articles-preview,.testimonial-block{
    padding:var(--mobile-section) var(--mobile-pad)!important;width:100%!important;
  }
  .sec-h2{font-size:clamp(30px,9vw,42px)!important;line-height:1.16!important;margin-bottom:0!important}
  .sec-eyebrow{margin-bottom:16px!important}

  /* Homepage */
  .hero{min-height:auto!important;display:block!important}
  .hero-body{padding:116px var(--mobile-pad) 62px!important;width:100%!important}
  .hero-kicker{margin-bottom:30px!important}
  .hero-h1{font-size:clamp(40px,12vw,58px)!important;line-height:1.08!important;margin-bottom:34px!important}
  .hero-h1-sub{font-size:16px!important;line-height:1.55!important;margin-top:22px!important}
  .hero-bottom{display:block!important}
  .hero-manifesto{font-size:15px!important;line-height:1.8!important;max-width:none!important}
  .hero-fit{gap:6px!important;margin-top:18px!important}.hero-fit span{font-size:9px!important;padding:6px 8px!important}
  .hero-ctas{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-top:28px!important}
  .hero-scroll,.hero-stat-badge,.hero-year,.hero-line{display:none!important}
  .hero-deco{font-size:45vw!important;right:-15vw!important;top:28%!important}
  .marquee-item{padding:0 20px!important}
  .intro{display:block!important;width:100%!important}.intro-left,.intro-right{padding:58px var(--mobile-pad)!important}
  .intro-statement{font-size:32px!important}.intro-stat{align-items:flex-start!important;gap:14px!important}.is-l{font-size:12px!important}
  .sm-header,.cs-header{padding:60px var(--mobile-pad) 30px!important;display:block!important}
  .sm-header-right{margin-top:20px!important;max-width:none!important}
  .services-manifold{width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;overflow:hidden!important}
  .sm-grid{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
  .sm-card{width:100%!important;padding:38px var(--mobile-pad)!important;margin:0!important;border-radius:0!important;border-left:0!important;border-right:0!important;border-bottom:0!important}
  .sm-card:last-child{border-bottom:1px solid var(--premium-line)!important}
  .sm-card-num{font-size:48px!important;margin-bottom:16px!important}.sm-card-desc{height:auto!important;margin-bottom:22px!important}
  .work-proof{grid-template-columns:1fr 1fr!important}.wp-cell{padding:34px 12px!important}.wp-n{font-size:36px!important}.wp-l{font-size:9px!important;line-height:1.5!important}
  .cs-grid{display:grid!important;grid-template-columns:1fr!important;margin:0 var(--mobile-pad) 54px!important;gap:10px!important}
  .cases-showcase .cs-grid{gap:14px!important;margin-left:var(--mobile-pad)!important;margin-right:var(--mobile-pad)!important}.cs-card,.cs-card.featured{aspect-ratio:5/4!important;width:100%!important;margin:0!important;box-shadow:0 14px 34px rgba(23,20,17,.18)!important}.cases-body{padding:24px 22px!important}.cs-name{font-size:25px!important}.cs-stat,.cs-more{opacity:1!important;transform:none!important}.cs-more{margin-top:12px!important;padding-top:12px!important}
  .tb-grid{grid-template-columns:1fr!important;gap:10px!important}.tb-item,.tb-item-glod{padding:24px!important}.tb-item-q{font-size:15px!important}
  .ap-header{display:block!important}.ap-header .btn-outline{margin-top:24px!important}
  .contact-strip{grid-template-columns:1fr!important}.contact-strip-left,.contact-strip-right{padding:58px var(--mobile-pad)!important}
  .contact-strip-left{min-height:auto!important}.cs-h2{font-size:38px!important}.cs-body{font-size:15px!important}
  .conversion-grid,.card-grid{grid-template-columns:1fr!important}.conversion-grid .card-item{min-height:0!important}
  .aeo-grid{grid-template-columns:1fr!important;gap:8px!important}.aeo-grid details{padding:0 18px!important}.aeo-grid summary{padding:18px 34px 18px 0!important}

  /* About */
  .story-grid{grid-template-columns:1fr!important;gap:30px!important}.story-img img{height:auto!important;aspect-ratio:4/3;object-fit:cover}
  .vals{grid-template-columns:1fr!important;gap:0!important}
  .val-card{border-radius:0!important;box-shadow:none!important;margin:0!important;padding:34px 26px!important}
  .val-card + .val-card{border-top:0!important}
  .nums{grid-template-columns:1fr 1fr!important}.num-cell{padding:28px 12px!important}
  .timeline{padding-left:0!important}.tl-item{grid-template-columns:58px minmax(0,1fr)!important;gap:14px!important}

  /* Services */
  .audience-grid{grid-template-columns:1fr!important;gap:0!important}.aud-card{padding:26px!important;border-radius:0!important;box-shadow:none!important}.aud-card + .aud-card{border-top:1px solid var(--line)!important}
  .svc-mega,.svc-mega.alt{grid-template-columns:1fr!important;direction:ltr!important;margin-bottom:12px!important}
  .svc-mega-img{min-height:220px!important}.svc-mega-body{padding:32px 24px!important}.svc-mega-title{font-size:27px!important}
  .flow-step{grid-template-columns:42px minmax(0,1fr)!important;gap:14px!important;padding:28px 20px!important;background:rgba(255,255,255,.08)!important}.flow-step-icon{display:none!important}.flow-step-title{color:#fff!important}.flow-step-desc{color:rgba(255,255,255,.84)!important}.flow-step-n{color:var(--gold2)!important}.flow-step-num{color:rgba(var(--gold2-rgb),.48)!important}
  .client-row{grid-template-columns:1fr!important}.client-photo{min-height:210px!important}.client-body{padding:26px 22px!important}
  .contact-info{grid-template-columns:1fr!important}.ci-main,.ci-links{padding:28px 22px!important}

  /* Short-video page */
  .s01{min-height:auto!important}.s01-body{padding:120px var(--mobile-pad) 60px!important}.s01-h1{font-size:clamp(40px,12vw,58px)!important}
  .s02-inner,.s06-inner-full,.inner-wrap{padding-left:var(--mobile-pad)!important;padding-right:var(--mobile-pad)!important}
  .s03-inner{grid-template-columns:1fr 1fr!important}.s03-cell{padding:32px 12px!important}
  .s04-slide{flex:0 0 calc(88vw - 20px)!important}.s04-slide-body{padding:24px 20px!important}
  .s06-steps-grid,.plans-row{grid-template-columns:1fr!important}.plan{margin-bottom:10px!important}
  .s07-body{padding-left:var(--mobile-pad)!important;padding-right:var(--mobile-pad)!important}
  .case-panel{width:100vw!important}.cp-photo{height:260px!important}.cp-body{padding:24px var(--mobile-pad) 100px!important}

  /* Cases */
  .filter-bar,.cat-tabs{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none;padding-bottom:8px!important;margin-right:calc(var(--mobile-pad) * -1)!important}
  .filter-bar::-webkit-scrollbar,.cat-tabs::-webkit-scrollbar{display:none}.f-tab,.cat-tab{flex:0 0 auto!important;min-height:42px!important}
  .case-grid{grid-template-columns:1fr!important;gap:14px!important}.case-card-item{width:100%!important;aspect-ratio:5/4!important;box-shadow:0 14px 34px rgba(23,20,17,.18)!important}.ci-thumb{position:absolute!important;inset:0!important;aspect-ratio:auto!important}.ci-body{padding:24px 22px!important}.ci-name{font-size:25px!important}.ci-btn{margin-top:12px!important;padding-top:12px!important}
  .ci-result,.ci-btn{opacity:1!important;transform:none!important}.detail-panel{width:100vw!important}
  .dp-header,.cp-bar{position:sticky!important;top:0!important;z-index:40!important;min-height:64px!important;padding:10px 14px 10px 18px!important;background:rgba(23,20,17,.98)!important;border-bottom:1px solid rgba(255,255,255,.14)!important;backdrop-filter:blur(14px)!important}
  .dp-eyebrow,.cp-label{color:rgba(255,255,255,.72)!important}
  .dp-close,.cp-close{display:flex!important;position:absolute!important;right:12px!important;top:10px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;z-index:50!important;border-radius:0!important;border:1px solid rgba(255,255,255,.34)!important;background:var(--premium-gold)!important;color:var(--premium-dark)!important;font-size:19px!important;font-weight:500!important;align-items:center!important;justify-content:center!important;opacity:1!important;visibility:visible!important}
  .detail-panel .dp-hero{height:320px!important}.detail-panel .dp-hero img,.case-panel .cp-photo img{object-position:center 20%!important}.detail-panel .dp-hero-label{padding:24px var(--mobile-pad)!important}.detail-panel .dp-body{padding:28px var(--mobile-pad) 110px!important}.detail-panel .dp-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}.detail-panel .dp-stat{padding:18px 8px!important}.detail-panel .dp-stat-n{font-size:22px!important}.detail-panel .dp-stat-l{font-size:9px!important;letter-spacing:.08em!important}
  .dp-body{padding:28px var(--mobile-pad) 100px!important}.dp-stats{grid-template-columns:1fr!important}

  /* Articles and posts */
  .article-list{grid-template-columns:1fr!important;gap:12px!important}.article-cover{aspect-ratio:16/9!important}.article-info{padding:22px!important}.article-title{font-size:20px!important}
  .post-hero{padding:108px var(--mobile-pad) 44px!important}.post-title{font-size:clamp(34px,10vw,48px)!important}.post-deck{font-size:15px!important}
  .post-cover{aspect-ratio:16/10!important}.post-layout{display:block!important}.post-toc{display:none!important}.post-content{font-size:16px!important;line-height:1.9!important;min-width:0!important}.post-content h2{font-size:27px!important;margin-top:42px!important}.related-posts{grid-template-columns:1fr!important}

  /* Consultation */
  .ct-hero{display:flex!important;flex-direction:column!important;min-height:auto!important;padding-top:var(--nav-h)!important}
  .ct-left{height:52svh!important;min-height:360px!important;order:1}.ct-right{order:2;padding:48px var(--mobile-pad) 64px!important}
  .ct-lb{padding:28px var(--mobile-pad)!important}.ct-h1{font-size:43px!important}.ct-sub{font-size:14px!important;margin-bottom:22px!important}
  .fr,.rg{grid-template-columns:1fr!important}.fi,.fs,.ft,.gfi,.gfs{width:100%!important;min-width:0!important}
  .ch-grid,.exp-grid{grid-template-columns:1fr!important}.proof-grid{grid-template-columns:1fr 1fr!important}

  /* Diagnostic self-assessment: always visible and touch-friendly. */
  .guide-wrap{width:100%!important;max-width:none!important;margin:0!important}
  .guide-progress{position:sticky!important;top:74px!important;margin-top:30px!important;padding:14px 16px!important;border-radius:5px!important;gap:10px!important;box-shadow:none!important;z-index:20!important}
  .gp-label{width:100%!important;font-size:12px!important}.gp-bar-wrap{width:100%!important;min-width:0!important;height:6px!important}
  .diag-form:not(.hidden){display:block!important;opacity:1!important;visibility:visible!important;transform:none!important}
  .diag-cat{margin-top:46px!important}.diag-cat-head{align-items:center!important;gap:10px!important;margin-bottom:20px!important}.diag-cat-no{font-size:24px!important}.diag-cat-title{font-size:19px!important;line-height:1.4!important}
  .diag-q{margin-bottom:28px!important}.diag-q-title{font-size:15px!important;line-height:1.65!important}
  .diag-opts{gap:7px!important}.d-opt{width:100%!important}.d-opt-l{width:100%!important;min-height:50px!important;padding:13px 14px!important;border-radius:5px!important;line-height:1.55!important;align-items:flex-start!important}
  .d-opt-l::before{margin-top:2px!important}.diag-priority{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.p-opt,.p-opt-l{width:100%!important}.p-opt-l{text-align:center!important;padding:11px 8px!important;border-radius:5px!important;font-size:12px!important}
  .diag-contact{margin-top:48px!important;padding-top:32px!important}.diag-submit{min-height:52px!important;border-radius:5px!important;padding:14px 12px!important;font-size:12px!important}
  .diag-success{padding:48px 0 80px!important}

  /* Guide/checklist legacy variant */
  .guide-hero{padding:110px var(--mobile-pad) 48px!important}.guide-hero h1{font-size:40px!important}.guide-hero p{font-size:15px!important}
  .checklist{grid-template-columns:1fr!important;margin-top:30px!important}.check{padding:18px!important;border-radius:5px!important}

  /* Footer and bottom conversion bar */
  footer{padding-left:var(--mobile-pad)!important;padding-right:var(--mobile-pad)!important}
  .footer-statement{font-size:19vw!important;padding:38px 0 28px!important}
  .footer-top{padding:44px 0!important;gap:30px!important}
  .footer-brand{font-size:22px!important;line-height:1.35!important;letter-spacing:-.015em!important}
  .footer-brand-sub{font-size:11px!important;line-height:1.7!important;letter-spacing:.08em!important;margin-top:8px!important}
  .footer-links{grid-template-columns:1fr 1fr!important;gap:8px 18px!important;width:100%!important}
  .footer-links a{min-height:44px!important;display:flex!important;align-items:center!important;font-size:14px!important;line-height:1.5!important;letter-spacing:.04em!important;padding:6px 0!important}
  .footer-bottom{padding:22px 0!important;gap:16px!important}.footer-copy{line-height:1.7!important}
  .mobile-consult{left:10px!important;right:10px!important;max-width:calc(100vw - 20px)!important;min-height:58px!important}
}

@media(max-width:370px){
  :root{--mobile-pad:16px}
  .page-h1,.hero-h1{font-size:38px!important}
  .work-proof{grid-template-columns:1fr!important}
  .proof-grid,.diag-priority{grid-template-columns:1fr!important}
  .mobile-consult span{display:none!important}.mobile-consult strong{width:100%;text-align:center;margin-left:0!important}
}
