:root{--charcoal:#293839;--teal:#31565b;--light:#689a9e;--paper:#f5f6f2;--ink:#23383a;--line:#d3dcda;--font:"Century Gothic",CenturyGothic,AppleGothic,"Avenir Next",Avenir,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--light);outline-offset:5px}::selection{background:#a6c8c7;color:#203638}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}em{font-style:normal;color:var(--light)}.skip{position:fixed;left:15px;top:-100px;background:white;padding:15px;z-index:50}.skip:focus{top:10px}.header{height:106px;padding:16px 5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:relative;z-index:10}.brand{width:155px}.brand img{width:100%;height:auto;display:block;mix-blend-mode:multiply}.header nav{display:flex;align-items:center;gap:38px;font-size:12px}.header nav a{padding:10px 0}.header nav a:hover{color:#47797d}.nav-contact{margin-left:25px;border-bottom:1px solid var(--teal)}.nav-contact span{margin-left:25px;font-size:20px}.menu-toggle{display:none}.hero{background:var(--charcoal);color:var(--paper);padding:32px 5% 0;overflow:hidden}.hero-top,.hero-bottom,.section-label{display:flex;justify-content:space-between;align-items:center;gap:20px}.eyebrow,.hero-index,.hero-bottom,.section-label,.motion-label,.value-kicker,.footer-bottom{font-size:10px;letter-spacing:2px;line-height:1.7;font-weight:500}.eyebrow{display:flex;align-items:center;gap:10px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#9fc7c8}.hero-index{font-size:9px;color:#a8bbba;letter-spacing:1.5px}.hero-content{position:relative;min-height:594px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center}.hero-copy{padding:48px 0 66px;z-index:1}h1{font-size:clamp(65px,7.5vw,116px);line-height:1.01;letter-spacing:-6px}.hero-copy>p{font-size:15px;line-height:1.9;color:#c1cdca;margin:30px 0 32px}.button{display:inline-flex;gap:45px;align-items:center;justify-content:space-between;padding:18px 24px;font-size:12px;border:1px solid transparent;transition:background .2s,color .2s}.button span{font-size:22px;line-height:1}.pale{background:#e0eae6;color:var(--charcoal)}.pale:hover{background:white}.motion{position:absolute;width:55%;right:-5%;top:0;height:100%}.motion svg{width:100%;height:100%;object-fit:contain}.motion-label{position:absolute;bottom:50px;left:29%;display:grid;font-size:8px;color:#a6c2c0;letter-spacing:2.5px;line-height:2}.hero-bottom{border-top:1px solid #52615e;min-height:69px;font-size:9px;color:#bbcbc7}.hero-bottom a{letter-spacing:0;font-size:11px;color:#e2ebe7}.hero-bottom a span{margin-left:30px}.ticker{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#dfe9e5;padding:28px 5%;font-size:clamp(16px,1.8vw,26px);letter-spacing:-.5px}.asterisk{font-size:29px;color:var(--light)}.section{padding:85px 7% 100px}.section-label{border-top:1px solid var(--line);padding-top:20px;font-size:9px;letter-spacing:1.6px;margin-bottom:64px}.section-label span:last-child{color:#587476}h2{font-size:clamp(42px,4.8vw,70px);line-height:1.1;letter-spacing:-3px}.vision-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:9%}.lead{font-size:clamp(21px,2.1vw,30px);line-height:1.5;letter-spacing:-.6px;margin-bottom:27px}.body-copy{font-family:var(--font);font-size:13px;line-height:1.95;color:#5b6c6b;margin-top:16px;max-width:570px}.text-link{display:inline-flex;font-size:11px;border-bottom:1px solid var(--teal);padding:18px 0 10px;margin-top:12px;gap:65px}.text-link span{font-size:18px}.expertise{background:#e9eeea}.expertise .section-label{border-color:#bfceca}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:50px}.section-heading>p{font-size:13px;line-height:1.9;max-width:360px}.services{display:grid;grid-template-columns:1fr 1fr;gap:8%}.service-tabs{display:flex;flex-direction:column}.service-tabs button{display:flex;align-items:center;text-align:left;border:0;border-top:1px solid #c2cfca;background:transparent;color:var(--teal);padding:27px 0;gap:23px;font-size:20px;letter-spacing:-.5px}.service-tabs button:last-child{border-bottom:1px solid #c2cfca}.service-tabs button>span{font-size:10px;letter-spacing:1px;color:#6b8281}.service-tabs button b{font-size:23px;margin-left:auto;font-weight:400;transition:transform .2s}.service-tabs button[aria-selected=true]{color:#1c3d40}.service-tabs button[aria-selected=true] b{transform:rotate(45deg)}.service-tabs button[aria-selected=true]>span{color:#234e52}.service-detail{padding-top:10px}.detail-art{height:130px;position:relative;overflow:hidden;margin-bottom:26px}.detail-art i{display:block;width:86px;height:145px;position:absolute;top:-20px;left:42px;border:1px solid #96b3af;transform:skew(-30deg)}.detail-art i:nth-child(2){left:95px;background:#689a9e55}.detail-art i:nth-child(3){left:148px;background:#31565b}.detail-art>span{position:absolute;right:0;bottom:3px;font-size:8px;letter-spacing:2px;color:#637c78}.service-detail article .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:14px}.service-detail h3{font-size:27px;line-height:1.25;letter-spacing:-1px;max-width:350px}.service-detail article>p:last-child{font-size:12px;line-height:1.9;color:#586f6d;margin-top:16px;max-width:390px}[hidden]{display:none!important}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px}.values-grid article{padding:0 34px;border-right:1px solid var(--line);position:relative}.values-grid article:first-child{padding-left:0}.values-grid article:last-child{padding-right:0;border:0}.value-number{font-size:10px;letter-spacing:2px;color:#6b8583}.values-grid svg{display:block;width:65px;height:65px;margin:30px 0;fill:none;stroke:var(--teal);stroke-width:1.6;stroke-linecap:square}.values h3{font-size:25px;letter-spacing:-1px;margin-bottom:15px}.value-kicker{font-size:8px;color:#5d7d7d;letter-spacing:1.6px;min-height:30px}.values-grid article>p:last-child{font-size:12px;line-height:1.9;color:#5b6c6b;margin-top:14px;max-width:290px}.statement{background:var(--teal);padding:76px 7%;position:relative;overflow:hidden;color:#ecf1e9}.statement .eyebrow{color:#c1d3cd;font-size:9px}.statement-text{font-size:clamp(36px,4.6vw,68px);letter-spacing:-2.5px;line-height:1.2;margin-top:32px;position:relative;z-index:1}.statement-text em{color:#b1d0cd}.statement-mark{position:absolute;right:6%;top:-60px;line-height:1;font-size:390px;color:#689a9e;opacity:.38;font-family:Arial,sans-serif}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.contact-grid>div>p{font-size:13px;line-height:1.9;margin-top:28px}.contact-placeholder{margin-top:40px;padding-left:15px;border-left:2px solid var(--light)}.contact-placeholder .eyebrow{font-size:8px}.contact-placeholder p{font-size:12px;line-height:1.8;color:#637978;margin-top:7px}#brief-form h3{font-size:23px;letter-spacing:-.7px}.form-note{font-size:11px;line-height:1.8;color:#637472;margin:12px 0 28px;max-width:420px}label{display:block;font-size:10px;line-height:1.7;margin-bottom:23px;letter-spacing:.2px}label>span{color:#50787a}input,textarea{display:block;width:100%;border:0;border-bottom:1px solid #bdcdca;padding:11px 0;background:transparent;border-radius:0;font-size:12px;color:var(--ink);resize:vertical}input::placeholder,textarea::placeholder{color:#72827e;opacity:1}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}.dark{background:var(--charcoal);color:var(--paper);width:100%}.dark:hover{background:var(--teal)}.form-status{font-size:11px;line-height:1.7;margin-top:12px;color:#31565b}footer{background:#223233;padding:50px 7% 25px;color:#d5e1db;display:flex;align-items:center;flex-wrap:wrap;gap:40px}.footer-name{font-size:36px;font-weight:bold;letter-spacing:-1px;line-height:1}.footer-name span{display:block;font-size:7px;letter-spacing:3px;font-weight:400;margin-top:8px}footer>p{font-size:12px;color:#a6bbb5;margin-left:auto}footer>a:last-of-type{font-size:10px;margin-left:70px}.footer-bottom{width:100%;display:flex;justify-content:space-between;border-top:1px solid #465b57;padding-top:22px;margin-top:10px;color:#a3b8b0;font-size:8px;letter-spacing:1px}@media(min-width:1600px){.hero-content{min-height:690px}.hero-copy{padding:90px 0}}@media(max-width:950px){.header nav{gap:20px}.nav-contact{margin-left:0}.hero-content{min-height:540px}h1{letter-spacing:-4px}.motion{right:-14%;width:65%;opacity:.8}.hero-index{display:none}.section{padding:65px 6% 75px}.vision-grid{gap:6%}.services{gap:6%}.service-tabs button{font-size:17px}.values-grid article{padding:0 22px}.contact-grid{gap:7%}.section-label{margin-bottom:45px}.statement-mark{right:-70px;opacity:.23}}@media(max-width:650px){html{scroll-padding-top:20px}.header{height:88px;padding:13px 6%}.brand{width:125px}.menu-toggle{display:flex;align-items:center;gap:20px;background:none;border:0;font-size:12px;color:var(--ink);padding:12px 0}.menu-toggle span{font-size:20px}.header nav{display:none;position:absolute;top:88px;left:0;right:0;background:var(--paper);padding:20px 6% 30px;border-top:1px solid var(--line);box-shadow:0 10px 16px #20363818}.header nav.is-open{display:flex;align-items:stretch;flex-direction:column;gap:12px}.nav-contact{width:fit-content}.hero{padding:25px 6% 0}.hero-top .eyebrow{font-size:8px}.hero-content{min-height:640px;display:block}.hero-copy{padding:42px 0 210px}h1{font-size:clamp(54px,13.7vw,88px);letter-spacing:-3.4px}.hero-copy>p{font-size:12px;margin:25px 0;line-height:1.9}.button{font-size:11px;padding:16px 20px}.motion{top:auto;bottom:-45px;right:-19%;width:85%;height:330px;opacity:.7;pointer-events:none}.motion-label{display:none}.hero-bottom{font-size:7px;gap:10px;min-height:62px;position:relative;z-index:2}.hero-bottom a{font-size:9px}.hero-bottom a span{margin-left:10px}.ticker{padding:23px 6%;flex-wrap:wrap;justify-content:center;gap:12px 17px;font-size:15px}.ticker .asterisk{font-size:20px}.ticker .asterisk:last-child{display:none}.section{padding:55px 6% 65px}.section-label{font-size:8px;letter-spacing:1.2px;margin-bottom:35px}.section-label>span:last-child{display:none}h2{font-size:43px;letter-spacing:-2px}.vision-grid,.services,.contact-grid{grid-template-columns:1fr;gap:35px}.lead{font-size:22px;line-height:1.5}.body-copy{font-size:12px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:23px;font-size:12px}.services{gap:30px}.service-tabs button{padding:20px 0;font-size:19px}.detail-art{height:100px;margin-bottom:24px}.detail-art i{height:120px}.service-detail h3{font-size:27px}.service-detail article{min-height:165px}.values-grid{grid-template-columns:1fr;gap:28px;margin-top:35px}.values-grid article,.values-grid article:first-child,.values-grid article:last-child{padding:25px 0 0 80px;border:0;border-top:1px solid var(--line)}.value-number{position:absolute;top:27px;left:0}.values-grid svg{position:absolute;top:57px;left:0;width:47px;height:47px;margin:0}.values h3{font-size:24px}.value-kicker{min-height:0;font-size:7px}.values-grid article>p:last-child{font-size:12px}.statement{padding:55px 6%}.statement-text{font-size:38px;letter-spacing:-1.6px}.statement .eyebrow{font-size:7px}.statement-mark{font-size:270px;right:-50px;top:-5px}.contact-grid{gap:45px}.contact-placeholder{margin-top:25px}.form-row{gap:20px}#brief-form h3{font-size:23px}footer{padding:38px 6% 23px;gap:25px}.footer-name{font-size:31px}footer>p{font-size:10px}footer>a:last-of-type{margin-left:0;width:100%}.footer-bottom{font-size:7px;gap:15px;align-items:flex-start}.footer-bottom>span:last-child{text-align:right;max-width:120px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Events navigation */
.header nav{gap:28px}.events-nav{position:relative}.events-toggle{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:inherit;font-size:12px;padding:12px 0}.events-toggle:hover{color:#47797d}.events-toggle>span{font-size:16px;transition:transform .2s}.events-toggle[aria-expanded=true]>span{transform:rotate(180deg)}.events-submenu{position:absolute;top:calc(100% + 10px);left:-20px;width:265px;padding:10px 20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 14px 30px #2036381c}.header nav .events-submenu a{display:block;padding:12px 0}.event-link-title{display:flex;justify-content:space-between;font-size:15px}.event-link-title>span{font-size:19px}.event-link-detail{display:block;margin-top:10px;font-size:10px;line-height:1.7;color:#4f7274}.events-submenu a:hover .event-link-title{color:#47797d}@media(max-width:950px){.header nav{gap:16px}.brand{width:135px}.nav-contact span{margin-left:12px}}@media(max-width:650px){.header nav{gap:12px}.brand{width:125px}.events-toggle{width:100%;justify-content:space-between}.events-submenu{position:static;width:100%;margin:5px 0 8px;box-shadow:none;background:#e9eeea;border:0;border-left:2px solid var(--light);padding:6px 17px}.event-link-detail{margin-top:6px}}

/* Student project disclosures */
#brief-form h3{font-size:23px;letter-spacing:-.7px}.inline-link,.policy-grid a{text-decoration:underline;text-underline-offset:3px}.button:disabled{opacity:.55;cursor:not-allowed}.project-information{background:#e9eeea}.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.policy-grid article{scroll-margin-top:30px}.policy-grid h2{font-size:38px;letter-spacing:-1.5px;margin-top:12px}.policy-grid h3{font-size:16px;letter-spacing:-.3px;margin:28px 0 10px}.policy-grid p{font-size:12px;line-height:1.9;color:#445d5d;margin-top:10px}.policy-grid .eyebrow{font-size:9px}.policy-date{font-size:10px!important;color:#637978!important}.project-disclosure{width:100%;border-top:1px solid #465b57;padding-top:22px;display:flex;justify-content:space-between;gap:25px}.project-disclosure p{font-size:11px;line-height:1.8;color:#c1d1ca}.project-disclosure nav{display:flex;gap:24px;font-size:11px;white-space:nowrap}.project-disclosure a{text-decoration:underline;text-underline-offset:4px}@media(max-width:650px){.policy-grid{grid-template-columns:1fr;gap:48px}.project-disclosure{display:block}.project-disclosure nav{margin-top:16px}.policy-grid h2{font-size:34px}}

.events-submenu>a+a{border-top:1px solid var(--line)}

#project-contact-form select{display:block;width:100%;padding:12px 0;border:0;border-bottom:1px solid #bdcdca;background:transparent;font:inherit;font-size:12px;color:var(--ink)}.project-contact-section{background:#f5f6f2;position:relative}.contact-anchor{position:absolute;top:0;scroll-margin-top:30px}
