.mobile-install-banner,.mobile-install-overlay{display:none}

@media (max-width:900px){
  .mobile-install-banner{position:fixed;left:14px;right:14px;bottom:max(12px,env(safe-area-inset-bottom));z-index:90;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 12px 12px 14px;border:1px solid rgba(233,231,220,.17);background:rgba(7,17,13,.92);box-shadow:0 14px 44px rgba(0,0,0,.28);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;transform:translateY(16px);transition:opacity .22s ease,transform .22s ease}
  .mobile-install-banner.is-visible{opacity:1;transform:translateY(0)}
  .mobile-install-copy{min-width:0}
  .mobile-install-eyebrow{display:block;margin-bottom:3px;font-size:8px;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;color:#7f9186}
  .mobile-install-text{margin:0;font-size:11px;line-height:1.35;color:#c8d0ca}
  .mobile-install-how{appearance:none;border:0;border-bottom:1px solid rgba(233,231,220,.42);background:transparent;color:var(--cream);padding:2px 0 3px;font:inherit;font-size:9px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;cursor:pointer}
  .mobile-install-how:focus-visible,.mobile-install-close:focus-visible,.mobile-install-modal-close:focus-visible{outline:1px solid var(--cream);outline-offset:4px}
  .mobile-install-close,.mobile-install-modal-close{appearance:none;border:0;background:transparent;color:#8b9990;cursor:pointer;font:inherit}
  .mobile-install-close{width:28px;height:28px;padding:0;font-size:18px;line-height:28px;text-align:center}

  .mobile-install-overlay{position:fixed;inset:0;z-index:120;display:flex;align-items:flex-end;justify-content:center;padding:18px 14px max(14px,env(safe-area-inset-bottom));background:rgba(0,0,0,.58);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
  .mobile-install-overlay.is-open{opacity:1;visibility:visible}
  .mobile-install-modal{width:min(100%,520px);max-height:min(78vh,620px);overflow:auto;border:1px solid rgba(233,231,220,.18);background:#0a1510;box-shadow:0 24px 70px rgba(0,0,0,.42);padding:20px}
  .mobile-install-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}
  .mobile-install-modal-kicker{display:block;margin-bottom:8px;font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:#75867c}
  .mobile-install-modal h2{margin:0;max-width:320px;font-size:25px;line-height:.98;letter-spacing:-.035em}
  .mobile-install-modal-close{flex:0 0 auto;width:32px;height:32px;padding:0;font-size:22px;line-height:32px}
  .mobile-install-instructions{padding-top:18px;color:#b3beb7}
  .mobile-install-instructions h3{margin:22px 0 10px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#dde2de}
  .mobile-install-instructions h3:first-child{margin-top:0}
  .mobile-install-instructions ol{margin:0;padding-left:20px}
  .mobile-install-instructions li{margin:0 0 11px;padding-left:4px;font-size:14px;line-height:1.45}
  .mobile-install-note{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line);font-size:10px;line-height:1.45;color:#75867c}
  body.install-modal-open{overflow:hidden}
}

@media (max-width:420px){
  .mobile-install-banner{gap:10px}
  .mobile-install-text{font-size:10px}
  .mobile-install-how{font-size:8px}
}

@media (prefers-reduced-motion:reduce){
  .mobile-install-banner,.mobile-install-overlay{transition:none}
}
