:root{--expo-green: #1b8;--expo-red: #d44;--expo-blue: #66d;--expo-orange: #c73;--expo-pink: #d6d;--highlighter-green: #cfe;--highlighter-red: #fdd;--highlighter-blue: #ddf;--highlighter-orange: #fec;--highlighter-pink: #fdf;--bg-teal: #e6f7ff;--surface-bg: #f9faf9;--surface-dot: #e8eae8;--oyp-teal: #3499ba;--compass-lavender: #866bc7;--bif-indigo: #3d49ac;--dark-gray: #555;--med-gray: #888;--light-gray: #ccc;--shadow-card: 0 4px 6px rgba(25, 25, 25, .15)}.green-expo{color:var(--expo-green)!important}.red-expo{color:var(--expo-red)!important}.blue-expo{color:var(--expo-blue)!important}.orange-expo{color:var(--expo-orange)!important}.pink-expo{color:var(--expo-pink)!important}.swipe{background-image:linear-gradient(var(--swipe-tint),var(--swipe-tint));background-repeat:no-repeat;background-position:left center;background-size:0% 100%;border-radius:3px;padding:0 1px;font-weight:600;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .3s ease,color .3s ease}a.swipe:link,a.swipe:visited{color:var(--swipe-ink)}a.swipe:hover,a.swipe:active{background-size:100% 100%;color:color-mix(in srgb,var(--swipe-ink) 50%,black)}.swipe-green{--swipe-tint: var(--highlighter-green);--swipe-ink: var(--expo-green)}.swipe-red{--swipe-tint: var(--highlighter-red);--swipe-ink: var(--expo-red)}.swipe-blue{--swipe-tint: var(--highlighter-blue);--swipe-ink: var(--expo-blue)}.swipe-orange{--swipe-tint: var(--highlighter-orange);--swipe-ink: var(--expo-orange)}.swipe-pink{--swipe-tint: var(--highlighter-pink);--swipe-ink: var(--expo-pink)}body{font-family:Open Sans,sans-serif;color:#000}p,ol,ul{font-family:Open Sans,sans-serif;font-weight:400;line-height:1.65}ul,ol{padding-left:20px}li{margin-bottom:5px}h1{font-family:Mulish,sans-serif;font-weight:300;font-size:400%;margin:0}h2{font-family:Mulish,sans-serif;font-weight:400;font-size:180%;margin:0}h3{font-family:Mulish,sans-serif;font-weight:300;font-size:130%;margin:0}strong{font-weight:600}.underline{text-decoration:underline!important}.center{text-align:center;display:flex;justify-content:center}.caption{color:var(--dark-gray);font-size:90%;margin:5px 0 0}.caption a{color:var(--dark-gray)}aside.caption{color:var(--cs-accent-deep)}aside.caption p{margin:0}aside.caption ul{margin:2px 0 0}aside.caption p:has(b){margin-top:14px}aside.caption>:first-child{margin-top:0}a:link,a:visited{text-decoration:none;color:#000;transition:.3s}a:hover,a:active{text-decoration:none;color:var(--med-gray)}.button{display:inline-block;padding:9px 22px;margin-top:26px;border-radius:8px;border-style:solid;border-width:3px;border-color:var(--expo-green);color:var(--expo-green);text-align:center;background-image:linear-gradient(var(--expo-green),var(--expo-green));background-repeat:no-repeat;background-size:0% 100%;transition:background-size .3s ease,color .15s ease .18s}.button:hover,.button:active{color:#fff;background-size:100% 100%}main a h3{font-family:Open Sans,sans-serif;font-weight:600}.semi-round{border-radius:7px}.shadow{box-shadow:0 2px 3px #19191926}.padded{padding-left:5%;padding-right:5%}.bump-down{margin-top:20px}.bump-up{margin-top:-10px}body{margin:10px}html.whiteboard{background-color:var(--surface-bg);background-image:radial-gradient(var(--surface-dot) 1.5px,transparent 1.5px);background-size:22px 22px}.field-patch-group{isolation:isolate}.field-patch{position:relative}.field-patch:before{content:"";position:absolute;inset:-6px -14px;z-index:-1;background:var(--surface-bg);border-radius:14px;filter:blur(10px)}.grid{width:100%;margin:auto;display:grid;grid-template-columns:repeat(8,1fr);gap:10px}.center-wide,.center-narrow,.left-half,.right-half{grid-column:1 / 9;margin-bottom:20px}.quarter{width:90%;padding-left:5%;float:left;text-align:center}main{padding-top:40px}@media screen and (max-width:1220px){.desktop-only{display:none}h1{font-size:300%!important}}@media screen and (min-width:720px){.grid{width:80%;gap:20px;padding-left:10%;padding-right:10%}.quarter{width:50%;padding-left:0}}@media screen and (min-width:1220px){body{margin:0}.grid{width:1180px;grid-template-columns:repeat(12,80px);gap:20px;padding-left:calc((100% - 1180px)/2);padding-right:calc((100% - 1180px)/2)}.center-wide{grid-column:2 / 12;margin-bottom:40px}.center-narrow{grid-column:3 / 11;margin-bottom:40px}.left-half{grid-column:2 / 7;margin-bottom:40px}.right-half{grid-column:7 / 12;margin-bottom:40px}.quarter{width:25%}.padded{padding-left:10%;padding-right:10%}.bump-down{margin-top:30px}.bump-up{margin-top:-20px}main{padding-top:60px}}body.sticky-footer{min-height:100vh;display:flex;flex-direction:column}@media screen and (max-width:1220px){body.sticky-footer{min-height:calc(100vh - 20px)}}body.sticky-footer main{margin-top:0;margin-bottom:auto}nav{height:40px;padding:10px;margin-top:5px}#nav-logo{grid-column:1 / 5;display:flex}#nav-links{grid-column:5 / 9;padding-top:2px;display:flex;flex-direction:row;justify-content:flex-end}.nav-item{padding-left:20px;font-weight:500}footer{margin:40px 0}#footer-copyright{grid-column:1 / 9;display:flex;flex-direction:row;justify-content:center}#footer-copyright h3{font-weight:600}#footer-links{grid-column:1 / 9;display:flex;flex-direction:row;justify-content:center;padding-right:20px}@media screen and (min-width:1220px){nav{height:50px;padding:20px;margin-top:10px}#nav-links{grid-column:7 / 13}.nav-item{padding-left:40px}footer{margin:60px 0}#footer-copyright{grid-column:2 / 6;justify-content:left}#footer-links{grid-column:6 / 12;justify-content:flex-end;padding-right:0}}#header-text{grid-column:1 / 9;padding-top:10px}.project{grid-column:1 / 9;padding:10px;margin:10px 0;width:calc(100% - 20px);border-radius:14px;background-color:#fff;box-shadow:var(--shadow-card);transition:transform .2s ease,box-shadow .2s ease}.project:hover{transform:translateY(-3px);box-shadow:0 8px 14px #1919192e}.project-summary{padding:20px 0;width:100%}.project-image{width:100%;aspect-ratio:3 / 2;object-fit:cover;border-radius:8px}#about{margin-top:30px}#about-text{text-align:left}#about h2{margin-bottom:16px;text-align:center}#about-topics{margin-top:30px}.about-topic{margin-bottom:24px;scroll-margin-top:80px}.about-topic:last-child{margin-bottom:0}.about-topic h3{font-weight:600;margin-bottom:6px}.about-topic p{margin:0}#about-cta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:28px;margin-top:32px}#about-cta .button{margin-top:0}#about a h3{font-family:Open Sans,sans-serif;font-weight:600}#about-photo{margin:60px 0 0}#about-photo img{width:100%;display:block}#about-photo figcaption{text-align:center}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 10px}.tag{font-size:78%;font-weight:600;letter-spacing:.2px;padding:2px 9px;border-radius:5px;background-color:var(--tag-tint);color:var(--tag-ink)}.tag-green{--tag-tint: var(--highlighter-green);--tag-ink: color-mix(in srgb, var(--expo-green) 50%, black)}.tag-red{--tag-tint: var(--highlighter-red);--tag-ink: color-mix(in srgb, var(--expo-red) 50%, black)}.tag-blue{--tag-tint: var(--highlighter-blue);--tag-ink: color-mix(in srgb, var(--expo-blue) 50%, black)}.tag-orange{--tag-tint: var(--highlighter-orange);--tag-ink: color-mix(in srgb, var(--expo-orange) 50%, black)}.tag-pink{--tag-tint: var(--highlighter-pink);--tag-ink: color-mix(in srgb, var(--expo-pink) 50%, black)}@media only screen and (min-width:1220px){#header-text{grid-column:2 / 9}#header-image{grid-column:9 / 12}.project{grid-column:2 / 12;display:flex;flex-direction:row;padding:30px;margin-bottom:30px;margin-left:-30px;width:100%;height:300px}.project-summary{margin-left:40px;padding-top:20px;width:100%}.project-image{width:450px;height:300px}}html{scroll-behavior:smooth}.cs-sheet{position:relative;isolation:isolate;padding:20px 0 40px}.cs-sheet:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;transform:translate(-50%);width:100%;background:#fff;border-radius:14px;box-shadow:var(--shadow-card)}@media screen and (min-width:720px){.cs-sheet:before{width:84%}}@media screen and (min-width:1220px){.cs-sheet:before{width:1080px}}.cs-hero{background-color:var(--cs-accent-deep);background-image:linear-gradient(135deg,var(--cs-accent-deep),var(--cs-accent));border-radius:14px;padding:44px 28px;text-align:center;color:#fff}.cs-hero h1{color:#fff}.cs-eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:80%;font-weight:700;color:#ffffffb3;margin:0 0 10px}.cs-tagline{max-width:660px;margin:16px auto 0;color:#ffffffd9;font-size:108%}.cs-hero-figure{max-width:760px;margin:30px auto 0;border-radius:8px;overflow:hidden;box-shadow:0 8px 20px #00000047}.cs-hero-figure img{display:block;width:100%;aspect-ratio:3 / 2;object-fit:cover}.cs-h2{color:var(--cs-accent);text-align:center}.cs-label{text-transform:uppercase;letter-spacing:1.5px;font-size:80%;font-weight:700;color:var(--cs-accent);margin:0 0 8px}.cs-card{background:var(--cs-accent-wash);border-radius:14px;padding:24px 22px}.cs-quote{border-left:4px solid var(--cs-accent);padding-left:18px;margin:10px 0 0;font-size:116%;line-height:1.5;color:var(--cs-accent-deep)}.cs-quote>:first-child{margin-top:0}.cs-quote>:last-child{margin-bottom:0}.cs-stats{display:grid;grid-template-columns:1fr;gap:16px}@media screen and (min-width:1220px){.cs-stats{grid-template-columns:repeat(3,1fr)}}.cs-stat{text-align:center}.cs-stat-num{font-family:Mulish,sans-serif;font-weight:800;font-size:210%;line-height:1.1;color:var(--cs-accent-deep);margin:0 0 8px}.cs-stat-label{margin:0;color:var(--dark-gray);font-size:94%}.cs-steps{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:16px}.cs-step{display:flex;gap:18px;align-items:flex-start}.cs-step-num{flex:none;font-family:Mulish,sans-serif;font-weight:800;font-size:150%;line-height:1;color:var(--cs-accent);margin-top:2px}.cs-step-title{font-family:Mulish,sans-serif;font-weight:600;font-size:122%;line-height:1.25;color:var(--cs-accent-deep);margin:0 0 8px}.cs-step-body p{margin:0}@keyframes cs-glow{0%{background-color:var(--glow-bg, var(--bg-teal))}70%{background-color:var(--glow-bg, var(--bg-teal))}to{background-color:transparent}}.cs-segment:target,.about-topic:target{animation:cs-glow 3s ease;border-radius:7px}.coming-soon{padding:60px 0;text-align:center}.coming-soon .label{color:var(--med-gray);font-size:110%;margin-top:10px}
