:root{--color-primary-purple:#60269e;--color-dark-blue:#032989}body{background:0 0}.project-hero{color:#fff;min-height:600px;padding:var(--spacing-xl) var(--spacing-md);padding-bottom:var(--spacing-xl);background:url(/images/headergraphic.png) 50%/cover;justify-content:center;align-items:center;display:flex;position:relative}.project-hero h1{font-size:clamp(2.5rem,8vw,3.75rem);font-family:var(--font-body);text-align:center;letter-spacing:.05em;max-width:1000px;margin:0;font-weight:700}.background-section{background:var(--color-primary-purple);padding:var(--spacing-lg) var(--spacing-md);margin:-100px var(--spacing-md) var(--spacing-sm) var(--spacing-md);z-index:10;border-radius:20px;position:relative}.background-section .container{max-width:100%;padding:0}.background-section h2{font-size:clamp(1.5rem,3vw,1.75rem);font-family:var(--font-heading);text-align:center;color:#fff;margin-bottom:var(--spacing-md);font-style:italic}.background-content{color:#fff;max-width:1200px;margin:0 auto}.background-content p{color:#fff;text-align:center;font-size:.95rem;line-height:1.6}.content-section{color:#000;padding:var(--spacing-xl) var(--spacing-md);background:#fff}.content-section h2{font-size:clamp(1.5rem,4vw,2rem);font-family:var(--font-body);letter-spacing:.05em;text-align:center;color:#60269e;margin-bottom:var(--spacing-lg);font-weight:700}.content-grid{gap:var(--spacing-lg);grid-template-columns:1fr 1fr;max-width:1200px;margin:0 auto;display:grid}.content-grid p{color:#000;font-size:1rem;line-height:1.6}.content-image{width:100%;height:auto}.purple-section{color:#fff;padding:var(--spacing-xl) var(--spacing-md);background:0 0}.purple-section h2{font-size:clamp(1.5rem,4vw,2rem);font-family:var(--font-body);letter-spacing:.05em;text-align:center;margin-bottom:var(--spacing-lg);font-weight:700}.purple-section p{max-width:600px;margin:0 auto var(--spacing-md) auto;color:#fff;font-size:1rem;line-height:1.6}.section-title{font-size:clamp(1.5rem,4vw,2rem);font-family:var(--font-body);letter-spacing:.05em;text-align:center;color:var(--color-primary-purple);margin-bottom:var(--spacing-lg);margin-top:var(--spacing-xl);font-weight:700}.image-grid-2x2{gap:var(--spacing-md);grid-template-columns:1fr 1fr;max-width:1200px;margin:0 auto;display:grid}.image-grid-2x2 img{width:100%;height:auto}.image-grid-2x2.bordered img{border:3px solid var(--color-primary-purple)}.image-grid-2x2.bordered-thin img{border:1px solid var(--color-primary-purple)}.image-grid-2x2.bordered-black img{border:1px solid #000}.scoping-layout{gap:var(--spacing-lg);grid-template-columns:1fr 1fr;align-items:start;max-width:1200px;margin:0 auto;display:grid}.scoping-layout img{width:100%;height:auto}.demo-section{max-width:1200px;margin:0 auto}.video-wrapper{height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.video-wrapper iframe{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.awards-section{background:var(--color-primary-purple);padding:var(--spacing-xl) var(--spacing-md)}.awards-section h2{font-size:clamp(1.5rem,4vw,2rem);font-family:var(--font-body);letter-spacing:.05em;text-align:center;color:#fff;margin-bottom:var(--spacing-md);font-weight:700}.awards-content{text-align:center;max-width:800px;margin:0 auto}.awards-content p{color:#fff;margin-bottom:var(--spacing-md);font-size:1rem;line-height:1.6}.awards-link{color:#fff;font-family:var(--font-body);text-underline-offset:4px;font-size:1rem;font-weight:600;text-decoration:underline;transition:opacity .2s;display:inline-block}.awards-link:hover{opacity:.8}@media (width<=1024px){.background-section{border-radius:0;margin-left:0;margin-right:0}}@media (width<=768px){.project-hero{min-height:400px}.content-grid,.image-grid-2x2,.scoping-layout{grid-template-columns:1fr}.project-hero h1{font-size:2rem}.section-title,.content-section h2{font-size:1.5rem}.demo-section{margin:0}}@media (width<=480px){.project-hero{min-height:300px;padding:var(--spacing-lg) var(--spacing-sm)}.project-hero h1{font-size:1.5rem}.background-section{margin-top:40px}.background-section,.content-section{padding:var(--spacing-lg) var(--spacing-sm)}}
