/* MEG v3.2 responsive polish. Loaded last so old imported page styles cannot override it. */
@media(max-width:740px){
  html{scroll-padding-top:72px}
  body{font-size:16px!important;line-height:1.6!important;overflow-x:hidden!important}
  img,iframe,video{max-width:100%!important;height:auto}
  .wrap,.m-wrap{width:calc(100% - 32px)!important;max-width:none!important;margin-inline:auto!important}
  section{padding:46px 0!important}

  .m-header,header.top{height:68px!important;min-height:68px!important}
  .m-nav,header.top .wrap.nav{width:calc(100% - 24px)!important;height:68px!important;min-height:68px!important;display:flex!important;align-items:center!important;gap:10px!important}
  .m-brand,.top .brand{width:min(178px,58vw)!important;min-width:0!important;max-width:178px!important;height:68px!important;flex:0 1 178px!important}
  .m-brand img,header.top .brand img{width:100%!important;max-width:178px!important;max-height:42px!important;object-fit:contain!important}
  .m-header-cta,.top .actions{display:none!important}
  .meg-mobile-toggle{display:grid!important;place-items:center!important;margin-left:auto!important;width:44px!important;height:44px!important;padding:0!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:13px!important;background:rgba(255,255,255,.07)!important;color:#fff!important;font-size:25px!important}
  body .meg-primary-menu{top:67px!important;left:8px!important;right:8px!important;max-height:calc(100dvh - 80px)!important;border-radius:15px!important;padding:10px!important}
  body .meg-primary-menu>a,body .meg-primary-menu>.m-nav-group>a,body .meg-primary-menu>.nav-group>a{min-height:46px!important;padding:12px 48px 12px 12px!important;font-size:15px!important}
  .meg-primary-menu .meg-submenu-toggle{top:23px!important;width:42px!important;height:42px!important;right:2px!important}

  body.home .m-hero{min-height:0!important;padding:42px 0 52px!important;background-position:62% center!important}
  .m-grid{grid-template-columns:1fr!important;gap:32px!important}
  .m-copy{max-width:none!important}
  .m-kicker{width:100%!important;height:auto!important;min-height:42px!important;padding:10px 13px!important;font-size:13px!important;line-height:1.35!important;border-radius:16px!important}
  body.home .m-title{margin:26px 0 18px!important;font-size:clamp(40px,12vw,52px)!important;line-height:1.02!important;letter-spacing:-.035em!important;text-wrap:pretty!important}
  .m-lead{font-size:18px!important;line-height:1.55!important}
  .m-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:28px!important}
  .m-btn,.m-btn-primary,.m-btn-call{width:100%!important;min-width:0!important;height:54px!important;padding:0 18px!important;font-size:16px!important}
  .m-proof{grid-template-columns:1fr!important;gap:10px!important;margin-top:30px!important}
  .m-proof-card{min-height:88px!important;grid-template-columns:42px 1fr!important;padding:16px!important;border-radius:17px!important}
  .m-proof-card strong{font-size:17px!important}.m-proof-card span:not(.m-proof-icon){font-size:13.5px!important}
  .m-panel{width:100%!important;min-height:0!important;padding:24px 18px!important;border-radius:24px!important}
  .m-panel h2{font-size:29px!important;margin-bottom:17px!important}
  .m-support{gap:10px!important}.m-support-item{min-height:76px!important;grid-template-columns:46px 1fr!important;padding:12px!important;border-radius:16px!important}
  .m-support-icon{width:42px!important;height:42px!important}.m-support-item strong{font-size:17px!important}.m-support-item small{font-size:13.5px!important}
  .m-panel-footer{gap:8px!important;margin-top:18px!important;padding-top:18px!important}.m-panel-footer span{min-height:36px!important;padding:0 12px!important;font-size:13px!important}

  .section-head{margin-bottom:24px!important}.section-head h2{font-size:clamp(29px,9vw,39px)!important;letter-spacing:-.04em!important}.section-head p{font-size:16px!important}
  .cards-3,.cards-2,.why-grid,.repair-service-grid,.repair-service-grid-lean,.data-recovery-card,.split{grid-template-columns:1fr!important;gap:14px!important}
  .card,.why-card,.repair-service-card,.data-recovery-card{padding:20px!important;border-radius:20px!important}
  .pill-wrap{gap:8px!important}.pill{width:100%!important;padding:11px 14px!important}
  .contact-v26{padding:48px 0!important}.contact-v26-grid{display:grid!important;grid-template-columns:1fr!important;gap:22px!important}
  .contact{padding:18px!important;border-radius:22px!important}.field-grid-v19{grid-template-columns:1fr!important}
  input,select,textarea{font-size:16px!important}
  .contact-v26-side{padding:0!important}.contact-v26-locations>div{padding:15px!important}

  main>.hero{padding:42px 0!important}.hero-grid{grid-template-columns:1fr!important;gap:22px!important}.hero h1{font-size:clamp(38px,11vw,50px)!important;letter-spacing:-.04em!important}.hero-card{padding:20px!important}
  .section{padding:42px 0!important}.meg-legacy-content{padding:20px!important;border-radius:20px!important}
  .meg-service-page{gap:32px!important}.meg-service-page h2{font-size:29px!important}.meg-feature-grid article,.meg-service-callout{padding:18px!important}
  .meg-service-intro,.meg-media-intro,.meg-feature-grid,.meg-service-chip-grid,.meg-icon-service-grid,.meg-price-grid,.meg-service-cta,.meg-process-list{grid-template-columns:1fr!important}
  .meg-media-intro img{grid-row:1!important}.meg-service-actions{justify-content:stretch!important}.meg-service-actions .btn{width:100%!important}

  .pro-footer{padding:36px 0 22px!important}.pro-footer .footer-v37-grid{grid-template-columns:1fr!important;gap:26px!important}.footer-logo{width:190px!important}.footer-service-links{grid-template-columns:1fr!important}.footer-service-links a,.footer-contact-line a{min-height:40px;display:flex!important;align-items:center}.footer-cta{width:100%!important;min-height:48px!important}.footer-bottom{display:grid!important;justify-content:start!important;gap:8px!important}

  .meg-modal{padding:0!important;align-items:stretch!important}
  .meg-modal-panel{width:100%!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}
  .meg-modal-body{padding:8px!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}
  .meg-modal .meg-choice{min-height:58px!important}
  .meg-modal .meg-actions{position:sticky!important;bottom:0!important;background:#fff!important;border-top:1px solid #e5e7eb!important;padding:10px 0 0!important}
  .meg-modal .meg-widget-success{min-height:calc(100dvh - 118px)!important;padding:28px 18px!important;border-radius:16px!important}
  .meg-form-success{min-height:390px!important;padding:28px 18px!important;border-radius:20px!important}
  .meg-success-check{width:64px!important;height:64px!important;font-size:34px!important}.meg-success-actions{display:grid!important;width:100%!important}.meg-success-actions .btn,.meg-success-actions .meg-btn{width:100%!important;min-height:48px!important}
}

@media(max-width:380px){
  .wrap,.m-wrap{width:calc(100% - 24px)!important}
  .m-brand,.top .brand{max-width:160px!important;flex-basis:160px!important}.m-brand img,header.top .brand img{max-width:160px!important}
  body.home .m-title{font-size:39px!important}
  .m-support-item{grid-template-columns:40px 1fr!important}.m-support-icon{width:38px!important;height:38px!important}
}

/* MEG v3.4 mobile-first cleanup. These rules intentionally load after desktop polish. */
@media(max-width:740px){
  html{scroll-padding-top:66px}
  body.meg-menu-open{overflow:hidden!important;touch-action:none}
  body{overflow-x:hidden!important}
  .wrap,.m-wrap{width:calc(100% - 28px)!important}
  section{padding:38px 0!important}

  /* Calm, compact mobile header */
  .m-header,header.top{height:64px!important;min-height:64px!important;position:sticky!important;top:0!important}
  body.admin-bar .m-header,body.admin-bar header.top{top:46px!important}
  .m-nav,header.top .wrap.nav{width:calc(100% - 22px)!important;height:64px!important;min-height:64px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
  .m-brand,.top .brand{width:auto!important;min-width:0!important;max-width:164px!important;height:64px!important;flex:0 1 164px!important}
  .m-brand img,header.top .brand img{display:block!important;width:100%!important;max-width:164px!important;max-height:38px!important;object-fit:contain!important}
  .m-header-cta,.top .actions{display:none!important}
  .meg-mobile-toggle{display:grid!important;place-items:center!important;flex:0 0 44px!important;margin-left:auto!important;width:44px!important;height:44px!important;padding:0!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:12px!important;background:rgba(255,255,255,.065)!important;color:#fff!important;font-size:0!important;line-height:1!important;box-shadow:none!important}
  .meg-mobile-toggle:before{content:'☰';font-size:24px;line-height:1;font-weight:700}
  .meg-mobile-toggle[aria-expanded="true"]:before{content:'×';font-size:30px;font-weight:400;transform:translateY(-1px)}

  /* Mobile nav = deliberate full-width sheet, not squeezed desktop dropdown */
  body .meg-primary-menu{display:none!important;position:fixed!important;z-index:1001!important;top:64px!important;left:0!important;right:0!important;width:100%!important;max-height:calc(100dvh - 64px)!important;margin:0!important;padding:10px 14px 22px!important;border:0!important;border-top:1px solid rgba(255,255,255,.10)!important;border-radius:0!important;background:rgba(10,16,24,.985)!important;box-shadow:0 24px 55px rgba(0,0,0,.42)!important;overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important}
  body.admin-bar .meg-primary-menu{top:110px!important;max-height:calc(100dvh - 110px)!important}
  body .meg-primary-menu.is-open{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important}
  body .meg-primary-menu>a,body .meg-primary-menu>.m-nav-group>a,body .meg-primary-menu>.nav-group>a{display:flex!important;align-items:center!important;width:100%!important;min-height:52px!important;margin:0!important;padding:13px 50px 13px 4px!important;border-bottom:1px solid rgba(255,255,255,.08)!important;border-radius:0!important;color:#f7fafc!important;font-size:16px!important;font-weight:850!important;line-height:1.25!important}
  .meg-primary-menu .m-nav-group,.meg-primary-menu .nav-group{display:block!important;width:100%!important}
  .meg-primary-menu .meg-submenu-toggle{display:grid!important;place-items:center!important;top:26px!important;right:2px!important;width:44px!important;height:44px!important;color:#fff!important;transform:translateY(-50%)!important}
  .meg-primary-menu .meg-submenu-toggle:after{content:'+'!important;font-size:22px!important;line-height:1!important;font-weight:500!important}
  .meg-primary-menu .submenu-open>.meg-submenu-toggle:after{content:'−'!important}
  body .meg-primary-menu .m-dd,body .meg-primary-menu .nav-menu{display:none!important;position:static!important;width:auto!important;min-width:0!important;margin:2px 0 8px!important;padding:6px 0 8px 12px!important;border:0!important;border-left:1px solid rgba(246,193,90,.25)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
  body .meg-primary-menu .submenu-open>.m-dd,body .meg-primary-menu .submenu-open>.nav-menu{display:block!important}
  body .meg-primary-menu .m-dd a,body .meg-primary-menu .nav-menu a{display:flex!important;align-items:center!important;min-height:44px!important;padding:9px 12px!important;border-radius:10px!important;color:#cbd5df!important;font-size:14px!important;line-height:1.3!important}

  /* Homepage hero: phone users get the decision-making content first, not the desktop support panel. */
  body.home .m-hero{min-height:0!important;padding:30px 0 34px!important;background-position:59% center!important}
  body.home .m-grid{display:block!important}
  body.home .m-copy{max-width:none!important}
  body.home .m-kicker{width:auto!important;max-width:100%!important;min-height:0!important;padding:8px 11px!important;border-radius:999px!important;font-size:12px!important;line-height:1.3!important}
  body.home .m-title{margin:20px 0 14px!important;font-size:clamp(36px,10.8vw,46px)!important;line-height:1.01!important;letter-spacing:-.04em!important;max-width:12ch!important;text-wrap:balance!important}
  body.home .m-lead{font-size:16.5px!important;line-height:1.5!important;max-width:36rem!important;display:-webkit-box!important;-webkit-line-clamp:4!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  body.home .m-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-top:22px!important}
  body.home .m-btn,body.home .m-btn-primary,body.home .m-btn-call{width:100%!important;min-width:0!important;height:50px!important;padding:0 16px!important;font-size:15px!important}
  body.home .m-proof{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;margin-top:20px!important}
  body.home .m-proof-card{min-height:74px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:3px!important;padding:10px!important;border-radius:14px!important}
  body.home .m-proof-icon{display:none!important}
  body.home .m-proof-card strong{font-size:13px!important;line-height:1.15!important}
  body.home .m-proof-card span:not(.m-proof-icon){font-size:10.5px!important;line-height:1.25!important}
  body.home .m-panel{display:none!important}

  /* Homepage density: preserve the message, remove repetitive mobile bulk. */
  body.home #services{padding-top:34px!important;padding-bottom:34px!important}
  body.home .section-head{margin-bottom:18px!important}
  body.home .section-head h2{font-size:clamp(27px,8vw,34px)!important;line-height:1.08!important;letter-spacing:-.035em!important}
  body.home .section-head p{font-size:15px!important;line-height:1.5!important}
  body.home .cards-3{gap:10px!important}
  body.home .card{padding:17px!important;border-radius:17px!important}
  body.home .card .icon{margin-bottom:8px!important}
  body.home .card h3{margin-bottom:5px!important;font-size:19px!important}
  body.home .card p{margin-bottom:0!important;font-size:14.5px!important}
  body.home .card .list{display:none!important}

  body.home #fit{padding:30px 0!important}
  body.home #fit .split{gap:14px!important}
  body.home #fit .section-head{margin-bottom:0!important}
  body.home #fit .pill-wrap{display:flex!important;flex-wrap:wrap!important;gap:7px!important}
  body.home #fit .pill{width:auto!important;padding:8px 10px!important;font-size:12.5px!important}
  body.home #fit .pill:nth-child(n+6){display:none!important}

  body.home #why{padding:34px 0!important}
  body.home .why-grid{gap:10px!important}
  body.home .why-card{padding:17px!important;border-radius:17px!important}
  body.home .why-card h3{font-size:19px!important}
  body.home .why-card p{font-size:14.5px!important;line-height:1.5!important}
  body.home .why-card .list{display:none!important}

  body.home #repair-services{padding:34px 0!important}
  body.home .repair-service-grid{gap:9px!important}
  body.home .repair-service-card{display:grid!important;grid-template-columns:36px 1fr!important;column-gap:11px!important;align-items:center!important;padding:14px 15px!important;border-radius:16px!important}
  body.home .repair-service-card .icon{grid-row:1!important;grid-column:1!important;margin:0!important;font-size:25px!important}
  body.home .repair-service-card h3{grid-column:2!important;margin:0!important;font-size:17px!important;line-height:1.2!important}
  body.home .repair-service-card p{display:none!important}

  body.home #data-recovery{padding:30px 0!important}
  body.home .data-recovery-card{padding:18px!important;gap:14px!important;border-radius:18px!important}
  body.home .data-recovery-card h2{font-size:27px!important;line-height:1.1!important}
  body.home .data-recovery-card p{font-size:14.5px!important;line-height:1.5!important}
  body.home .recovery-list{gap:7px!important}
  body.home .recovery-list>div{padding:10px 11px!important;min-height:0!important}

  body.home .contact-v26{padding:38px 0!important}
  body.home .contact-v26-grid{gap:18px!important}
  body.home .contact-v26-side .section-head p{display:none!important}
  body.home .contact-v26-locations>div{padding:14px 15px!important}

  /* Internal pages: guard against old imported markup breaking small screens. */
  main,main *{min-width:0}
  table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  pre,code{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}
  .meg-legacy-content{overflow:hidden!important;padding:18px!important;border-radius:18px!important}
  .meg-legacy-content *{max-width:100%!important}
  .meg-service-page{gap:28px!important}
  .meg-service-page>section{gap:15px!important}
  .meg-service-page h2{font-size:27px!important;line-height:1.12!important}
  .meg-feature-grid article,.meg-service-callout{padding:16px!important}
  .meg-service-chip-grid span,.meg-service-chip-grid a{min-height:44px!important;padding:10px 12px!important}

  .pro-footer{padding:32px 0 20px!important}
}

@media(max-width:380px){
  .wrap,.m-wrap{width:calc(100% - 22px)!important}
  .m-brand,.top .brand{max-width:148px!important;flex-basis:148px!important}
  .m-brand img,header.top .brand img{max-width:148px!important}
  body.home .m-title{font-size:35px!important}
  body.home .m-proof-card{padding:9px 8px!important}
  body.home .m-proof-card strong{font-size:12px!important}
  body.home .m-proof-card span:not(.m-proof-icon){font-size:9.5px!important}
}

/* v3.5 ; one mobile header on every page. */
@media(max-width:740px){
  header.meg-site-header{height:68px!important;min-height:68px!important;background:rgba(7,12,18,.98)!important;border-bottom:1px solid rgba(255,255,255,.09)!important}
  header.meg-site-header .meg-site-nav{width:calc(100% - 24px)!important;height:68px!important;min-height:68px!important;display:flex!important;align-items:center!important;gap:10px!important}
  header.meg-site-header .meg-site-brand{width:min(178px,58vw)!important;max-width:178px!important;flex:0 1 178px!important}
  header.meg-site-header .meg-site-brand img{width:100%!important;max-width:178px!important;height:auto!important}
  header.meg-site-header .meg-site-actions{display:none!important}
  body.home .m-hero{min-height:0!important;display:block!important}

  .meg-ipad-hero{padding:38px 0 34px!important}
  .meg-ipad-hero-grid{grid-template-columns:1fr!important;gap:22px!important}
  .meg-ipad-hero h1{margin:14px 0 14px!important;font-size:clamp(38px,11vw,50px)!important;line-height:1.01!important;letter-spacing:-.045em!important}
  .meg-ipad-hero .lead{font-size:16.5px!important;line-height:1.55!important}
  .meg-ipad-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-top:20px!important}
  .meg-ipad-actions .btn{width:100%!important;min-height:50px!important}
  .meg-ipad-summary{padding:18px!important;border-radius:18px!important}
  .meg-ipad-summary ul{gap:8px!important;font-size:14.5px!important}
  .meg-ipad-content{padding:36px 0!important}
  .meg-ipad-section-head{margin-bottom:18px!important}.meg-ipad-section-head h2,.meg-ipad-models h2,.meg-ipad-cta h2{font-size:29px!important;line-height:1.08!important}.meg-ipad-section-head p,.meg-ipad-models p,.meg-ipad-cta p{font-size:15px!important}
  .meg-ipad-card-grid{grid-template-columns:1fr!important;gap:10px!important}.meg-ipad-card-grid article{padding:17px!important;border-radius:17px!important}.meg-ipad-card-grid article>span{width:38px!important;height:38px!important;margin-bottom:10px!important}.meg-ipad-card-grid h3{font-size:19px!important}.meg-ipad-card-grid p{font-size:14.5px!important}
  .meg-ipad-models{grid-template-columns:1fr!important;gap:18px!important;margin-top:32px!important;padding:18px!important;border-radius:18px!important}.meg-ipad-model-pills{grid-template-columns:1fr 1fr!important;gap:8px!important}.meg-ipad-model-pills span{min-height:46px!important;padding:0 12px!important;font-size:14px!important}
  .meg-ipad-process{grid-template-columns:1fr!important;gap:8px!important;margin-top:30px!important}.meg-ipad-process>div{padding:14px 4px!important;display:grid!important;grid-template-columns:38px 1fr!important;column-gap:10px!important}.meg-ipad-process strong{grid-row:1/3!important;margin:0!important}.meg-ipad-process h3{margin:0 0 4px!important;font-size:17px!important}.meg-ipad-process p{grid-column:2!important;font-size:14px!important}
  .meg-ipad-cta{grid-template-columns:1fr!important;gap:18px!important;margin-top:30px!important;padding:20px!important;border-radius:18px!important}.meg-ipad-cta .btn{width:100%!important;min-height:50px!important}
}
