.campus-footer>.pwa-footer,.site-footer>.pwa-footer{margin:0;font-size:.7rem}.pwa-footer>button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid var(--border);border-radius:999px;background:#ffffff0a;color:var(--fg);font:inherit;font-weight:700;letter-spacing:.06em;cursor:pointer}.pwa-footer>button:hover{border-color:var(--green);color:var(--green)}.pwa-footer>button:focus-visible,.pwa-notice button:focus-visible{outline:2px solid var(--green);outline-offset:2px}.pwa-notice{position:fixed;z-index:39;left:24px;bottom:22px;width:min(380px,calc(100% - 48px));display:flex;align-items:center;gap:12px;padding:12px 10px 12px 14px;background:#14161af2;border:1px solid #ffffff25;border-radius:10px;backdrop-filter:blur(24px);box-shadow:0 10px 40px #0009;font-size:.78rem;line-height:1.45;color:var(--fg)}.pwa-notice img{border-radius:9px;flex:none}.pwa-notice>div{display:grid;gap:2px;min-width:0}.pwa-notice strong{font-size:.8rem}.pwa-notice span,.pwa-steps{color:var(--muted);margin:0}.pwa-steps strong{color:var(--fg);font-size:inherit}.pwa-go{min-height:40px;padding:0 14px;border:0;border-radius:8px;background:var(--green);color:#02030a;font:inherit;font-weight:800}.pwa-close,.pwa-go{flex:none;cursor:pointer}.pwa-close{align-self:flex-start;min-width:36px;min-height:36px;border:0;background:transparent;color:var(--muted);font-size:22px;line-height:1}body:has(.cookie-choice) .pwa-notice{display:none}body:has(.sticky-cta) .pwa-notice{bottom:92px}@media (max-width:600px){.pwa-notice{left:16px;right:16px;width:auto;bottom:calc(16px + env(safe-area-inset-bottom))}body:has(.sticky-cta) .pwa-notice{bottom:calc(84px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:no-preference){.pwa-notice{animation:pwa-in .35s ease-out both}@keyframes pwa-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}