:root{--nova-cream:#f7f5f3;--nova-soft-purple:#f3eef2;--nova-pink:#ff8a93;--nova-purple:#c8202f;--nova-dark-purple:#2d0e2a;--nova-midnight:#1c1b1a;--nova-ink:#1c1b1a;--nova-muted:#5c5654;--nova-grid:#e8e2df;--firefox-gradient:linear-gradient(135deg, #ff5a65 0%, #c8202f 100%)}body{background:0 0}.project-hero{background:radial-gradient(60% 70% at 85% 110%, #c8202f8c 0%, #c8202f26 45%, transparent 70%), radial-gradient(50% 60% at 10% -10%, #2d0e2ae6 0%, transparent 70%), var(--nova-midnight);color:#fff;min-height:600px;padding:var(--spacing-xl) var(--spacing-md) calc(var(--spacing-xl) + 30px);text-align:center;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.project-hero .eyebrow{font-family:var(--font-body);letter-spacing:.25em;text-transform:uppercase;color:var(--nova-pink);margin-bottom:var(--spacing-sm);font-size:.85rem;font-weight:700;display:block}.project-hero h1{font-size:clamp(2.5rem,8vw,3.75rem);font-family:var(--font-body);letter-spacing:.05em;margin:0;font-weight:700}.project-hero h2{font-size:clamp(1.25rem,3vw,1.75rem);font-family:var(--font-heading);margin-top:var(--spacing-md);font-style:italic}.stats-band{background:linear-gradient(to bottom, var(--nova-midnight) 0, var(--nova-midnight) 90px, #fff 90px);padding:0 var(--spacing-md)}.stats{gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;display:grid}.stat{padding:var(--spacing-md);text-align:center;background:#fff;border-radius:20px;box-shadow:0 12px 40px #2103402e}.stat-number{font-family:var(--font-body);color:var(--nova-ink);font-size:clamp(2rem,5vw,2.75rem);font-weight:700;line-height:1.1;display:block}.stat-label{margin-top:var(--spacing-xs);color:var(--nova-muted);font-size:.95rem;line-height:1.5;display:block}.nova-section{color:var(--nova-ink);padding:var(--spacing-xl) var(--spacing-md);background:#fff}.nova-section.cream{background:var(--nova-cream)}.nova-section.tint{background:var(--nova-soft-purple)}.nova-section .container{padding:0}.section-heading{font-size:clamp(1.5rem,4vw,2rem);font-family:var(--font-body);letter-spacing:.05em;text-align:center;color:var(--nova-purple);margin-bottom:var(--spacing-md);font-weight:700}.section-intro{max-width:720px;margin:0 auto var(--spacing-lg) auto}.section-intro p{text-align:center;font-size:1.05rem;line-height:1.7}.section-intro p+p{margin-top:var(--spacing-sm)}.content-grid{gap:var(--spacing-lg);grid-template-columns:1fr 1fr;max-width:1100px;margin:0 auto;display:grid}.content-grid h3{font-family:var(--font-heading);color:var(--nova-ink);margin-bottom:var(--spacing-md);font-style:italic}.content-grid p{font-size:1rem;line-height:1.7}.content-grid p+p{margin-top:var(--spacing-sm)}.role-list{gap:var(--spacing-sm);list-style:none;display:grid}.role-list li{padding-left:1.5rem;line-height:1.6;position:relative}.role-list li:before{content:"";background:var(--firefox-gradient);border-radius:50%;width:10px;height:10px;position:absolute;top:.55em;left:0}.nova-image{border-radius:16px;width:100%;height:auto}.image-block{max-width:1100px;margin:0 auto var(--spacing-md) auto}.image-pair{gap:var(--spacing-md);grid-template-columns:1fr 1fr;max-width:1100px;margin:0 auto;display:grid}.caption{color:var(--nova-muted);text-align:center;margin-top:var(--spacing-sm);font-size:.9rem;line-height:1.5}.platform-list{gap:var(--spacing-md);grid-template-columns:1fr 1fr;max-width:900px;margin:0 auto;display:grid}.feedback-list{gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;display:grid}.feedback-card{padding:var(--spacing-md);background:#fff;border-radius:16px}.feedback-card h4{font-family:var(--font-body);color:var(--nova-ink);margin-bottom:var(--spacing-xs)}.feedback-card p{color:var(--nova-muted);font-size:.95rem;line-height:1.6}.chart-card{max-width:1100px;padding:var(--spacing-md);background:#fff;border-radius:20px;margin:0 auto}.chart-title{font-family:var(--font-body);color:var(--nova-ink);font-size:1.15rem;font-weight:700}.chart-subtitle{color:var(--nova-muted);margin-bottom:var(--spacing-sm);font-size:.95rem}.chart-wrap{position:relative}.chart-wrap svg{width:100%;height:auto;display:block;overflow:visible}.chart-tooltip{pointer-events:none;background:var(--nova-ink);color:#fff;white-space:nowrap;opacity:0;border-radius:8px;padding:6px 10px;font-size:.85rem;line-height:1.4;transition:opacity .15s;position:absolute;transform:translate(-50%,calc(-100% - 12px))}.chart-source{color:var(--nova-muted);margin-top:var(--spacing-sm);font-size:.85rem}.chart-source a,.chart-table summary{cursor:pointer;text-decoration:underline}.chart-table table{border-collapse:collapse;width:100%;margin-top:var(--spacing-sm);font-size:.9rem}.chart-table th,.chart-table td{text-align:left;border-bottom:1px solid var(--nova-grid);padding:4px 8px}.chart-table td:last-child,.chart-table th:last-child{text-align:right}@media (width<=768px){.project-hero{min-height:420px}.stats,.content-grid,.image-pair,.platform-list,.feedback-list{grid-template-columns:1fr}.stats-band{padding:0 var(--spacing-sm)}.stat{padding:var(--spacing-sm) var(--spacing-md)}}@media (width<=480px){.nova-section{padding:var(--spacing-lg) var(--spacing-sm)}}.pillars{gap:var(--spacing-md);grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;display:grid}.pillar{padding:var(--spacing-md);color:#050505;background:#f7f7f7;border-radius:16px}.pillar-icon{width:28px;height:28px;margin-bottom:var(--spacing-md);color:#050505;display:block}.pillar h4{font-family:var(--font-body);color:#050505;margin-bottom:.35rem;font-size:1.375rem;font-weight:600;line-height:1.3}.pillar-summary{color:var(--nova-muted);margin-bottom:var(--spacing-sm);font-size:1rem;line-height:1.5}.pillar ul{padding:0;list-style:none}.pillar li{border-top:1px solid #e3e3e3;padding:.75rem 0;font-size:.95rem;line-height:1.5}.mission-quote{max-width:820px;margin:0 auto var(--spacing-lg) auto;text-align:center;font-family:var(--font-heading);color:var(--nova-ink);font-size:clamp(1.25rem,3vw,1.75rem);font-style:italic;line-height:1.5}.chip-list{justify-content:center;gap:var(--spacing-xs);flex-wrap:wrap;max-width:900px;margin:0 auto;list-style:none;display:flex}.chip-list li{border:1px solid var(--nova-grid);background:#fff;border-radius:999px;padding:.4rem 1rem;font-size:.95rem}.nova-image.framed{border:1px solid var(--nova-grid);background:#fff}@media (width<=768px){.pillars{grid-template-columns:1fr}}
