/* Mobile density only. Explicit dimensions, never document zoom/scale.
 * Keep all content, viewport-height home scenes and existing scroll transitions.
 * Readable copy >=14px, inputs >=16px and action targets >=44px.
 */
@media (max-width:640px){
  /* Proximity snapping can jump after a short touch/wheel gesture. Keep the
     native inertial scroll; 100svh scenes and scroll-linked fades remain. */
  html.atmp-enabled{scroll-snap-type:none!important}
  html body main h1{font-size:24px!important}
  html body main h2{font-size:21px!important}
  html body main h3{font-size:16px!important}
  html body main .cl-h{font-size:18px!important}
  html body main :is(p,li){font-size:14px}
  html body :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px!important;min-height:44px}
  html body :is(.btn,.h3-cta,.burger,.g5-ask,.g5-copy,.g5-filters button,.fq3-nav button,.fq3-pg button,.sc-act button,.sc-act a,.sc-bar a,.sc-reset){min-height:44px}
  html body main :is(.head,.cl-head){margin-bottom:30px!important}

  /* Home: shrink contents, not the 100svh scene or scroll-transition layer. */
  html body #h3 .in{width:calc(100% - 48px)!important;max-width:960px;box-sizing:border-box}
  html body #h3 h1{font-size:27px!important;margin-top:14px!important}
  html body #h3 h2{font-size:21px!important}
  html body #h3 .h3-gap-t{font-size:clamp(21px,5.85vw,30px)!important}
  html body #h3 #h3-gap-question h2{font-size:24.75px!important}
  html body #h3 .ld{font-size:14px!important;line-height:1.7!important;margin-top:15px!important}
  html body #h3 .lb{font-size:14px!important;padding:8px 14px!important}
  html body #h3 .h3-hero-money{margin-bottom:12px!important}
  html body #h3 .h3-yt-ring{width:99px!important;height:99px!important;border-radius:27px!important;flex-shrink:0}
  html body #h3 .h3-sub-ring{width:66px!important;height:66px!important;border-radius:20px!important;flex-shrink:0}
  html body #h3 .h3-sub-ring.s-ig{margin-right:-10px!important}
  html body #h3 .h3-sub-ring.s-tt{margin-left:-10px!important}
  html body #h3 .h3-act{margin-top:24px!important;gap:9px!important}
  html body #h3 .h3-hero-offer{font-size:14px!important;margin-top:14px!important}
  html body #h3 .h3-proof{margin-top:24px!important;gap:12px 16px!important}
  html body #h3 .h3-proof .pi{width:30px!important;height:30px!important}
  html body #h3 .h3-proof b{font-size:18px!important}
  html body #h3 .h3-proof span{font-size:14px!important}
  /* Priority: equal comparison cards with a real 24px viewport gutter. */
  html body #h3 #h3-pchk .in{width:calc(100% - 48px)!important;padding-inline:0!important}
  html body #h3 #h3-pchk .h3-vs{width:100%!important;max-width:100%;margin:27px auto 0!important;gap:6px!important;box-sizing:border-box;transform:none!important}
  html body #h3 #h3-pchk .h3-vs>:is(.vs-a,.vs-b){width:100%!important;min-width:0;box-sizing:border-box;padding:18px 14px!important;border-radius:17px!important;transform:none!important;scale:1!important;animation:none!important}
  html body #h3 #h3-pchk .h3-vs p{font-size:15px!important;gap:8px!important}
  html body #h3 #h3-pchk .h3-vs p img{width:25.5px!important;height:25.5px!important}
  html body #h3 #h3-pchk .h3-vs ul{width:100%;margin-top:11px!important;gap:8px!important}
  html body #h3 #h3-pchk .h3-vs li{font-size:14px!important;line-height:1.6!important;white-space:normal!important;overflow-wrap:anywhere}
  html body #h3 #h3-pchk .h3-vs .vi{width:18px!important;height:18px!important;margin-right:5px!important;vertical-align:-4px!important}
  html body #h3 #h3-pchk .h3-vs-mark{font-size:19px!important;height:33px!important;margin:0 auto!important}
  html body #h3 .h3-question-art{width:63px!important;height:63px!important;margin-bottom:21px!important;border-radius:18px!important}
  html body #h3 .h3-question-art img{width:45px!important;height:45px!important}
  html body #h3 .h3-why .key{font-size:14px!important;line-height:1.7!important}
  html body #h3 .h3-key-line{white-space:normal!important}
  html body #h3 .h3-cost{width:100%;margin-top:33px!important;gap:9px!important}
  html body #h3 .h3-cost>div{width:100%;min-width:0;box-sizing:border-box;padding:15px 16px!important;gap:8px!important;border-radius:15px!important}
  html body #h3 .h3-cost img{width:30px!important;height:30px!important}
  html body #h3 .h3-cost b{font-size:14px!important}
  html body #h3 .h3-cost span{font-size:14px!important}
  html body #h3 .h3-cost em{font-size:22.5px!important;margin-top:6px!important;white-space:normal!important}
  html body #h3 .h3-cost-n{font-size:14px!important}
  html body #h3 .h3-step.h3-tl{gap:21px!important;margin-top:33px!important}
  html body #h3 .h3-step>li{padding:18px!important;border-radius:17px!important;gap:12px!important;min-width:0}
  html body #h3 .h3-step>li>img{width:39px!important;height:39px!important}
  html body #h3 .h3-step h3{font-size:16.5px!important}
  html body #h3 .h3-step p{font-size:14px!important;margin-top:6px!important}
  html body #h3 .h3-stat b{font-size:27px!important}
  html body #h3 .h3-stat .si{width:36px!important;height:36px!important}
  html body #h3 .h3-bc .bd{padding:18px!important}
  html body #h3 .h3-case-metric{font-size:27px!important}
  html body #h3 .h3-fq button{padding:15px!important;min-height:44px;font-size:14px!important}
  html body #h3 .h3-fin .fi2{width:63px!important;height:63px!important}
  html body #h3 .h3-crs2>a .cv{padding:18px!important}
  html body #h3 #h3-products .in{width:calc(100% - 48px)!important;padding-inline:0!important}
  html body #h3 #h3-products .h3-crs2{width:100%!important;max-width:100%!important;margin-top:33px!important;gap:22px!important;transform:none!important}
  html body #h3 #h3-products .h3-crs2>a{width:100%!important;min-width:0;box-sizing:border-box;transform:none!important;scale:1!important;animation:none!important}
  html body #h3 #h3-products .h3-crs2 .cv{padding:21px!important}
  html body #h3 #h3-products .h3-crs2 .cr-lg{gap:6px!important;margin-bottom:14px!important}
  html body #h3 #h3-products .h3-crs2 .cr-lg img{width:30px!important;height:30px!important;padding:4.5px!important}
  html body #h3 #h3-products .h3-crs2 .k-b .cr-lg img{width:33px!important;height:33px!important;padding:0!important}
  html body #h3 #h3-products .h3-crs2 .cv p{font-size:14px!important}
  html body #h3 #h3-products .h3-crs2 .cr-bt{padding:12px 15px!important;gap:10px!important;min-height:60px!important;flex-wrap:wrap}
  html body #h3 #h3-products .h3-crs2 .cr-bt span{font-size:14px!important;min-width:0;flex:1 1 140px}
  html body #h3 #h3-products .h3-crs2 .cr-bt em{font-size:14px!important;padding:5px 8px!important;white-space:nowrap}
  html body #h3 .h3-crs2 h3{font-size:18.75px!important}
  html body #h3 #h3-easy .h3-system-glass{width:30px!important;height:30px!important;flex-basis:30px!important;border-radius:9px!important}
  html body #h3 #h3-easy .h3-system-glass img{width:24px!important;height:24px!important}
  html body #h3 #h3-easy .h3-system-youtube{width:39px!important;height:39px!important}

  /* Plans and calculator: reserve roomy touch targets while reducing artwork. */
  html body .sd .sd-hbox{padding:30px 14px 0!important;border-radius:21px!important}
  html body .sd .sd-hbox h1{font-size:24px!important;margin-top:14px!important}
  html body .sd .sd-pf4{gap:12px!important;padding:22px 0 36px!important}
  html body .sd .sd-pf4 img{width:42px!important;height:42px!important;padding:9px!important;border-radius:16px!important}
  html body .sd .sd-tabs{margin-top:30px!important;gap:6px!important;padding:4px!important}
  html body .sd .sd-tabs button{min-height:76px!important;padding:8px 2px!important;font-size:14px!important;overflow-wrap:anywhere}
  html body .sd .sd-tabs .sc-choice-art{width:70px!important;height:45px!important;padding:0!important}
  html body .sd .sd-tabs .sc-choice-logo{width:31.5px!important;height:31.5px!important;border-radius:10px!important}
  html body .sd .sd-tabs .sc-choice-logo.scl-yt{width:37.5px!important;height:37.5px!important}
  html body .sd .sd-tabs .sc-choice-logo.scl-ig{margin-right:-9px!important}
  html body .sd .sd-tabs .sc-choice-logo.scl-tt{margin-left:-9px!important}
  html body .sd .pv-card{padding:18px!important;border-radius:18px!important}
  html body .sd .pv-card.rec{padding-top:48px!important}
  html body .sd .pv-price b{font-size:24px!important}
  html body .sd .pv-price{margin-top:12px!important}
  html body .sd .sd-sec{padding-top:60px!important}
  html body .sd .sd-end{margin-top:60px!important}
  html body .sd .sd-endbox{padding:36px 14px!important;border-radius:21px!important}
  html body :is(.sd,.sc) .sd-faq{margin-top:30px!important;gap:9px!important}
  html body :is(.sd,.sc) .sd-faq summary{padding:12px 14px!important;gap:9px!important;font-size:14px!important;min-height:44px}
  html body :is(.sd,.sc) .sd-faq summary .fq-ic{width:28.5px!important;height:28.5px!important;padding:5px!important;border-radius:10px!important}
  html body :is(.sd,.sc) .sd-faq details p{font-size:14px!important;padding:0 14px 14px!important}
  html body .sc .sc-hero{padding-top:96px!important;padding-inline:14px!important}
  html body .sc .sc-hero h1{font-size:25.5px!important}
  html body .sc .sc-hbig{font-size:25.5px!important;padding:9px 16px!important;margin-top:16px!important}
  html body .sc .sc-trio{margin:18px auto 24px!important}
  html body .sc .sc-trio .st-main{width:84px!important;border-radius:21px!important}
  html body .sc .sc-trio .st-sub{width:63px!important;border-radius:16.5px!important}
  html body #h3 #h3-gap .h3-volume-compare{max-width:240px!important;margin-bottom:31.5px!important;gap:6px!important}
  html body #h3 #h3-gap .h3-volume-greater{font-size:24px!important}
  html body .sd .pv-card ul{margin-top:14px!important;margin-bottom:18px!important;gap:9px!important}
  html body .sd .pv-card li{font-size:14px!important}
  html body .sc .sc-card{padding:16.5px 12px!important;border-radius:12px!important}
  html body .sc .sc-steps{gap:18px!important}
  html body .sc .sc-card h2{font-size:16px!important}
  html body .sc .sc-opt>span{padding:9px 10px!important;min-height:48px!important;gap:9px!important}
  html body .sc .sc-opt b{font-size:14px!important}
  html body .sc .sc-opt small{font-size:14px!important}
  html body .sc .sc-choice-art{width:88.5px!important;height:54px!important;padding:0!important}
  html body .sc .sc-choice-logo{width:30px!important;height:30px!important;border-radius:9px!important}
  html body .sc .sc-choice-logo.scl-yt{width:36px!important;height:36px!important;border-radius:10.5px!important}
  html body .sc .sc-choice-logo.scl-ig{margin-right:-6px!important}
  html body .sc .sc-choice-logo.scl-tt{margin-left:-6px!important}
  html body .sc .sc-feat{padding:10px 12px!important;gap:6px!important}
  html body .sc .sc-res-top{padding:15px!important;margin:14px 12px 0!important}
  html body .sc .sc-res-top>div{font-size:22px!important}
  html body .sc .sc-res dl{padding:12px 12px 0!important}
  html body .sc .sc-act{padding:12px!important;gap:9px!important}
  html body .sc .sc-bar a{height:44px!important}
  html body .sc .sc-faqw h2{font-size:21px!important}

  /* Guide list and articles: preserve full text and expanded contents. */
  html body .g5-list .g5-list-hero{padding:108px 0 39px!important}
  html body .g5-list .g5-list-hero h1{font-size:25.5px!important}
  html body .g5-list .g5-list-hero p{font-size:14px!important}
  html body .g5-list .g5-list-label{font-size:14px!important}
  html body .g5-list .g5-grid{gap:30px!important}
  html body .g5-list .g5-card h3,html body .g5-related .g5-card h3{font-size:16.5px!important}
  html body .g5-list .g5-card .g5-summary{font-size:14px!important;margin-bottom:15px!important}
  html body .g5-list .g5-artwork img{width:32.25%!important;height:54%!important}
  html body .g5-article .g5-head h1{font-size:30px!important;margin:11px 0 18px!important}
  html body .g5-article .g5-head .g5-artwork img{width:26.25%!important;height:48.75%!important}
  html body .g5-article .g5-body{margin-top:24px!important}
  html body .g5-article .g5-body h2{font-size:21px!important;margin:33px 0 15px!important}
  html body .g5-article .g5-body p{font-size:15px!important;line-height:25.5px!important;margin-bottom:18px!important}
  html body .g5-article .g5-body .calc{padding:18px!important;margin:21px 0!important}
  html body .g5-article .g5-toc{padding:12px 15px!important;margin-top:24px!important}
  html body .g5-article .g5-consult{padding:21px!important}
  html body .g5-article .g5-related{margin-top:48px!important}

  /* FAQ, cases and product detail cards. */
  html body .fq3{padding-top:112px!important}
  html body .fq3 .fq3-hd h1{font-size:24px!important}
  html body .fq3 .fq3-band{padding:18px 16px!important;margin-top:27px!important;gap:12px!important}
  html body .fq3 .fq3-bd{margin-top:36px!important;gap:24px!important}
  html body .fq3 .fq3-it button{padding:14px 42px 14px 16px!important;min-height:44px}
  html body .fq3 .fq3-q{font-size:14px!important;margin-top:7px!important}
  html body .fq3 .fq3-a p{font-size:14px!important;margin:0 16px 15px!important}
  html body #h3 #h3-gap .h3-gap-t{font-size:clamp(20.25px,5.85vw,27px)!important}
  html body #contact .cl-h{font-size:18px!important}
  html body #portfolio .h2h h2,html body #h2logo .lg-h{font-size:22.5px!important}
  html body .cs-pg h2{font-size:22.5px!important}
  html body .cs-pg .res>div{padding:18px!important}
  html body .cs-pg .res b{font-size:27px!important}
  html body .pdx .pdx-top h1{font-size:21px!important}
  html body .pdx .dt{font-size:18px!important}
  html body .pdx .dt .sub{font-size:18px!important}
  html body .pdx .head{margin-bottom:24px!important}
  html body .pdx :is(.u3,.f2){gap:12px!important}
  html body .pdx :is(.u3,.f2)>.it{padding:14px!important}
  html body .pdx .u3 .mk{height:105px!important}
  html body .pdx .u3 .mk-ic{width:82.5px!important;height:82.5px!important}
  html body .pdx .f2 .mk-ic{width:27px!important;height:27px!important}
  html body .pdx .pdx-side{padding:20px!important}
  html body .pdx .pdx-side h2{font-size:21px!important}
  html body .pdx .pdx-tabs a{min-height:44px}
}
