@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}p,h3{margin-block-start:0em;margin-block-end:0em}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;background-color:#fcf9f2;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0}@font-face{font-family:sofia-pro;font-weight:400;font-style:normal;src:url(/assets/SofiaProRegular-5hTsHhUA.otf) format("truetype")}@font-face{font-family:sofia-pro;font-weight:400;font-style:italic;src:url(/assets/SofiaProRegular-Italic-k85vLzGJ.otf) format("truetype")}@font-face{font-family:sofia-pro;font-weight:500;font-style:normal;src:url(/assets/SofiaProMedium-v9FgSEKU.otf) format("truetype")}@font-face{font-family:sofia-pro;font-weight:500;font-style:italic;src:url(/assets/SofiaProMedium-Italic-67WmnzY9.otf) format("truetype")}@font-face{font-family:sofia-pro;font-weight:600;font-style:normal;src:url(/assets/SofiaProSemiBold-yUzDE6mk.otf) format("truetype")}@font-face{font-family:sofia-pro;font-weight:600;font-style:italic;src:url(/assets/SofiaProSemiBold-Italic-9Nqa0pO9.otf) format("truetype")}@font-face{font-family:sofia-pro;font-weight:800;font-style:normal;src:url(/assets/SofiaProBold-dXZ0mm1U.otf) format("truetype")}@font-face{font-family:sofia-pro;font-weight:800;font-style:italic;src:url(/src/assets/fonts/sofia-pro/SofiaProBold-Italic.otf) format("truetype")}@font-face{font-family:sofia-pro;font-weight:900;font-style:normal;src:url(/assets/SofiaProBlack-a96Zqh4-.otf) format("truetype")}@font-face{font-family:sofia-pro;font-weight:900;font-style:italic;src:url(/assets/SofiaProBlack-Italic-FSKM3Ug2.otf) format("truetype")}@font-face{font-family:futura-pt;font-weight:400;font-style:normal;src:url(/assets/futurapt-regular-KqrZFKtC.otf) format("truetype")}@font-face{font-family:futura-pt;font-weight:400;font-style:italic;src:url(/assets/futurapt-regular-italic-X0zTaNBE.otf) format("truetype")}@font-face{font-family:futura-pt;font-weight:500;font-style:normal;src:url(/assets/futurapt-medium-y3xgVjFU.otf) format("truetype")}@font-face{font-family:futura-pt;font-weight:500;font-style:italic;src:url(/assets/futurapt-medium-italic-_8SrcWgE.otf) format("truetype")}@font-face{font-family:futura-pt;font-weight:600;font-style:normal;src:url(/assets/futurapt-demibold-5DPxGPKA.otf) format("truetype")}@font-face{font-family:futura-pt;font-weight:600;font-style:italic;src:url(/assets/futurapt-demibold-italic-axIUktpM.otf) format("truetype")}.projects-wrapper{position:relative;height:180vh}.projects{top:100px;align-items:center;overflow:hidden;display:flex;flex-direction:column;padding-bottom:200px;position:sticky}.projects h2{font-size:3.4rem;margin:0;font-family:sofia-pro}.sliding-carousel{padding:50px 0;display:flex;gap:3%}.hoverHide{display:none}.cardWrapper,.cardWrapperHover{border-radius:15px}.cardWrapper,.cardWrapperHover{cursor:pointer}.cardWrapperHover{max-width:1100px}.cardWrapper p{font-family:sofia-pro,sans-serif;font-weight:400}.cardWrapperHover,.cardWrapper{font-family:sofia-pro,sans-serif;z-index:1}.cardWrapperHover h2{font-weight:800;font-size:5rem;margin-left:-4px}.card{display:flex;flex-direction:row;justify-content:center;justify-content:space-evenly}.cardHover,.card{min-height:200px;display:flex;flex-direction:row}.cardHover{text-align:left;justify-content:space-between}.titleClass{height:80px;display:flex;justify-content:center;align-items:center}.leftPane{opacity:0;width:200px;text-align:left!important}.leftPane p{margin-top:8px;max-height:300px;overflow:hidden}.middlePane{position:relative;z-index:3;width:max-content}.middlePane img{position:absolute;top:50%;left:50%;z-index:2;transform:translate(-50%,-50%)}.rightPane{width:200px;display:flex;flex-direction:column;justify-content:space-between}.leftPane,.rightPane{max-height:300px}.panes{opacity:0}.captionWrapper{text-align:center;overflow:hidden;width:100%;height:70px;display:flex;justify-content:center;flex-direction:column;align-items:center}.captionButton,.captionText{text-align:center}.captionButton{border-style:none;padding:10px 18px;font-weight:600;letter-spacing:.1px;border-radius:25px;width:140px;cursor:pointer;z-index:4;transition:.12s ease-in-out;border:solid 2px #fff;color:#fff}.captionButton:hover,.captionButton:active{background-color:#fff;color:#000}.blackButton{padding:10px 18px;font-weight:600;border-radius:25px;transition:.12s ease-in-out;color:#000;border:solid 2px #000}.blackButton:hover{background-color:#000;color:#fff}.captionText{margin-top:50px}.slideDiv{width:100vw;height:100vh;position:fixed;top:0;left:0;background-color:red}@media only screen and (max-width: 1186px){.titleClass{height:100px}.captionWrapper{margin:20px 0}.captionText{font-size:1.2rem}.svgCircle{height:200px;width:200px}}@media only screen and (min-height: 500px){.cardHover,.card{min-height:200px}.captionText{font-size:1.2rem}}@media only screen and (min-height: 756px){.titleClass{height:90px}.captionText{font-size:1.3rem}.svgCircle{height:300px;width:300px}}@media only screen and (min-height: 856px){.titleClass{height:140px;padding-bottom:20px}.captionWrapper{margin:40px 0}.captionText{font-size:1.3rem}.svgCircle{height:300px;width:300px}}.grid-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-auto-rows:250px;gap:20px;padding:20px;max-width:1200px;margin:0 auto}.projects-grid-page{min-height:100vh;background-color:#fcf9f2;padding:80px 0 40px}.projects-header{text-align:center;margin-bottom:40px;padding:0 20px}.projects-header h1{font-family:sofia-pro,sans-serif;font-weight:800;font-size:3rem;margin:0 0 16px;color:#333}.projects-header p{font-family:sofia-pro,sans-serif;font-size:1.1rem;color:#666;margin:0}.grid-item{border-radius:12px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;position:relative;display:flex;flex-direction:column}.grid-item:hover{box-shadow:0 10px 25px #00000026}.grid-item-small{grid-column:span 1;grid-row:span 1}.grid-item-medium{grid-column:span 2;grid-row:span 1}.grid-item-large{grid-column:span 2;grid-row:span 2}.offset-up{transform:translateY(-15px)}.offset-down{transform:translateY(15px)}.offset-none{transform:translateY(0)}.grid-item.offset-up:hover{transform:translateY(-20px)}.grid-item.offset-down:hover{transform:translateY(10px)}.grid-item.offset-none:hover{transform:translateY(-5px)}.grid-item-content{display:flex;flex-direction:column;height:100%;padding:20px;position:relative}.grid-item-image{flex:1;display:flex;align-items:center;justify-content:center;margin-bottom:15px;overflow:hidden;border-radius:8px}.grid-item-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.grid-item:hover .grid-item-image img{transform:scale(1.05)}.grid-item-text{flex-shrink:0}.grid-item-title{font-family:sofia-pro,sans-serif;font-weight:800;font-size:1.25rem;margin:0 0 8px;line-height:1.2}.grid-item-blurb{font-family:sofia-pro,sans-serif;font-size:.875rem;line-height:1.4;margin:0 0 12px;opacity:.9}.grid-item-meta{display:flex;flex-direction:column;gap:4px;font-family:sofia-pro,sans-serif;font-size:.75rem;opacity:.8}.grid-item-work-type{font-weight:600;text-transform:uppercase;letter-spacing:.5px}.grid-item-timeline{font-weight:400}@media (max-width: 768px){.grid-container{grid-template-columns:1fr;grid-auto-rows:200px;gap:15px;padding:15px}.grid-item-medium,.grid-item-large{grid-column:span 1;grid-row:span 1}.grid-item-content{padding:15px}.grid-item-title{font-size:1.1rem}.grid-item-blurb{font-size:.8rem}.offset-up{transform:translateY(-32px)}.offset-down{transform:translateY(32px)}.grid-item.offset-up:hover{transform:translateY(-36px)}.grid-item.offset-down:hover{transform:translateY(28px)}}@media (min-width: 769px) and (max-width: 1024px){.grid-container{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px}.grid-item-large{grid-column:span 2;grid-row:span 2}.grid-item-medium{grid-column:span 2;grid-row:span 1}}@media (min-width: 1025px){.grid-container{grid-template-columns:repeat(4,1fr);grid-auto-rows:250px}.grid-item-large{grid-column:span 2;grid-row:span 2}.grid-item-medium{grid-column:span 2;grid-row:span 1}}.grid-item-large .grid-item-content{padding:30px}.grid-item-large .grid-item-image{margin-bottom:20px}.grid-item-large .grid-item-title{font-size:1.5rem;margin-bottom:12px}.grid-item-large .grid-item-blurb{font-size:1rem;margin-bottom:16px}.grid-item-large .grid-item-meta{font-size:.875rem;gap:6px}.grid-item-medium .grid-item-content{flex-direction:row;align-items:center;gap:20px}.grid-item-medium .grid-item-image{flex:0 0 40%;margin-bottom:0;height:80%}.grid-item-medium .grid-item-text{flex:1}@media (max-width: 768px){.grid-item-medium .grid-item-content{flex-direction:column;gap:15px}.grid-item-medium .grid-item-image{flex:1;margin-bottom:15px;height:auto}}@media only screen and (max-width: 1186px){html{scroll-snap-type:y mandatory;scroll-behavior:smooth!important}}.wrapper{background-color:#fcf9f2;height:100%;color:#000;width:100%}.mobileWrapper{background-color:#fcf9f2;color:#000;text-align:center}#aboutMobile{padding-left:50px;padding-right:50px;font-family:sofia-pro,sans-serif;text-align:center;align-items:center;display:flex;flex-direction:row;padding-bottom:40px}#aboutMobile h1{display:none}#aboutMobile h2{font-family:futura-pt,sans-serif;text-align:left;line-height:1.2;font-weight:800;margin:20px 0;z-index:1}#aboutMobile img{z-index:0;padding-left:10px}#aboutMobile p{font-size:1.3rem}.contact{height:40vh;display:flex;align-items:center;justify-content:center}.iconBars{text-align:center;flex-direction:row;position:fixed;width:125px;left:25px;display:flex;top:0}.linkBars{text-align:center;flex-direction:column;position:fixed;right:20px;display:flex;top:10px}.linkBars a{text-orientation:mixed;text-align:center;color:#000;font-size:1.6rem;font-weight:700}.mobileLinks a{transition:opacity .18s ease-out;opacity:.69}.mobileLinks a:hover{opacity:1}.mobileLinks{display:flex;justify-content:space-between}@media only screen and (min-width: 780px){#aboutMobile h1{font-size:4rem;margin:40px 0;font-weight:700}}.projectNavMenu{bottom:10px;position:fixed;z-index:1;left:50%;transform:translate(-50%);display:flex;justify-content:space-between;flex-direction:row;width:130px}.navCircle{width:12px;height:12px;cursor:pointer;border-radius:50%;background-color:#aaa;opacity:.5;transition:all .2s ease-in-out}.fullSectionContainer h1{display:none}.fullSectionContainer h2{font-size:1.4rem;z-index:1;max-width:530px;margin-block-start:0em!important}.mobileImage{margin:0 auto}.clickableMobileContent{scale:.75;max-width:510px;color:#fff;border-radius:20px;z-index:1}.clickableMobileContent p{padding-top:10px}.mobileContentBackground{top:50%;left:50%;transform:translate(-50%,-50%);position:fixed;width:90vw;border-radius:20px;height:80vh;z-index:0}@media only screen and (min-width: 260px) and (min-height: 299px){.clickableMobileContent{padding:20px}}@media only screen and (min-width: 260px) and (min-height: 420px){.projectNavMenu{bottom:25px}}@media only screen and (min-width: 260px) and (min-height: 520px){.clickableMobileContent{padding:30px 20px}.middlePane{padding:20px 0}}@media only screen and (min-width: 300px) and (min-height: 299px){.clickableMobileContent{padding:20px 30px}}@media only screen and (min-width: 300px) and (min-height: 420px){.clickableMobileContent{padding:30px}.fullSectionContainer h2{font-size:1.8rem}}@media only screen and (min-width: 360px) and (min-height: 299px){.clickableMobileContent{padding:25px}#aboutMobile h2{font-size:1.8rem}.fullSectionContainer h2{z-index:1;margin-block-start:0em!important}}@media only screen and (min-width: 360px) and (min-height: 420px){.clickableMobileContent{padding:40px}#aboutMobile h2{font-size:2rem}.fullSectionContainer h2{font-size:2rem;z-index:1;margin-block-start:0em!important}}@media only screen and (min-width: 360px) and (min-height: 600px){.clickableMobileContent{padding:50px}}@media only screen and (min-width: 380px) and (min-height: 299px){.fullSectionContainer h2{z-index:1;max-width:520px;margin-block-start:0em!important}}@media only screen and (min-width: 380px) and (min-height: 429px){.fullSectionContainer h2{font-size:2rem}}@media only screen and (min-width: 440px) and (min-height: 299px){.fullSectionContainer h2{font-size:2.3rem;z-index:1;max-width:530px;margin-block-start:0em!important}#aboutMobile h2{font-size:2.3rem}}@media only screen and (min-width: 440px) and (min-height: 400px){.clickableMobileContent{padding:60px 55px}footer{padding:0 100px!important}}html{overflow:scroll}nav a{font-weight:800;font-size:20px;font-family:sofia-pro,sans-serif;padding-left:30px;padding-right:30px;opacity:50%;transition:all .11s ease-in-out;color:#000;text-decoration:none}nav a:hover{opacity:1}.wrapper,.mobileWrapper{background-color:#fcf9f2;height:100%;color:#000;width:100%}#about{padding-left:50px;padding-right:50px;font-family:sofia-pro,sans-serif;text-align:left;align-items:center;display:flex;flex-direction:row;padding-bottom:40px}#aboutMobile{display:flex;flex-direction:column}#about h1{display:none}.about h2{font-family:futura-pt,sans-serif;font-size:3.3rem;line-height:1.2;font-weight:800;z-index:1}#about img{z-index:0;padding-left:10px}#about p{font-size:1.3rem}.fullSectionContainer{flex-direction:column;justify-content:center;align-items:center;display:flex;max-width:100vw;height:100vh;scroll-snap-align:center;perspective:500px}.aboutImage{max-height:80vh;max-width:450px;margin-left:-0px;right:0}.aboutImageWrapper{height:500px;width:100%;background-size:contain;background-repeat:no-repeat}.aboutImageWrapper img{max-width:768px}.projectCard{height:100vh}footer a{line-height:1.3}footer p{max-width:745px}.projects{display:flex;gap:4%}.about{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:650px;line-height:2rem;margin:0 auto}.about p{text-indent:50px;font-size:1.1rem;font-family:sofia-pro,sans-serif;line-height:2.5rem}.contact{height:40vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.left_hand_bar{text-align:center;flex-direction:column;position:fixed;left:25px;display:flex;height:250px;bottom:25px}.right_hand_bar{text-align:center;flex-direction:column;position:fixed;right:25px;display:flex;height:250px;bottom:25px}#sDown{bottom:25px;color:#433;position:fixed;left:49%;transition:transform .2s ease-in-out;transition:opacity .3s linear;-webkit-transform:translateX(-50%);transform:translate(-50%);animation-name:yes;animation-duration:1s;animation-iteration-count:infinite}.right_hand_bar a{writing-mode:vertical-rl;text-orientation:mixed;text-align:center;right:25px;color:#000;font-size:1.6rem;font-weight:700}.bar a{transition:opacity .18s ease-out;opacity:.69}.bar a:hover{opacity:1}.bar{display:flex;width:50px;justify-content:center;height:250px;flex-direction:column}@media only screen and (min-width: 780px){#about h1{font-size:4rem;margin:40px 0;font-weight:700}}.loader{--s: 15px;width:calc(var(--s)*2.33);aspect-ratio:1;display:flex;justify-content:space-between;animation:l29-0 1s infinite}.loader:before,.loader:after{content:"";width:var(--s);--_g: no-repeat radial-gradient(farthest-side,#000 94%,#0000);background:var(--_g) top,var(--_g) bottom;background-size:100% var(--s);transform-origin:50% calc(100% - var(--s)/2);animation:inherit;animation-name:l29-1}.loader:after{--_s:-1}@keyframes l29-0{to{transform:translateY(calc(var(--s) - 100%))}}@keyframes l29-1{to{transform:rotate(calc(var(--_s,1)*-180deg))}}.loading-wrapper{height:100vh;width:100vw;display:flex;justify-content:center;margin:auto;align-items:center}img{image-rendering:auto;image-rendering:crisp-edges;image-rendering:pixelated;image-rendering:-webkit-optimize-contrast}html,body{-webkit-font-smoothing:antialiased;background-color:#fcf9f2;margin:0;padding:0}a{font-family:sofia-pro,sans-serif;color:#000;text-decoration:none}nav a{font-weight:800;font-size:20px;padding-left:30px;padding-right:30px;opacity:50%;transition:all .11s ease-in-out}a:hover{opacity:100%}.active{opacity:100%!important;font-size:24px}nav{width:100%;padding-bottom:11px;padding-top:8px;text-align:center;border-radius:50px;position:fixed;top:4%;left:50%;transform:translate(-50%);transition:box-shadow .2s ease-in-out}#sDown{bottom:25px;color:#433;position:fixed;z-index:5;left:49%;transition:transform .2s ease-in-out;transition:opacity .3s linear;-webkit-transform:translateX(-50%);transform:translate(-50%);animation-name:yes;animation-duration:1s;animation-iteration-count:infinite}@keyframes yes{0%{transform:translateY(0)}50%{transform:translateY(5px)}to{transform:translateY(0)}}#pagewrap{transition:opacity .25s ease-in-out;margin:0;padding:0;opacity:0;max-height:100vh;background-color:#fcf9f2}.main_container h2{font-weight:800;font-size:3rem;line-height:1.11em;margin-left:-4px}.main_container:first{margin-top:20vh}.main_container{display:block!important;margin-left:auto;margin-right:auto;min-width:80%;max-width:1000px;margin-top:20vh;padding-left:40px;padding-right:40px}#dva,#drd,#hg{transition:color .18s ease-in-out;transition:background .18s ease-in-out}.card_container{transition:background .15s ease-in-out;border-radius:25px;padding:24px 32px;max-width:1000px}#enter_tips{text-align:center;margin-top:20px;padding-top:10px;padding-bottom:10px}.bottom_wrapper{display:flex;flex-direction:column-reverse;justify-content:space-between}.projectLink h1{cursor:pointer;color:#000;text-underline-offset:11px;text-decoration:none;transition:all .12s ease-in-out}.projectLink h1:hover{color:#1051a1;text-decoration:underline}.middle_pane img{width:80vw;max-width:800px;transition:transform .5s,opacity .25s}.middle_pane{padding:10px 0;display:flex;justify-content:center;align-items:center}.right_pane{max-width:205px;display:none;text-align:right;flex-direction:column;justify-content:space-between}.bottom_wrapper h3{font-weight:800;font-size:1.25rem;padding-bottom:10px}.bottom_wrapper p{font-size:.83rem;line-height:25px}.home_hide_content{display:none}.project_wrap{color:#000;transition:opacity .25s ease-in-out}#project_heading{padding-left:25px;padding-right:25px;max-width:870px;margin:0 auto}.project_intro h1{font-family:sofia-pro,sans-serif;font-weight:800;margin-left:-5px;line-height:2.3rem;font-size:2rem}.project_subtitles{font-family:sofia-pro,sans-serif;font-weight:800;align-content:space-between;max-width:100%;justify-content:space-between}.subtitle_box{padding-top:20px;max-width:350px}.subtitle_box h3{font-size:1rem}.subtitle_box p{padding-top:10px;font-size:.88rem;line-height:1.5rem;font-weight:400}.side_quest_ul{font-size:.75rem}.project_nav{transition:opacity .1s ease-in-out;opacity:0;text-align:center;padding-top:10px;padding-bottom:20px;width:100%;position:fixed;background-color:#fcf9f2;z-index:5}.project_nav a{font-size:2.5rem;z-index:5}.project_content{margin:0 auto;padding-left:25px;max-width:850px;padding-right:25px;font-family:sofia-pro,sans-serif}.project_content pre{overflow:auto}.intro_img{max-width:100vw;background-position:center;background-size:cover;z-index:1;padding-bottom:10px;margin:0}.project_content h2{font-size:1.2em;font-weight:800;color:#454545;margin-left:-1px}.project_content p{line-height:2.2em;padding-bottom:20px;font-size:.75rem}.bideo{padding-bottom:25px;padding-top:25px}.list{padding-left:20px}.list li{padding:10px 0;font-weight:800;font-size:.9em}b{font-weight:800}.dow_st{font-size:1.25em;padding-bottom:10px}.dow_qs{list-style:none!important;margin-top:-10px;color:#555;line-height:1.5;padding:8px 0;font-weight:400!important}.imageContainer{padding-top:20px;margin:0 auto;padding-bottom:50px}.imageContainer{font-family:sofia-pro,sans-serif;font-size:1rem;text-align:center;font-weight:800}.imageContainer img{padding-bottom:25px;padding-top:25px}.imageContainer img,video{max-width:100vw}.imageContainer a{padding:0 1px;height:20px;color:#274863}.imageContainer a:hover{color:#000}.project_img{text-align:center}footer{transition:opacity .2s ease-in-out;margin-top:180px;min-height:200px;padding:0;font-family:sofia-pro,sans-serif;font-size:1.4rem;letter-spacing:-.5px;font-weight:800;text-align:center;line-height:2em}footer a{color:#004782;transition:color .12s ease-in-out;border-bottom:2px solid currentColor}footer a:hover{color:#002849}.link_icons{max-width:30px;padding:18px 0}.project_end{display:flex;justify-content:center}@media only screen and (min-width: 160px){.project_intro{max-width:100vw;overflow:hidden}.intro_img{height:200px}}@media only screen and (min-width: 280px){.subtitle_box{max-width:350px}.subtitle_box h3{font-size:1rem}.subtitle_box p{line-height:1.5rem;font-weight:400}}@media only screen and (min-width: 380px){#project_heading h1{font-size:2.6rem;line-height:1.1em;margin-left:-5px}.intro_img{height:unset}}@media only screen and (min-width: 500px){.project_content,#project_heading{padding-left:50px;padding-right:50px}#project_heading h1{font-size:3rem;line-height:1.25em}}@media only screen and (min-width: 800px){.imageContainer{display:flex;flex-direction:column}.project_content,#project_heading{padding-left:80px;padding-right:80px}.project_content h2{padding-top:20px;font-size:2em;font-weight:800;color:#454545;margin-left:-1px}.project_content p{line-height:2.8rem;padding-bottom:20px;font-size:.95rem}#project_heading{padding-top:20px;padding-bottom:20px}#project_heading h1{font-size:4rem;line-height:1.4em;margin-left:-5px}.dow_st{padding:10px 0}.dow_qs{list-style:circle!important;margin-top:-10px;line-height:2.4em;margin-left:3px;color:#555;padding:2px 0;font-weight:400!important}.project_subtitles{display:flex;justify-content:space-between;max-width:100%;align-content:space-between}.subtitle_box{max-width:220px}.subtitle_box h3{font-size:1.5rem}.subtitle_box p{margin-top:10px;font-size:.95rem;line-height:2.4rem!important;font-weight:400}}@media only screen and (min-width: 1000px){.imageContainer{max-width:1000px}.imageContainer video,.imageContainer img{margin-left:auto;margin-right:auto;width:100%}}
