@import url(https://fonts.cdnfonts.com/css/druk-wide-bold);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*,:after,:before{box-sizing:border-box}.App{background:#fff;color:#111;font-family:Karla,Times,serif;transition:background-color .25s ease,color .25s ease}body,html{overflow-x:hidden}body{background:#fff}:root{--brand-orange:#f9a602;--brand-orange-soft:#fff1bf;--brand-ink:#111;--night-page:#12161d;--night-section:#181e27;--night-card:#252c37;--night-card-alt:#2c3441;--night-border:#f0d8a2;--night-text:#f5efe6}.scroll-progress{background:#f9a602;background:var(--brand-orange);height:3px;left:0;pointer-events:none;position:fixed;top:0;transform-origin:left center;width:100%;z-index:250}.mode-toggle{align-items:center;background:#fff8df;border:3px solid #111;border-radius:999px;box-shadow:4px 4px 0 #111;color:#111;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.72rem;font-weight:800;gap:.55rem;letter-spacing:.04em;min-height:2.8rem;padding:.45rem .8rem;position:fixed;right:1rem;text-transform:uppercase;top:4.9rem;transition:transform .18s ease,box-shadow .18s ease,background-color .24s ease;z-index:210}.mode-toggle:focus-visible,.mode-toggle:hover{background:#f9a602;background:var(--brand-orange);box-shadow:6px 6px 0 #111;transform:translateY(-2px)}.mode-toggle:active{box-shadow:2px 2px 0 #111;transform:translateY(2px)}.mode-toggle:focus-visible{outline:3px solid #111;outline-offset:4px}.mode-toggle__icon{align-items:center;display:inline-flex;height:1.45rem;justify-content:center;position:relative;width:1.45rem}.mode-toggle__moon,.mode-toggle__sun{border-radius:999px;position:absolute;transition:opacity .24s ease,transform .24s ease}.mode-toggle__sun{background:#f9a602;background:var(--brand-orange);border:2px solid #111;box-shadow:0 -.45rem 0 -.22rem #111,0 .45rem 0 -.22rem #111,.45rem 0 0 -.22rem #111,-.45rem 0 0 -.22rem #111;height:1.1rem;width:1.1rem}.mode-toggle__moon{background:#111;height:1.05rem;opacity:0;transform:translateX(.35rem) rotate(-20deg) scale(.7);width:1.05rem}.mode-toggle__moon:after{background:#fff8df;border-radius:999px;content:"";height:.9rem;position:absolute;right:-.28rem;top:-.1rem;width:.9rem}.mode-toggle[aria-pressed=true] .mode-toggle__sun{opacity:0;transform:rotate(45deg) scale(.65)}.mode-toggle[aria-pressed=true] .mode-toggle__moon{opacity:1;transform:translateX(0) rotate(-20deg) scale(1)}.mode-toggle[aria-pressed=true] .mode-toggle__moon:after{background:#252c37;background:var(--night-card)}@media screen and (min-width:932px){.mode-toggle{right:1.25rem;top:5.15rem}}@media(max-width:520px){.mode-toggle{font-size:.64rem;min-height:2.45rem;padding:.35rem .58rem;right:.7rem;top:4.35rem}.mode-toggle__label{line-height:1.05;max-width:4.4rem}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .5s ease 0ms,transform .5s ease 0ms;transition:opacity .5s ease var(--reveal-delay,0ms),transform .5s ease var(--reveal-delay,0ms);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0)}.key-button{align-items:center;background:#fff0f0;border:2px solid #b18597;border-radius:12px;color:#382b22;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.72rem;font-weight:700;justify-content:center;letter-spacing:.04em;line-height:1;margin:.2rem;min-height:42px;padding:.9rem 1.35rem;position:relative;text-align:center;text-decoration:none;text-transform:uppercase;touch-action:manipulation;transform-style:preserve-3d;transition:transform .15s ease-out,background .15s ease-out;user-select:none;-webkit-user-select:none;white-space:nowrap}.key-button:before{background:#f9c4d2;border-radius:inherit;box-shadow:0 0 0 2px #b18597,0 .55em 0 0 #ffe3e2;content:"";height:100%;inset:0;position:absolute;transform:translate3d(0,.55em,-1em);transition:transform .15s ease-out,box-shadow .15s ease-out;width:100%}.key-button:focus-visible,.key-button:hover{background:#ffe9e9;transform:translateY(.18em) scale(1.02)}.key-button:focus-visible:before,.key-button:hover:before{box-shadow:0 0 0 2px #b18597,0 .42em 0 0 #ffe3e2;transform:translate3d(0,.42em,-1em)}.key-button:active{background:#ffe9e9;transform:translateY(.55em)}.key-button:active:before{box-shadow:0 0 0 2px #b18597,0 0 0 0 #ffe3e2;transform:translateZ(-1em)}.key-button:focus-visible{outline:3px solid #111;outline-offset:4px}.key-button:disabled{color:#382b22;cursor:not-allowed;opacity:.55;transform:none}.key-button:disabled:before{box-shadow:0 0 0 2px #b18597,0 .3em 0 0 #ffe3e2;transform:translate3d(0,.3em,-1em)}.contact-flex .contact-nameheaderdesktop,.contact-header,.earlier-work h2,.projects h1,.skills h2{text-decoration:underline;text-decoration-color:#f9a602;text-decoration-color:var(--brand-orange);text-decoration-thickness:.16em;text-underline-offset:.18em}body.is-night-mode{background:#12161d;background:var(--night-page);color:#f5efe6;color:var(--night-text)}body.is-night-mode .App,body.is-night-mode .about,body.is-night-mode .contact,body.is-night-mode .projects,body.is-night-mode .skills{background:#181e27;background:var(--night-section);color:#f5efe6;color:var(--night-text)}body.is-night-mode .mode-toggle{background:#252c37;background:var(--night-card);border-color:#f0d8a2;border-color:var(--night-border);box-shadow:4px 4px 0 #07090d;color:#f5efe6;color:var(--night-text)}body.is-night-mode .mode-toggle:focus-visible,body.is-night-mode .mode-toggle:hover{background:#343d4c;box-shadow:6px 6px 0 #07090d}body.is-night-mode .navbar{background:#1d2430;border-color:#f9a602;border-color:var(--brand-orange)}body.is-night-mode .contact-header,body.is-night-mode .contact-nameheaderdesktop,body.is-night-mode .earlier-work h2,body.is-night-mode .navbar-list__item,body.is-night-mode .projects h1,body.is-night-mode .skills h2{color:#f5efe6;color:var(--night-text)}body.is-night-mode .projects__eyebrow{color:#f5c777}body.is-night-mode .contact-form,body.is-night-mode .modal-content,body.is-night-mode .project-card,body.is-night-mode .skills-box,body.is-night-mode .skills-group{background:#252c37;background:var(--night-card);border-color:#f0d8a2;border-color:var(--night-border);box-shadow:7px 7px 0 #090a0d;color:#f5efe6;color:var(--night-text)}body.is-night-mode .earlier-work .project-card,body.is-night-mode .project-card--compact{background:#2c3441;background:var(--night-card-alt)}body.is-night-mode .project-card:focus-within,body.is-night-mode .project-card:hover{box-shadow:10px 12px 0 #090a0d}body.is-night-mode .case-study-slide__image,body.is-night-mode .modal-content__image,body.is-night-mode .project-card__image-wrap{border-color:#f0d8a2;border-color:var(--night-border)}body.is-night-mode .case-study-slide li,body.is-night-mode .case-study-slide p,body.is-night-mode .project-card__content p,body.is-night-mode .skills-group p{color:#e5ded3}body.is-night-mode .project-tags li{background:#384151;border-color:#f9a602;border-color:var(--brand-orange);color:#fff7e8}body.is-night-mode .case-study-frame,body.is-night-mode .case-study-tab{background:#303947;border-color:#f0d8a2;border-color:var(--night-border);color:#f5efe6;color:var(--night-text)}body.is-night-mode .case-study-progress__dot--active,body.is-night-mode .case-study-tab--active{background:#f9a602;background:var(--brand-orange);color:#12161d;color:var(--night-page)}body.is-night-mode .case-study-progress__dot{border-color:#f0d8a2;border-color:var(--night-border)}body.is-night-mode .project-card__status{background:#f9a602;background:var(--brand-orange);border-color:#12161d;border-color:var(--night-page);color:#12161d;color:var(--night-page)}body.is-night-mode .modal-overlay{background-color:#000000c7}body.is-night-mode .close{background:#fff0f0;border-color:#b18597;color:#12161d}body.is-night-mode .contact #form-input-control-email input,body.is-night-mode .contact #form-input-control-last-name input,body.is-night-mode .contact input,body.is-night-mode .contact textarea{background:#2f3846;border-color:#f0d8a2;border-color:var(--night-border);color:#f5f0ea}body.is-night-mode .contact #form-input-control-email input::placeholder,body.is-night-mode .contact #form-input-control-last-name input::placeholder,body.is-night-mode .contact input::placeholder,body.is-night-mode .contact textarea::placeholder{color:#cfc8bf}body.is-night-mode .contact-form__status{color:#9cf0b2}body.is-night-mode .footer{background-color:#1d222b;border-color:#f9a602;border-color:var(--brand-orange)}body.is-night-mode .footer-text{color:#eee8df}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.App,.key-button{transition:none}.reveal{opacity:1!important;transform:none!important}}.aboutContact{display:flex;flex-direction:column}@media screen and (min-width:932px){.aboutContact{flex-direction:row}}.contactDesktop{display:none}@media screen and (min-width:932px){.contactDesktop{display:block}}.contactMobile{display:block}@media screen and (min-width:932px){.contactMobile{display:none}}.navbar{background-color:#fff;border:5px solid #000;left:0;position:fixed;right:0;top:0;z-index:100}.navbar-list{display:flex;font-size:15px;font-weight:700;justify-content:center;list-style:none;padding:0;text-align:center}@media screen and (min-width:932px){.navbar-list{font-size:20px;font-weight:700}}.navbar-list__item{color:#3b3b3c;cursor:pointer;padding:.5rem;transition:color .16s ease,transform .16s ease}.navbar-list__item:focus-within,.navbar-list__item:hover{color:#f9a602;transform:translateY(-1px)}.navbar-list__item .active{color:#d08300;text-decoration:underline;text-decoration-thickness:.18em;text-underline-offset:.2em}button{border:0;cursor:pointer;display:inline-block;font-family:inherit;font-size:inherit;outline:none;text-decoration:none;vertical-align:middle}.home,button{position:relative}.home{align-items:center;background:#f9a602;border:5px solid #000;display:flex;flex-direction:column-reverse;justify-content:flex-end;min-height:100vh;overflow:hidden;text-align:center;transition:background-color .65s ease,color .65s ease;width:100%;z-index:1}@media screen and (min-width:932px){.home{flex-direction:row;justify-content:center}}.home--night{background:#08090f}.home--night .home-video,.home--night .home-video__overlay{opacity:1}.home--night .profile-header{-webkit-text-stroke:2px #ffffffd9;color:#ffffffb3;text-shadow:0 0 24px #ffffff2e}.home--night .profile-subheader{color:#f9f4ec;text-shadow:0 0 20px #000c}.home-video,.home-video__overlay{inset:0;pointer-events:none;position:absolute}.home-video{opacity:0;transition:opacity .5s ease;z-index:-2}.home-video iframe{border:0;height:56.25vw;left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate(-50%,-50%);width:177.78vh}.home-video__overlay{background:linear-gradient(90deg,#020308c7,#02030885 48%,#020308c7);opacity:0;transition:opacity .5s ease;z-index:-1}.profile_container{align-items:center;color:#fff;display:flex;flex-direction:column;font-size:30px;font-weight:700;gap:2rem;margin:0;padding:5rem 1rem 18rem;position:relative;z-index:2}@media screen and (min-width:932px){.profile_container{align-items:flex-end;gap:3rem;justify-content:center;left:12vw;max-width:min(58vw,760px);min-height:100vh;padding:6rem 1rem;text-align:left}}.profile-header{animation:heroContentIn .52s ease both;color:#000;font-family:Druk Wide Bold,sans-serif;font-size:clamp(2.5rem,11vw,5rem);font-weight:700;line-height:1;margin:0;text-transform:uppercase;transition:color .3s ease,text-shadow .3s ease}@media screen and (min-width:932px){.profile-header{font-size:clamp(3rem,5.2vw,4.5rem);text-align:right}}.profile-subheader{animation:heroContentIn .52s ease 90ms both;color:#000;font-family:Druk Wide Bold,sans-serif;font-size:1.1rem;font-weight:200;margin:0;max-width:15rem;position:relative;text-align:center}@media screen and (min-width:932px){.profile-subheader{font-size:2rem;max-width:none;text-align:right;width:100%}}.availability-badge{align-items:center;align-self:center;animation:heroContentIn .52s ease .13s both;background:#fff8dfeb;border:2px solid #111;border-radius:999px;box-shadow:4px 4px 0 #111;color:#111;display:inline-flex;font-size:.74rem;font-weight:800;gap:.55rem;letter-spacing:.04em;padding:.45rem .75rem;text-transform:uppercase;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}@media screen and (min-width:932px){.availability-badge{align-self:flex-end}}.availability-badge__dot{animation:availabilityPulse 1.8s ease-out infinite;background:#2fd165;border:2px solid #111;border-radius:999px;box-shadow:0 0 0 0 #2fd16580;height:.62rem;width:.62rem}.home--night .availability-badge{background:#252c37f0;border-color:#f0d8a2;box-shadow:4px 4px 0 #05070a;color:#f8f1e7}.banner-profilephoto{align-items:flex-end;animation:heroImageIn .62s ease .16s both;bottom:0;display:flex;height:min(56vh,500px);justify-content:center;pointer-events:none;position:absolute;width:100%;z-index:1}@media screen and (min-width:932px){.banner-profilephoto{height:70%;left:-25%}}.banner-profilephoto img{height:100%;max-width:94vw;object-fit:contain;object-position:bottom center}.profile-button{box-sizing:border-box}@media screen and (min-width:932px){.profile-button{width:auto}}.profile-button__container{animation:heroContentIn .52s ease .18s both;display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;max-width:20rem}@media screen and (min-width:932px){.profile-button__container{justify-content:flex-end;max-width:42rem}}.profile-button--toggle{margin-left:.2rem}@keyframes heroContentIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes heroImageIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes availabilityPulse{0%{box-shadow:0 0 0 0 #2fd1658c}70%{box-shadow:0 0 0 .55rem #2fd16500}to{box-shadow:0 0 0 0 #2fd16500}}@media(prefers-reduced-motion:reduce){.availability-badge,.availability-badge__dot,.banner-profilephoto,.home,.home-video,.home-video__overlay,.profile-button__container,.profile-header,.profile-subheader{animation:none;transition:none}}.about{margin-top:3rem;z-index:1}@media screen and (min-width:932px){.about{height:100%;width:100%}.about-flex{display:flex;justify-content:center}}.contact-header{margin:1rem;padding-bottom:rem;text-align:center}@media screen and (min-width:932px){.contact-header{padding-top:2rem}}.contact-nameheader{display:none}@media screen and (min-width:932px){.contact-nameheader{font-size:3rem;font-weight:600;margin:.5rem;padding:0;text-align:center}}.contact-subheader{font-size:1rem;font-weight:500;margin:.5rem;padding:0 0 2rem;text-align:center}@media screen and (min-width:932px){.contact-subheader{display:none}}.contact-nameheadertablet{display:none}@media screen and (min-width:932px){.contact-nameheadertablet{display:none}}@media screen and (min-width:1280px){.contact-nameheadertablet{display:none}}.contact-subheadertablet{display:none}@media screen and (min-width:932px){.contact-subheadertablet{display:flex;font-size:1rem;font-weight:500;margin:.5rem;padding-top:0;text-align:center}}@media screen and (min-width:1280px){.contact-subheadertablet{display:none}}.contact-nameheaderdesktop{display:flex;font-size:3rem;font-weight:600;justify-content:center;margin:.5rem;padding:0;text-align:center}@media screen and (min-width:1280px){.contact-nameheaderdesktop{display:flex;font-size:3rem;font-weight:600;justify-content:center;margin:.5rem;padding:0;text-align:center}}.contact-subheaderdesktop{display:none}@media screen and (min-width:1280px){.contact-subheaderdesktop{display:flex;font-size:1rem;font-weight:500;margin:.5rem;padding:0 0 2rem;text-align:center}}.contact-copy,.contact-copy__header{text-align:center}.contact-copy{font-size:1rem;font-weight:300;line-height:1.5;margin:10px 1.5rem;padding-bottom:1rem}@media screen and (min-width:932px){.contact-copy{font-size:1rem;margin:10px 1.5rem;padding-bottom:1rem;text-align:center}}.contact-networks{align-items:center}.contact-picture{background:#99a9c4;background-position:4%;background-size:cover;border-radius:69px;box-shadow:11px -11px 22px #4e5664,-11px 11px 22px #e4fcff;min-width:50%;width:70%}@media screen and (min-width:932px){.contact-picture{max-width:20rem;width:100%}}@media screen and (min-width:1280px){.contact-picture{max-width:70%}}.contact-picture__background{width:30rem}.contact-picture__container{align-items:center;display:flex;flex-direction:column}.network-picture{margin-left:1rem;width:3rem}.contact-flex{justify-content:flex-end;width:100%}@media screen and (min-width:932px){.contact-flex{align-items:center;display:flex;flex-direction:column;justify-content:flex-start;max-width:1000px;padding:1rem;width:50%;width:80%}}.skills{background:#fff;padding:4rem 1.25rem;width:100%}@media screen and (min-width:932px){.skills{padding:5.5rem 1.5rem}}.skills__inner{margin:0 auto;width:min(1040px,100%)}.skills__intro{font-weight:300;line-height:1.55;margin:1rem auto 2rem;max-width:720px;text-align:center}.skills-groups{grid-gap:1.35rem;display:grid;gap:1.35rem;grid-template-columns:1fr;margin-bottom:2.75rem}@media screen and (min-width:932px){.skills-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}.skills-group{background:#fff8df;border:3px solid #111;border-radius:8px;box-shadow:5px 5px 0 #111;padding:1.35rem;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.skills-group:focus-within,.skills-group:hover{background:#fff1bf;border-color:#f9a602;box-shadow:8px 8px 0 #111;transform:translateY(-4px)}.skills-group h3{font-size:1.25rem;margin:0 0 .75rem}.skills-group p{font-weight:300;line-height:1.55;margin:0}.skills-grid{flex-wrap:wrap;gap:.65rem;perspective:1500px}.skills-box,.skills-grid{display:flex;justify-content:center}.skills-box{align-items:center;background:#f5f5f5;border:2px solid #111;border-radius:8px;flex-direction:column;min-height:6.75rem;min-width:6.5rem;padding:.85rem;position:relative;transition:opacity .5s ease 0ms,transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease;transition:opacity .5s ease var(--reveal-delay,0ms),transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease}.skills-box:focus-within,.skills-box:hover{background:#fff8df;border-color:#f9a602;box-shadow:3px 3px 0 #111;transform:translateY(-3px) scale(1.04)}.skills-box:after{background:#f9a602;border:2px solid #111;border-radius:999px;bottom:calc(100% + .55rem);box-shadow:3px 3px 0 #111;color:#111;content:attr(data-tooltip);font-size:.72rem;font-weight:800;left:50%;line-height:1;opacity:0;padding:.35rem .55rem;pointer-events:none;position:absolute;transform:translate(-50%,.35rem);transition:opacity .16s ease,transform .16s ease;white-space:nowrap;z-index:3}.skills-box:focus-within:after,.skills-box:hover:after{opacity:1;transform:translate(-50%)}.skills-text{font-size:.78rem;font-weight:700;margin:.5rem 0 0;padding:0}.skills-icon{filter:saturate(140%);max-height:2.85rem;object-fit:contain;width:2.85rem}@media(prefers-reduced-motion:reduce){.skills-box:focus-within,.skills-box:hover,.skills-group:focus-within,.skills-group:hover{transform:none!important}}.contact{background-color:#fff8e6;margin-bottom:0;padding:4rem 1.25rem 4.5rem;width:100%}@media screen and (min-width:932px){.contact{width:100%}}.contact-form{align-items:center;background-position:30%;background-size:cover;background:#fff;border:3px solid #111;border-radius:8px;box-shadow:6px 6px 0 #111;display:flex;flex-direction:column;margin:0 auto;padding:1.5rem;width:min(420px,100%)}#form-input-control-email,#form-input-control-email input,#form-input-control-last-name,#form-input-control-last-name input,#form-textarea-control-opinion{background-color:#fff;border:2px solid #111;border-radius:.3rem;color:#111;font-family:Karla,Times,serif;font-size:1rem;margin-bottom:1.15rem;padding:.75rem;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;width:100%}#form-input-control-email,#form-input-control-email input,#form-input-control-last-name,#form-input-control-last-name input{height:2.75rem}#form-textarea-control-opinion{height:9rem;resize:vertical}#form-input-control-email input:focus,#form-input-control-email:focus,#form-input-control-last-name input:focus,#form-input-control-last-name:focus,#form-textarea-control-opinion:focus{border-color:#f9a602;box-shadow:0 0 0 3px #f9a60238;outline:none}input::placeholder,textArea::placeholder{font-family:Karla;padding-left:.5rem}.custom-textarea{background-color:#fbd1d1;border:1px solid #fff;padding:8px}.contact-header{color:#111;margin-bottom:1.5rem}.contact-title{margin:1rem}.contact-networks{align-content:center;display:flex;flex-wrap:wrap;height:5rem;justify-content:center;padding-right:1rem}@media screen and (min-width:932px){.contact-networks{flex-direction:row}}.contact-networks__text{display:flex;justify-content:center}.contact-networks__wrapper a{display:inline-flex;transition:transform .16s ease}.contact-networks__wrapper a:focus-visible,.contact-networks__wrapper a:hover{outline:3px solid #f9a602;outline-offset:4px;transform:translateY(-3px) scale(1.04)}.contact-linkedin{cursor:pointer;width:5rem}.contact-gmail{cursor:pointer;width:6rem}.contact-calendly{cursor:pointer;padding-top:1.5rem;width:4rem}.contact-form__status{color:#0f5f2a;font-weight:800;margin:1rem 0 0;min-height:1.25rem;text-align:center}@media(prefers-reduced-motion:reduce){.contact-networks__wrapper a:focus-visible,.contact-networks__wrapper a:hover{transform:none!important}}@font-face{font-display:swap;font-family:Karla;font-style:normal;font-weight:100;src:url(/static/media/Karla-ExtraLight.9304106649b8f466aac7.ttf)}@font-face{font-display:swap;font-family:Karla;font-style:normal;font-weight:200;src:url(/static/media/Karla-Light.30ec6de8db67cabd83b4.ttf)}@font-face{font-display:swap;font-family:Karla;font-style:normal;font-weight:300;src:url(/static/media/Karla-Regular.62286aad3fe194b20ef0.ttf)}@font-face{font-display:swap;font-family:Karla;font-style:normal;font-weight:400;src:url(/static/media/Karla-Medium.5370445345c61415c7c7.ttf)}@font-face{font-display:swap;font-family:Karla;font-style:normal;font-weight:600;src:url(/static/media/Karla-SemiBold.ca0fd51b25a44eaac284.ttf)}@font-face{font-display:swap;font-family:Karla;font-style:normal;font-weight:700;src:url(/static/media/Karla-Bold.8fa52b9a9c75e4901471.ttf)}@font-face{font-display:swap;font-family:Karla;font-style:normal;font-weight:800;src:url(/static/media/Karla-ExtraBold.d6c90b8658e37af524d3.ttf)}@font-face{font-display:swap;font-family:parklane;font-style:normal;font-weight:100;src:url(/static/media/ParkLaneNF.b8ab93f712c0541c99ae.ttf)}@font-face{font-display:swap;font-family:coventrygarden;font-style:normal;font-weight:100;src:url(/static/media/CoventryGardenNF.27dce99db50a78fa4c18.ttf)}@font-face{font-display:swap;font-family:superdream;font-style:normal;font-weight:100;src:url(/static/media/SuperDream-ax3vE.387f54ec9b832b6ff246.ttf)}@font-face{font-display:swap;font-family:remachine;font-style:normal;font-weight:100;src:url(/static/media/RemachineScriptPersonalUseOnly-yZL3.d3f8179845fd5c0952c9.ttf)}@font-face{font-display:swap;font-family:freshman;font-style:normal;font-weight:100;src:url(/static/media/Freshman-POdx.5803b057e077e9b56637.ttf)}@font-face{font-display:swap;font-family:archer;font-style:normal;font-weight:100;src:url(/static/media/ARCHER.a64d489b387b6864e4e5.TTF)}@font-face{font-display:swap;font-family:monument;font-style:normal;font-weight:100;src:url(/static/media/MonumentExtended-Regular.db74f7a563ec017311bc.otf)}.footer{align-items:center;background-color:orange;border:5px solid #000;display:flex;justify-content:space-between}.footer-text{color:#000;height:100%;margin:1rem;padding:.2rem;text-align:center}.footer-text img{margin-right:5px;max-height:30px;padding:5%}.projects{align-items:center;background-color:#fff8e6;display:flex;flex-direction:column;overflow-x:hidden;padding:4rem 1.25rem 5rem;width:100%}@media screen and (min-width:932px){.projects{padding:6rem 1.5rem}}.projects__intro{max-width:900px;text-align:center}.projects__eyebrow{color:#8c5d00;font-size:.75rem;font-weight:700;letter-spacing:0;margin:0 0 .75rem;overflow-wrap:anywhere;text-transform:uppercase}@media screen and (min-width:932px){.projects__eyebrow{font-size:.9rem}}.projects h1{margin:0}.earlier-work__grid,.projects-grid{grid-gap:2rem;display:grid;gap:2rem;width:min(1080px,100%)}@media screen and (min-width:932px){.earlier-work__grid,.projects-grid{gap:2.25rem}}.projects-grid{grid-template-columns:1fr;margin-top:3.25rem}@media screen and (min-width:932px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.project-card{background:#fff;border:3px solid #111;border-radius:8px;box-shadow:6px 6px 0 #111;cursor:default;display:flex;flex-direction:column;min-height:100%;overflow:hidden;position:relative;transform-origin:center;transition:opacity .5s ease 0ms,transform .22s ease,box-shadow .22s ease;transition:opacity .5s ease var(--reveal-delay,0ms),transform .22s ease,box-shadow .22s ease;will-change:transform}.project-card:before{background:#f9a602;content:"";height:0;left:0;position:absolute;right:0;top:0;transition:height .18s ease;z-index:2}.project-card:focus-within,.project-card:hover{box-shadow:10px 12px 0 #111;transform:translateY(-4px) rotate(-.5deg)}.project-card:nth-child(2n):focus-within,.project-card:nth-child(2n):hover{transform:translateY(-4px) rotate(.5deg)}.project-card:focus-within:before,.project-card:hover:before{height:.42rem}.project-card__image-wrap{aspect-ratio:16/9;background:#f9a602;border-bottom:3px solid #111;overflow:hidden;position:relative}.project-card__image-wrap img{display:block;height:100%;object-fit:cover;transition:transform .42s ease;width:100%;will-change:transform}.project-card:focus-within .project-card__image-wrap img,.project-card:hover .project-card__image-wrap img{transform:scale(1.03)}.project-card__status{background:#111;border:2px solid #fff;border-radius:999px;color:#fff;display:inline-flex;font-size:.75rem;font-weight:700;left:.75rem;padding:.35rem .7rem;position:absolute;text-transform:uppercase;top:.75rem;z-index:1}.project-card__status--modal{margin-bottom:.75rem;position:static}.project-card__content{display:flex;flex:1 1;flex-direction:column;gap:1.05rem;padding:1.35rem}.project-card__content h3{font-size:1.3rem;line-height:1.15;margin:0}.project-card__content p{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;font-weight:300;line-height:1.5;margin:0;overflow:hidden}@media screen and (min-width:932px){.project-card__content{padding:1.5rem}}.project-tags{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}.project-tags li{background:#fff1bf;border:2px solid #d08300;border-radius:999px;color:#111;font-size:.78rem;font-weight:700;padding:.35rem .6rem}.project-card__button{align-self:flex-start;margin-top:.25rem}.project-card__button--link{display:inline-flex;margin-top:1rem}.earlier-work{margin-top:5.5rem;width:min(1080px,100%)}.earlier-work h2{font-size:1.85rem;margin:0 0 2rem;text-align:center}.earlier-work__grid{gap:1.35rem;grid-template-columns:1fr}@media screen and (min-width:932px){.earlier-work__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media screen and (min-width:1280px){.earlier-work__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.project-card--compact{box-shadow:6px 6px 0 #111}.project-card--compact .project-card__image-wrap{aspect-ratio:16/9}.project-card--compact .project-card__content h3{font-size:1.1rem}.project-card--compact .project-card__content p{-webkit-line-clamp:2;font-size:.95rem}.project-card--compact .project-tags li{font-size:.72rem}.project-card--compact .project-card__button{min-height:38px;padding:.78rem 1rem}.modal-overlay{align-items:flex-start;background-color:#000000b8;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:1rem;position:fixed;z-index:220}.modal-content{animation:scaleUp .25s ease-out;background-color:#f5f5f5;border:3px solid #111;border-radius:8px;box-shadow:10px 10px 0 #111;display:flex;flex-direction:column;margin:1rem auto;max-height:calc(100dvh - 2rem);overflow:hidden;position:relative;width:min(940px,100%)}.modal-content__details{display:flex;flex-direction:column;min-height:0;padding:1.25rem;text-align:left}@media screen and (min-width:932px){.modal-content__details{padding:2rem}}.modal-content__details h3{font-size:2rem;line-height:1.1;margin:0 2rem 1.25rem 0}.case-study-tabs{display:flex;flex-shrink:0;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}.case-study-tab{background:#fff;border:2px solid #111;border-radius:999px;color:#111;cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:700;padding:.45rem .75rem;transition:background .15s ease,transform .15s ease}.case-study-tab:focus-visible,.case-study-tab:hover{background:#fff8df;transform:translateY(-1px)}.case-study-tab:focus-visible{outline:3px solid #111;outline-offset:3px}.case-study-tab--active{background:#f9a602}.case-study-frame{background:#fff;border:3px solid #111;border-radius:8px;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:1.25rem}.case-study-frame:focus-visible{outline:3px solid #f9a602;outline-offset:-6px}@media screen and (min-width:932px){.case-study-frame{padding:1.5rem}}.case-study-slide-shell{animation:caseSlideIn .26s ease both}.case-study-frame__meta{align-items:center;border-bottom:2px solid;display:flex;font-size:.8rem;gap:1rem;justify-content:space-between;letter-spacing:0;margin-bottom:1rem;padding-bottom:.75rem;text-transform:uppercase}.case-study-frame__meta span{font-weight:700;opacity:.75}.case-study-slide{grid-gap:1rem;display:grid;gap:1rem}.case-study-slide h4{font-size:1.15rem;margin:0;text-transform:uppercase}.case-study-slide p,.case-study-slide ul:not(.project-tags){font-weight:300;line-height:1.55;margin:0}.case-study-slide ul:not(.project-tags){padding-left:1.2rem}.case-study-slide__image{background:#f9a602;border:3px solid #111;border-radius:8px;max-height:24rem;object-fit:contain;width:100%}.roots-slide{gap:1.25rem}.roots-slide h4{font-size:1.2rem}.roots-slide__lead{max-width:70ch}.roots-slide__copy{grid-gap:1rem;align-content:start;display:grid;gap:1rem}.roots-slide__role{color:#9b4400;font-weight:700!important}body.is-night-mode .roots-slide p.roots-slide__role{color:#f5c777}.roots-shot-grid,.roots-split,.roots-topic-grid{grid-gap:1.2rem;display:grid;gap:1.2rem;min-width:0}.roots-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roots-topic{border-left:3px solid #f9a602;padding:.15rem 0 .15rem .9rem}.roots-topic h5{font-size:.95rem;margin:0 0 .4rem}.roots-shot{margin:0;min-width:0}.roots-shot--full{grid-column:1/-1}.roots-shot__link{background:#fff8e6;border:2px solid #111;border-radius:6px;display:block;overflow:hidden}.roots-shot__link:focus-visible{outline:3px solid #f9a602;outline-offset:3px}.roots-shot__link img{display:block;height:auto;width:100%}.roots-shot figcaption{grid-gap:.3rem;display:grid;font-size:.85rem;gap:.3rem;line-height:1.4;padding-top:.6rem}.roots-shot figcaption strong{font-size:.95rem}.roots-shot figcaption small{font-size:.8rem;opacity:.8}@media(min-width:700px){.roots-split{align-items:start;grid-template-columns:.85fr 1.15fr}.roots-split--text-heavy{grid-template-columns:1.15fr .85fr}.roots-shot-grid--gallery,.roots-shot-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:699px){.roots-topic-grid{grid-template-columns:1fr}}@media(max-width:520px){.modal-overlay{padding:.5rem}.modal-content{margin:0 auto;max-height:calc(100dvh - 1rem)}.modal-content__details h3{font-size:1.5rem;margin-bottom:.75rem}.case-study-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.4rem}.case-study-tab{flex:0 0 auto;white-space:nowrap}}.bloomreach-banner{gap:1.35rem}.bloomreach-banner__details{grid-gap:1.2rem;display:grid;gap:1.2rem}.bloomreach-banner__details h5{font-size:.95rem;margin:0 0 .4rem}.bloomreach-banner__details>div{border-left:3px solid #f9a602;padding-left:.9rem}@media(min-width:700px){.bloomreach-banner__details{grid-template-columns:repeat(2,minmax(0,1fr))}.bloomreach-banner__details>div:last-child{grid-column:1/-1}}.bloomreach-banner__screenshots{grid-gap:1.5rem;display:grid;gap:1.5rem}.bloomreach-banner__shot{margin:0;min-width:0}.bloomreach-banner__shot a{background:#fff8e6;border:2px solid #111;border-radius:6px;display:block;overflow:hidden}.bloomreach-banner__shot a:focus-visible{outline:3px solid #f9a602;outline-offset:3px}.bloomreach-banner__shot img{display:block;height:auto;width:100%}.bloomreach-banner__shot figcaption{grid-gap:.3rem;display:grid;font-size:.85rem;gap:.3rem;line-height:1.4;padding-top:.6rem}body.is-night-mode .bloomreach-banner__shot a{border-color:var(--night-border)}.project-tags--modal{gap:.55rem}.case-study-controls{grid-gap:1rem;align-items:center;display:grid;flex-shrink:0;gap:1rem;grid-template-columns:auto 1fr auto;margin-top:1.25rem}@media(max-width:520px){.case-study-controls{grid-template-columns:1fr 1fr}.case-study-controls .case-study-progress{grid-column:1/-1;grid-row:1}}.case-study-control{min-height:40px;min-width:7.25rem;padding:.8rem 1rem}.case-study-progress{display:flex;gap:.45rem;justify-content:center}.case-study-progress__dot{background:#fff;border:2px solid #111;border-radius:999px;cursor:pointer;height:.85rem;padding:0;width:.85rem}.case-study-progress__dot:focus-visible{outline:3px solid #111;outline-offset:3px}.case-study-progress__dot--active{background:#f9a602}.close{background:#fff;border:2px solid #111;border-radius:999px;color:#111;font-size:1.6rem;font-weight:700;height:2.4rem;line-height:1;position:absolute;right:.8rem;top:.8rem;width:2.4rem;z-index:2}.close:focus-visible,.close:hover{background:#f9a602}@keyframes scaleUp{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes caseSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.project-card:focus-within,.project-card:focus-within .project-card__image-wrap img,.project-card:hover,.project-card:hover .project-card__image-wrap img,.project-card:nth-child(2n):focus-within,.project-card:nth-child(2n):hover{transform:none!important}.case-study-slide-shell,.case-study-tab,.modal-content,.project-card__button{animation:none;transition:none}}
/*# sourceMappingURL=main.88e42c10.css.map*/