/* SKYNET / RNPR public mobile UI refinements v1.0
   Marketing/public pages only. Keeps operational map layouts untouched except for shared social/footer controls. */

@media (max-width: 820px){
  html{overflow-x:hidden;-webkit-text-size-adjust:100%}
  body{overflow-x:hidden}
  img,svg,canvas{max-width:100%}

  /* Shared public social strip */
  .skynet-public-social{padding:16px 14px}
  .skynet-public-social-inner{gap:12px}
  .skynet-public-social-copy{width:100%}
  .skynet-public-social-copy strong{font-size:13px}
  .skynet-public-social-copy span{font-size:11px;line-height:1.45}
  .skynet-public-social-actions{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:8px}
  .skynet-social-btn{width:100%;min-width:0;min-height:46px;justify-content:center;padding:8px 9px;white-space:normal;text-align:center}

  /* Homepage header: clean two-row mobile shell */
  .public-home-page header .top{
    width:min(100% - 28px,1180px);
    height:auto;min-height:0;padding:10px 0 11px;
    display:grid;grid-template-columns:minmax(0,1fr);gap:9px;align-items:center
  }
  .public-home-page .brand{font-size:21px;line-height:1;min-width:0}
  .public-home-page .brand small{font-size:7px;line-height:1.25;letter-spacing:.14em;max-width:100%;white-space:normal}
  .public-home-page .brand .rnpr-parent-line{font-size:6.5px!important;letter-spacing:.09em!important;margin-top:3px}
  .public-home-page .nav{
    width:100%;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
    gap:7px;align-items:center;justify-content:stretch
  }
  .public-home-page .nav>a:not(.login):not(.public-donate-nav){display:none!important}
  .public-home-page .nav .login,.public-home-page .nav .public-donate-nav{
    display:flex!important;min-width:0;min-height:40px;padding:8px 10px!important;border-radius:8px;
    align-items:center;justify-content:center;text-align:center;font-size:10px!important;line-height:1.15
  }
  .public-home-page .public-language-switch{margin:0;justify-self:end;height:40px;padding:4px;border-radius:9px}
  .public-home-page .public-language-switch button{height:30px;min-width:31px}

  /* Homepage hero */
  .public-home-page .hero{min-height:0}
  .public-home-page .hero:after{display:none}
  .public-home-page .hero .wrap{width:min(100% - 28px,1180px);padding:34px 0 30px!important}
  .public-home-page .hero-grid{grid-template-columns:1fr!important;gap:24px!important;align-items:start}
  .public-home-page .rnpr-hero-badge{margin-bottom:9px;padding:6px 9px;font-size:7.5px;letter-spacing:.09em;max-width:100%;white-space:normal}
  .public-home-page .eyebrow{font-size:9px;line-height:1.35;letter-spacing:.12em}
  .public-home-page .hero h1{font-size:clamp(36px,10.8vw,50px)!important;line-height:1.01;margin:9px 0 14px;letter-spacing:-.038em;overflow-wrap:normal}
  .public-home-page .hero p{font-size:13.5px;line-height:1.58;margin:0;max-width:none}
  .public-home-page .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}
  .public-home-page .actions .btn{width:100%;min-height:45px;padding:8px 10px;border-radius:8px;text-align:center;line-height:1.2}
  .public-home-page .actions .skynet-donate-btn{grid-column:1/-1;min-height:48px}
  .public-home-page .skynet-paypal-identity{max-width:none;margin-top:10px;padding:10px 11px;border-radius:0 9px 9px 0}
  .public-home-page .skynet-paypal-identity strong{font-size:9.5px}
  .public-home-page .skynet-paypal-identity span{font-size:8.5px}

  .public-home-page .skynet-hero-social{margin-top:13px;padding:11px;border-radius:12px}
  .public-home-page .skynet-hero-social-copy{display:block;margin-bottom:8px}
  .public-home-page .skynet-hero-social-copy strong{font-size:12px}
  .public-home-page .skynet-hero-social-copy span{display:block;margin-top:3px;font-size:9.5px;line-height:1.35;text-align:left}
  .public-home-page .skynet-hero-social-actions{grid-template-columns:1fr 1fr;gap:7px}
  .public-home-page .skynet-hero-social-btn{min-height:54px;padding:8px 9px;gap:8px;border-radius:10px;min-width:0}
  .public-home-page .skynet-hero-social-btn .skynet-social-mark{width:31px;height:31px;flex-basis:31px}
  .public-home-page .skynet-hero-social-btn b{font-size:10.5px;line-height:1.15}
  .public-home-page .skynet-hero-social-btn small{font-size:8px;line-height:1.25}

  .public-home-page .radar-wrap{margin-top:0}
  .public-home-page .radar{width:min(270px,74vw)!important;margin:auto}
  .public-home-page .radar-center{width:68px;height:68px}
  .public-home-page .radar-center span{font-size:10px}
  .public-home-page .radar-status{font-size:5.5px}
  .public-home-page .tower{display:none}

  /* Homepage organization + content sections */
  .public-home-page .rnpr-org-strip .wrap{width:min(100% - 28px,1180px);padding:14px 0;gap:12px;align-items:stretch}
  .public-home-page .rnpr-org-strip strong{font-size:12px}
  .public-home-page .rnpr-org-strip span{font-size:9.5px}
  .public-home-page .rnpr-org-strip a{width:100%;min-height:42px;display:flex;align-items:center;justify-content:center;text-align:center}
  .public-home-page .section{padding:38px 0!important}
  .public-home-page .section>.wrap,.public-home-page .rnpr-summary>.wrap{width:min(100% - 28px,1180px)}
  .public-home-page .rnpr-summary-grid{gap:14px}
  .public-home-page .rnpr-summary-intro{padding:20px;border-radius:12px}
  .public-home-page .rnpr-summary-intro h2{font-size:27px;line-height:1.12;margin-bottom:12px}
  .public-home-page .rnpr-summary-intro p{font-size:12px;line-height:1.62}
  .public-home-page .rnpr-summary-intro .btn{width:100%;min-height:44px}
  .public-home-page .rnpr-mission-grid{gap:12px}
  .public-home-page .rnpr-mission-card{padding:18px;border-radius:10px}
  .public-home-page .rnpr-mission-card h3{font-size:17px;line-height:1.25}
  .public-home-page .rnpr-stage{padding:15px 16px}

  .public-home-page .center{max-width:none;text-align:left}
  .public-home-page .center h2{font-size:29px;line-height:1.12}
  .public-home-page .lead{font-size:13px;line-height:1.55}
  .public-home-page .mesh-card{padding:18px!important;gap:18px;border-radius:12px}
  .public-home-page .qrbox{text-align:center}
  .public-home-page .qrbox img{width:min(190px,62vw);height:auto;margin:auto}
  .public-home-page .mesh-copy h3{font-size:23px;margin-top:0}
  .public-home-page .mesh-copy p{font-size:12.5px;line-height:1.55}
  .public-home-page .benefits{gap:10px}
  .public-home-page .benefit{align-items:flex-start}
  .public-home-page .mesh-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .public-home-page .mesh-actions .btn{width:100%;min-height:46px}
  .public-home-page .skynet-community-links{grid-template-columns:1fr;gap:8px}
  .public-home-page .skynet-community-link{min-height:56px;padding:10px 11px}

  .public-home-page .tools-grid,.public-home-page .academy-showcase,.public-home-page .about-grid{grid-template-columns:1fr!important;gap:12px}
  .public-home-page .tool,.public-home-page .academy-feature,.public-home-page .academy-preview,.public-home-page .what{border-radius:11px}
  .public-home-page .roles{grid-template-columns:1fr!important;gap:9px}
  .public-home-page .role{padding:15px}
  .public-home-page .footer .wrap{width:min(100% - 28px,1180px);display:grid;gap:12px;text-align:left;padding:22px 0}
  .public-home-page .footer .wrap>span:last-child{line-height:1.8}

  /* RNPR and Meshtastic public pages */
  .rnpr-page .wrap{width:min(100% - 28px,1180px)}
  .rnpr-page .rnpr-top{height:auto!important;min-height:0!important;padding:10px 0!important;display:grid;grid-template-columns:1fr;gap:8px;align-items:center!important}
  .rnpr-page .rnpr-brand{font-size:21px}
  .rnpr-page .rnpr-brand small{font-size:7px;white-space:normal}
  .rnpr-page .rnpr-nav{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px!important;width:100%;justify-content:stretch!important}
  .rnpr-page .rnpr-nav>a:not(.login){display:none!important}
  .rnpr-page .rnpr-nav .login{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 10px!important;text-align:center}
  .rnpr-page .rnpr-language,.rnpr-page .public-language-switch{justify-self:end;margin:0}
  .rnpr-page .rnpr-about-hero{padding:42px 0 38px!important}
  .rnpr-page .rnpr-about-hero h1{font-size:clamp(36px,10vw,50px);line-height:1.02;margin:10px 0 14px}
  .rnpr-page .rnpr-about-hero p{font-size:13.5px;line-height:1.58}
  .rnpr-page .rnpr-about-hero .program-pill{margin-top:18px;white-space:normal;line-height:1.35}
  .rnpr-page .rnpr-about-main{padding:28px 0 48px}
  .rnpr-page .rnpr-panel{padding:18px;border-radius:11px;margin-bottom:12px}
  .rnpr-page .rnpr-panel h2{font-size:24px;line-height:1.15}
  .rnpr-page .rnpr-panel h3{font-size:16px}
  .rnpr-page .rnpr-panel p{font-size:12.5px;line-height:1.65}
  .rnpr-page .rnpr-program-grid,.rnpr-page .rnpr-values-grid,.rnpr-page .rnpr-goals-grid,.rnpr-page .rnpr-approach-grid,.rnpr-page .rnpr-two,.meshtastic-page .meshtastic-feature-grid{grid-template-columns:1fr!important;gap:10px}
  .rnpr-page .rnpr-card{padding:15px}
  .rnpr-page .rnpr-links{display:grid;grid-template-columns:1fr;gap:8px}
  .rnpr-page .rnpr-links a{width:100%;min-height:44px;text-align:center}
  .meshtastic-page .mesh-flow{gap:8px}
  .meshtastic-page .mesh-flow>div{padding:20px 16px 16px}
  .meshtastic-page .meshtastic-official-links{display:grid;grid-template-columns:1fr;gap:8px}
  .meshtastic-page .meshtastic-official-links a{width:100%;justify-content:center;text-align:center}
  .rnpr-page-footer .wrap{display:grid;gap:10px;text-align:left}

  /* Impact public page */
  .impact-public-top .wrap{
    width:min(100% - 28px,1180px)!important;height:auto!important;min-height:0!important;padding:10px 0 11px!important;
    display:grid!important;grid-template-columns:1fr;gap:8px!important;align-items:center!important
  }
  .impact-public-brand{font-size:21px;line-height:1}
  .impact-public-brand small{font-size:7px;line-height:1.25;white-space:normal}
  .impact-public-nav{width:100%;display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px!important;align-items:center}
  .impact-public-nav>a:not(.login){display:none!important}
  .impact-public-nav .login{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 10px!important;text-align:center}
  .impact-public-nav .public-language-switch{justify-self:end;margin:0}
  .impact-public-main{padding:0 0 52px!important}
  .impact-dashboard>*:not(.impact-hero){width:min(100% - 28px,1180px)!important}
  .impact-public-body .impact-hero{
    min-height:0!important;padding:38px 14px 34px!important;grid-template-columns:1fr!important;gap:24px!important;align-items:start
  }
  .impact-public-body .impact-hero h1{font-size:clamp(36px,10.5vw,50px)!important;line-height:1.02;margin-bottom:13px}
  .impact-public-body .impact-hero p{font-size:13.5px;line-height:1.58}
  .impact-public-body .impact-hero-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:20px}
  .impact-public-body .impact-paypal-form,.impact-public-body .impact-hero-actions .impact-btn{width:100%}
  .impact-public-body .impact-btn{min-height:46px;border-radius:8px;text-align:center}
  .impact-public-body .impact-goal-card{
    min-height:0!important;aspect-ratio:auto!important;border-radius:18px!important;padding:18px!important;
    grid-template-columns:132px minmax(0,1fr)!important;place-content:initial!important;align-items:center!important;text-align:left!important;gap:18px
  }
  .impact-public-body .impact-ring{width:132px!important}
  .impact-public-body .impact-ring strong{font-size:27px}
  .impact-public-body .impact-goal-copy{margin-top:0!important;min-width:0}
  .impact-public-body .impact-goal-copy strong{font-size:27px;overflow-wrap:anywhere}
  .impact-public-body .impact-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-top:20px!important}
  .impact-public-body .impact-kpis article{padding:16px!important;border-radius:10px}
  .impact-public-body .impact-kpis strong{font-size:24px}
  .impact-public-body .impact-grid,.impact-public-body .impact-project-grid,.impact-public-body .impact-report-grid{grid-template-columns:1fr!important;gap:12px!important}
  .impact-public-body .impact-grid,.impact-public-body .impact-projects-section,.impact-public-body .impact-updates,.impact-public-body .impact-reports,.impact-public-body .impact-donate-section,.impact-public-body .impact-disclosure{margin-top:22px!important}
  .impact-public-body .impact-panel{padding:18px!important;border-radius:11px}
  .impact-public-body .impact-panel h2,.impact-public-body .impact-projects-section h2{font-size:24px!important;line-height:1.14}
  .impact-public-body .impact-panel-head{gap:10px;margin-bottom:12px}
  .impact-public-body .impact-projects-section{padding-top:16px!important}
  .impact-public-body .impact-project-card{border-radius:11px}
  .impact-public-body .impact-project-image{height:140px}
  .impact-public-body .impact-project-body{padding:16px}
  .impact-public-body .impact-update-list article{grid-template-columns:1fr!important;gap:5px!important;padding:13px 0}
  .impact-public-body .impact-donate-section{display:grid!important;gap:16px!important;padding:20px!important;border-radius:12px}
  .impact-public-body .impact-donate-section form,.impact-public-body .impact-donate-section .impact-btn{width:100%}
  .impact-public-body .impact-disclosure{line-height:1.55;padding-bottom:6px}
  .impact-public-footer{padding:22px 14px!important;text-align:center!important;line-height:1.65}
}

@media (max-width: 430px){
  .public-home-page .actions{grid-template-columns:1fr}
  .public-home-page .actions .skynet-donate-btn{grid-column:auto}
  .public-home-page .skynet-hero-social-actions{grid-template-columns:1fr 1fr}
  .public-home-page .radar{width:min(245px,72vw)!important}
  .impact-public-body .impact-goal-card{grid-template-columns:1fr!important;text-align:center!important;justify-items:center!important}
  .impact-public-body .impact-goal-copy{text-align:center}
  .impact-public-body .impact-kpis{grid-template-columns:1fr 1fr!important}
}

@media (max-width: 350px){
  .public-home-page .nav{grid-template-columns:1fr 1fr}
  .public-home-page .public-language-switch{grid-column:1/-1;justify-self:start}
  .public-home-page .skynet-hero-social-actions{grid-template-columns:1fr}
  .impact-public-body .impact-kpis{grid-template-columns:1fr!important}
  .skynet-public-social-actions{grid-template-columns:1fr}
}

/* Safe-area support for the persistent mobile social dock */
@media (max-width: 760px){
  .skynet-mobile-social-dock{left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));padding:7px;gap:7px}
  .public-home-page{padding-bottom:calc(72px + env(safe-area-inset-bottom))!important}
}
