/* ZIEL R45: responsive presentation only. All selectors are limited to <= 760px.
   Does not modify auth, checkout, Paddle, billing or desktop functionality. */
@media (max-width: 760px) {
  /* Home: shorter first fold, compact heading and correctly contained hero art. */
  #zp-home-v5 .hero { padding: 20px 0 12px !important; }
  #zp-home-v5 .hero-grid { min-height: 0 !important; gap: 8px !important; }
  #zp-home-v5 .hero-copy { padding: 0 0 4px !important; }
  #zp-home-v5 .hero h1 { font-size: clamp(32px, 8.5vw, 40px) !important; line-height: 1.06 !important; }
  #zp-home-v5 .hero .eyebrow { margin-bottom: 9px !important; }
  #zp-home-v5 .hero-copy p { font-size: 14px !important; line-height: 1.5 !important; margin-top: 10px !important; }
  #zp-home-v5 .hero-actions { flex-wrap: wrap; gap: 8px !important; margin-top: 15px !important; }
  #zp-home-v5 .hero-visual { margin-top: 3px !important; }
  #zp-home-v5 .hero-visual picture { max-width: 340px !important; }
  #zp-home-v5 .hero-visual img { display:block; width:100%; height:auto; max-height:225px !important; object-fit:contain !important; }
  #zp-home-v5 .section { padding-top: 38px !important; padding-bottom: 38px !important; }
  #zp-home-v5 .cpv3-copy h2, #zp-home-v5 .security-premium-copy h2 { font-size:clamp(29px,7.5vw,36px) !important; line-height:1.12 !important; }
  #zp-home-v5 .home-connected-v3 { padding-block: 28px 32px !important; }

  /* Product: existing tablet/phone hero still allows overlarge headings. */
  body.product-r10 .pr-hero { min-height:0 !important; }
  body.product-r10 .pr-hero-grid { min-height:0 !important; padding:22px 0 24px !important; gap:18px !important; }
  body.product-r10 .pr-hero h1 { font-size:clamp(33px,8.6vw,40px) !important; line-height:1.06 !important; margin:10px 0 12px !important; }
  body.product-r10 .pr-hero-copy > p { font-size:14px !important; line-height:1.5 !important; }
  body.product-r10 .pr-hero-proof { margin-top:12px !important; padding-top:12px !important; }
  body.product-r10 .pr-hero-art { width:100% !important; min-width:0 !important; }
  body.product-r10 .pr-hero-image { max-width:min(100%,430px) !important; transform:none !important; }
  body.product-r10 .pr-hero-image img { width:100% !important; height:auto !important; max-height:245px !important; object-fit:contain !important; }
  body.product-r10 .pr-hero-tag { right:8px !important; bottom:8px !important; }

  /* Why Ziel: keep screenshot visible without wasting half a phone screen. */
  #ziel-why-r2 .zw-hero { padding-top:20px !important; }
  #ziel-why-r2 .zw-hero-grid { min-height:0 !important; gap:12px !important; }
  #ziel-why-r2 .zw-hero-content { padding:0 0 8px !important; }
  #ziel-why-r2 .zw-hero h1 { font-size:clamp(32px,8.4vw,39px) !important; line-height:1.09 !important; }
  #ziel-why-r2 .zw-hero p { font-size:14px !important; line-height:1.5 !important; margin-top:12px !important; }
  #ziel-why-r2 .zw-hero-visual { max-width:min(100%,460px) !important; }
  #ziel-why-r2 .zw-device-frame img { height:auto !important; max-height:230px !important; aspect-ratio:auto !important; object-fit:contain !important; }
  #ziel-why-r2 .zw-value-row { padding:10px 0 13px !important; gap:10px !important; }

  /* About: original mobile-specific hero has oversized device and spacing. */
  #za17 .za18-mobile-copy { padding:22px 6% 0 !important; }
  #za17 .za18-mobile-copy h2 { font-size:clamp(30px,7.6vw,38px) !important; line-height:1.12 !important; margin:12px 0 9px !important; }
  #za17 .za18-mobile-copy p { font-size:14px !important; line-height:1.48 !important; }
  #za17 .za18-hero-actions { margin:14px 6% 0 !important; gap:8px !important; }
  #za17 .za18-hero-actions a { min-height:41px !important; padding:9px 15px !important; }
  #za17 .za18-mobile-device { max-height:235px !important; width:100% !important; height:auto !important; object-fit:contain !important; margin-top:2px !important; }

  /* Contact: shorten phone hero without ever clipping text or support image. */
  #zc13 section.za13-hero.zc13-hero { height:auto !important; min-height:0 !important; max-height:none !important; padding:0 !important; overflow:visible !important; }
  #zc13 .za13-wrap.zc13-hero-grid { min-height:0 !important; height:auto !important; gap:8px !important; }
  #zc13 .za13-hero-text { padding:23px 0 5px !important; }
  #zc13 .za13-hero-text h1 { font-size:clamp(32px,8.5vw,40px) !important; line-height:1.08 !important; }
  #zc13 .za13-hero-text p { font-size:14px !important; line-height:1.5 !important; }
  #zc13 .za13-actions { flex-wrap:wrap !important; gap:9px !important; }
  #zc13 .za13-actions .za13-btn { min-height:42px !important; padding:10px 16px !important; }
  #zc13 .zc13-hero-art { width:100% !important; max-height:240px !important; margin:0 auto !important; align-self:center !important; }
  #zc13 .zc13-hero-art > img { width:100% !important; max-height:230px !important; height:auto !important; object-fit:contain !important; object-position:center bottom !important; }

  /* Pricing and Solutions: shorter headers, readable full-width cards. */
  body.pricing-r5 .page-hero, body.marketing-r5 .page-hero { padding:22px 0 13px !important; }
  body.pricing-r5 .page-hero h1, body.marketing-r5 .page-hero h1 { font-size:clamp(32px,8.5vw,40px) !important; line-height:1.08 !important; }
  body.pricing-r5 .pricing-grid { grid-template-columns:minmax(0,1fr) !important; gap:15px !important; }
  body.pricing-r5 .plan-card { min-height:0 !important; padding:21px 18px !important; }
  body.pricing-r5 .plan-price strong { font-size:clamp(35px,10vw,46px) !important; }
  body.pricing-r5 .table-card { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  body.pricing-r5 .modal { max-width:calc(100vw - 24px) !important; max-height:calc(100dvh - 32px) !important; overflow-y:auto !important; }
  body.pricing-r5 .modal-grid { min-width:0; }
}
@media (max-width: 390px) {
  #zp-home-v5 .hero-actions a, #zc13 .za13-actions a { max-width:100%; }
  #ziel-why-r2 .zw-device-frame img { max-height:205px !important; }
  #za17 .za18-mobile-device { max-height:205px !important; }
  #zc13 .zc13-hero-art > img { max-height:200px !important; }
}
