/* AfriPass public landing + partner-page mobile integration. Additive only. */
:root{--afr-safe-bottom:env(safe-area-inset-bottom,0px)}
html,body{max-width:100%;overflow-x:clip}
.site-header,.site-header *{box-sizing:border-box}
.hero-grid,.partner-hero-grid,.form-shell,.partner-card,.feature-grid,.footer-grid{min-width:0}
.hero-copy,.partner-hero-copy,.hero-visual,.partner-hero-visual{min-width:0}
.hero h1,.partner-hero h1,.hero .lead,.partner-hero .lead{overflow-wrap:break-word}
img,svg,video,iframe{max-width:100%}
.mobile-only{display:none}
@media(max-width:1120px){
 :root{--header:76px}
 .site-header{z-index:1000}
 .site-header .nav-wrap{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:76px;height:auto;padding-block:10px;flex-wrap:nowrap}
 .site-header .brand{flex:0 1 auto;min-width:0;margin-right:auto}
 .site-header .brand img{max-width:132px;width:100%;height:auto}
 .site-header .menu-toggle{display:flex!important;flex:0 0 43px;order:3;margin:0}
 .site-header .nav-actions{display:flex;flex:0 0 auto;gap:0;margin:0;order:2}
 .site-header .nav-actions > .nav-btn{display:none!important}
 .site-header .nav-actions .lang-switch{display:flex}
 .site-header > .container .lang-switch{flex:0 0 auto;order:2;margin:0}
 .site-header .nav-app-actions{display:none!important}
 .site-header .nav-links{position:absolute!important;z-index:30;display:none;flex-direction:column!important;align-items:stretch!important;left:12px!important;right:12px!important;top:calc(100% + 3px)!important;margin:0!important;max-height:min(70vh,600px);overflow-y:auto;overscroll-behavior:contain;border-radius:18px!important;padding:12px!important;background:rgba(255,255,255,.98)!important;box-shadow:0 18px 46px rgba(13,27,42,.20);width:auto!important}
 .site-header .nav-links.open{display:flex!important}
 .site-header .nav-links a{display:block;white-space:normal!important;text-align:left!important;padding:12px 15px!important;min-height:44px}
 .site-header .nav-links .mobile-only{display:block!important}
 .partner-page .site-header .nav-links .mobile-only{display:block!important}
 .hero-grid,.partner-hero-grid{grid-template-columns:minmax(0,1fr)!important}
 .hero-copy,.partner-hero-copy{max-width:100%;min-width:0}
 .hero-actions{display:flex;flex-wrap:wrap;gap:12px}
 .hero-actions .btn{min-width:0;max-width:100%}
 .identity-stage{max-width:100%;width:min(480px,100%)}
}
@media(max-width:680px){
 :root{--header:70px}
 .container{width:calc(100% - 32px)!important;max-width:100%!important}
 .site-header .nav-wrap{min-height:68px;gap:8px}
 .site-header .brand img{max-width:118px}
 .site-header .lang-switch{padding:3px!important;gap:0}
 .site-header .lang-switch button{min-width:30px!important;height:32px!important;padding:0 5px!important;font-size:12px!important}
 .site-header .menu-toggle{width:42px;height:42px;flex-basis:42px;min-width:42px}
 .hero,.partner-hero{padding-top:48px!important}
 .hero h1,.partner-hero h1{font-size:clamp(34px,10vw,48px)!important;line-height:1.08!important;letter-spacing:-.045em!important;max-width:100%}
 .hero .lead,.partner-hero .lead{font-size:16px!important;line-height:1.65!important;max-width:100%}
 .hero-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;width:100%}
 .hero-actions .btn{width:100%!important;min-width:0!important;max-width:100%!important;justify-content:center!important;text-align:center!important;white-space:normal!important;overflow-wrap:anywhere}
 .trust-row{justify-content:center}
 .identity-stage{min-height:420px!important}
 .floating-chip{display:none!important}
 .social-dock{position:static!important;display:flex!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;transform:none!important;gap:10px!important;padding:16px 12px!important}
 .social-dock a{flex:0 0 40px!important}
 .floating-partner-cta{position:static!important;display:flex!important;max-width:calc(100% - 32px)!important;width:max-content!important;min-height:44px!important;margin:10px auto 22px!important;transform:none!important}
 .partner-sticky-cta{max-width:calc(100% - 32px)!important;left:16px!important;right:16px!important;bottom:calc(10px + var(--afr-safe-bottom))!important;justify-content:center!important;min-width:0!important}
 .partner-page{padding-bottom:calc(74px + var(--afr-safe-bottom))}
 .partner-page .track-card,.partner-page .track-card.featured{max-width:100%;min-width:0}
 .partner-page .tracks-grid{grid-template-columns:minmax(0,1fr)!important}
 .partner-page .track-card h3{overflow-wrap:break-word}
 .field-grid,.form-row,.footer-grid{grid-template-columns:minmax(0,1fr)!important}
 input,select,textarea{max-width:100%;min-width:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-visual *, .identity-stage *{animation:none!important}}
