@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}*,*:before,*:after{box-sizing:border-box}*{margin:0}@media(prefers-reduced-motion:no-preference){html{interpolate-size:allow-keywords}}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}#root,#__next{isolation:isolate}*,:before,:after{box-sizing:border-box}html{font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";line-height:1.15;-webkit-text-size-adjust:100%;tab-size:4}body{margin:0}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:currentcolor}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}html{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:light}*,*:before,*:after{box-sizing:inherit}body{margin:0;padding:0;font-family:cabinregular;font-size:16px;line-height:1.55}a{text-decoration:none}a:hover,a:focus-visible{text-decoration:underline;outline:none}h1,h2,h3,h4,h5,h6{color:#9c1a52;font-family:cabinsemibold;font-weight:600;line-height:1}strong{font-weight:600}input,textarea,select{padding:.6rem .75rem .5rem;font-family:inherit;font-size:1rem}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #5A1F74;outline-offset:2px}button{border:none;cursor:pointer;transition:background-color .2s ease}button:focus{outline:2px solid #5A1F74;outline-offset:2px}button:active{outline:2px solid #5A1F74;outline-offset:2px}button:disabled{background:#121212;cursor:not-allowed}.site-main{width:100%;max-width:1080px;position:relative;margin:0 auto;background-color:#bfda71}@font-face{font-family:cabinregular;src:url(/fonts/cabin-regular-webfont.woff) format("woff"),url(/fonts/cabin-regular-webfont.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:cabinsemibold;src:url(/fonts/cabin-semibold-webfont.woff) format("woff"),url(/fonts/cabin-semibold-webfont.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.clearfix:after{clear:both;content:"";display:table}.container{margin-left:auto;margin-right:auto;width:100%}.hide-text{overflow:hidden;padding:0;text-indent:101%;white-space:nowrap}.visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}footer{position:relative;width:100%;max-width:1080px;margin:0 auto;height:218px;overflow:hidden;background-color:#00a2a6}@media(max-width:890px){footer{height:210px;background-image:url(/images/ui/Footer_1080.webp);background-size:cover;background-position:center}}@media(max-width:700px){footer{height:120px}}footer .footer-parallax-img{position:absolute;left:50%;top:0;height:100%;width:auto;transform:translate3d(-50%,0,0);will-change:transform;pointer-events:none}@media(max-width:890px){footer .footer-parallax-img{display:none;transform:none}}.copyright{width:100%;max-width:1080px;padding:10px 0;margin:0 auto;text-align:center;color:#fff;background-color:#00a2a6}body.has-galaxy{position:relative;background:#121212;color:#f5f5f5}.galaxy-bg{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}header{width:100%;position:relative;margin:0 auto}header .skip-link{position:absolute;left:20px;top:-100px;padding:8px 12px;z-index:20;color:#121212;background:#fff;border-radius:4px;text-decoration:none;font-weight:600;transition:top .2s ease}header .skip-link:focus{top:10px;outline:2px solid #571751;outline-offset:2px}header .site-header-bar{width:100%;position:fixed;top:0;left:0;margin:0 auto;background-color:#00a2a6;z-index:10;transform:translateY(-100%);opacity:0;transition:transform .35s ease-out,opacity .35s ease-out;will-change:transform,opacity;box-shadow:0 8px 18px #00000040}header .site-header-bar--visible{transform:translateY(0);opacity:1}header .site-header-inner{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:1080px;padding:10px 0;margin:0 auto}header .site-header-inner .site-logo{display:flex;align-items:center;margin:auto auto auto 20px;text-decoration:none}header .site-header-inner .site-logo:hover{color:#fff;text-decoration:underline}header .site-header-inner .site-logo:focus{outline:2px solid #571751;outline-offset:2px}header .site-header-inner .site-logo.active{pointer:arrow;pointer-events:none}header .site-header-inner .site-logo .logo-icon{display:inline-block;margin-right:5px;color:#fff}header .site-header-inner .site-logo .site-logo-mark{display:none}@media(max-width:430px){header .site-header-inner .site-logo .site-logo-mark{display:inline-block;color:#fff;text-transform:uppercase;font-size:1rem;letter-spacing:.08em}}@media(max-width:400px){header .site-header-inner .site-logo .site-logo-mark{font-size:.8rem}}@media(max-width:325px){header .site-header-inner .site-logo .site-logo-mark{font-size:.75rem}}@media(max-width:305px){header .site-header-inner .site-logo .site-logo-mark{font-size:.6rem}}header .site-header-inner .site-logo .site-logo-text{display:inline-block;color:#fff;text-transform:uppercase;font-size:1rem;letter-spacing:.08em}@media(max-width:430px){header .site-header-inner .site-logo .site-logo-text{display:none}}header .site-header-inner nav{margin:auto 20px auto auto}header .site-header-inner nav .site-nav{display:flex;justify-content:flex-end;align-items:center;gap:10px;list-style:none}header .site-header-inner nav .site-nav .site-nav-link{display:block;position:relative;color:#fff;text-transform:uppercase;font-size:1rem;text-decoration:none}@media(max-width:400px){header .site-header-inner nav .site-nav .site-nav-link{font-size:.8rem}}@media(max-width:325px){header .site-header-inner nav .site-nav .site-nav-link{font-size:.75rem}}@media(max-width:305px){header .site-header-inner nav .site-nav .site-nav-link{font-size:.6rem}}header .site-header-inner nav .site-nav .site-nav-link:hover{text-decoration:underline}header .site-header-inner nav .site-nav .site-nav-link:focus{outline:2px solid #571751;outline-offset:2px}header .site-header-inner nav .site-nav .site-nav-link.is-active{text-decoration:underline;color:#121212;pointer-events:none}.hero{position:relative;width:100%;max-width:1080px;margin:0 auto;height:218px;overflow:hidden}@media(max-width:890px){.hero{height:210px;background-image:url(/images/ui/Header_1080.webp);background-size:cover;background-position:center}}@media(max-width:700px){.hero{height:120px}}.hero .parallax-img{position:absolute;left:50%;top:0;transform:translate3d(-50%,0,0);height:100%;width:auto;will-change:transform;pointer-events:none}@media(max-width:890px){.hero .parallax-img{display:none;transform:none}}.project-card{display:flex;flex-direction:column;width:100%;padding:0;margin:0;break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;background-color:#fff}.project-card:hover{background-color:#cfe8ff}.project-card .project-card-image{width:100%;height:500px;position:relative;margin-bottom:.75rem;overflow:hidden}@media(max-width:850px){.project-card .project-card-image{height:400px}}.project-card .project-card-image.project-card-image--top img{top:0}.project-card .project-card-image.project-card-image--bottom img{bottom:0}.project-card .project-card-image img{display:block;width:100%;height:auto;position:absolute;left:0}.project-card .project-card-body{padding:20px;color:#571751;text-align:left}.project-card .project-card-body .project-card-header{margin-bottom:5px}.project-card .project-card-body .project-card-header h3{color:#c94768}.project-card .project-card-body .project-summary{color:#123a7a}.project-card .project-card-body a{color:#c94768;text-decoration:underline}.project-card .project-card-body a:hover{color:#571751}.project-card .project-card-body a:active,.project-card .project-card-body a:focus{border:2px solid #571751}.modal-backdrop{position:fixed;inset:0;background:#fff;display:flex;justify-content:center;z-index:1000;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;cursor:pointer}.modal-dialog{width:min(90vw,1080px);max-width:1080px;padding-top:90px;background:#fff;color:#c94768;cursor:auto}.modal-dialog:focus{outline:none}.modal-dialog button,.modal-dialog a{cursor:pointer}.modal-dialog .modal-header{display:flex;flex-direction:column;align-items:flex-end;width:min(90vw,1080px);position:fixed;top:0;left:50%;transform:translate(-50%);z-index:2;padding:20px 20px 16px;background-color:#fff}.modal-dialog .modal-header .escape-message{text-align:right;font-size:.8rem}.modal-dialog .modal-header .modal-nav{display:flex;align-items:center;gap:.5rem}.modal-dialog .modal-header .modal-nav .modal-nav-button{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;color:#fff;background-color:#571751;border:2px solid #571751;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;text-decoration:none}.modal-dialog .modal-header .modal-nav .modal-nav-button:hover{background-color:#9c1a52;border-color:#9c1a52}.modal-dialog .modal-header .modal-nav .modal-nav-button:focus{outline:2px solid #571751;outline-offset:2px}.modal-dialog .modal-header .modal-nav .modal-nav-button svg{font-size:1rem}.modal-dialog .modal-header .modal-nav .modal-nav-button span{padding-top:2px}.modal-dialog .modal-header .modal-nav .modal-close{display:inline-flex;align-items:center;padding:7.5px 14px;color:#fff;background-color:#571751;border:2px solid #571751;text-transform:uppercase;font-size:1.15rem;letter-spacing:.04em;text-decoration:none}.modal-dialog .modal-header .modal-nav .modal-close:hover{background-color:#9c1a52;border-color:#9c1a52}.modal-dialog .modal-header .modal-nav .modal-close:focus{outline:2px solid #571751;outline-offset:2px}.modal-dialog .modal-header .modal-nav .modal-close svg{font-size:1rem}.modal-dialog .modal-header .modal-nav .modal-close span{padding-top:2px}.modal-dialog .project-modal-body{display:flex;justify-content:center;gap:20px;padding:0 20px 20px}@media(max-width:700px){.modal-dialog .project-modal-body{flex-wrap:wrap;gap:0}}.modal-dialog .project-modal-images{width:59.36%}@media(max-width:700px){.modal-dialog .project-modal-images{order:2;width:100%}}.modal-dialog .project-modal-images .project-modal-image{margin-bottom:1rem}.modal-dialog .project-modal-images .project-modal-image:last-of-type{margin-bottom:0}.modal-dialog .project-modal-images .project-modal-image img{width:100%}.modal-dialog .project-modal-information{width:39.04%}@media(max-width:700px){.modal-dialog .project-modal-information{order:1;width:100%;margin:40px 0}}.modal-dialog .project-modal-information .project-modal-title{margin:0 0 10px;color:#c94768}.modal-dialog .project-modal-information p{width:100%;margin:0 0 10px;color:#00a2a6;font-size:1rem;line-height:1.5}.modal-dialog .project-modal-information strong{color:#571751}.modal-dialog .project-modal-information .project-modal-link a{color:#c94768;text-decoration:underline;border:2px solid #FFFFFF}.modal-dialog .project-modal-information .project-modal-link a:hover{color:#571751}.modal-dialog .project-modal-information .project-modal-link a:active,.modal-dialog .project-modal-information .project-modal-link a:focus{border:2px solid #571751}.modal-dialog .project-modal-information .project-modal-highlights{color:#00a2a6}.modal-dialog .project-modal-information .project-modal-highlights h3{margin:15px 0 5px;color:#571751}.modal-dialog .project-modal-information .project-modal-highlights ul{padding-left:20px}.about{width:100%;padding:40px 20px}.about h1{margin:40px 0 5px}@media(max-width:670px){.about h1{margin:0 auto 5px}}.about .about-columns{display:flex;justify-content:space-between;gap:40px}@media(max-width:670px){.about .about-columns{flex-wrap:wrap;justify-content:center}}.about .about-columns .about-left{order:1;width:25%}@media(max-width:670px){.about .about-columns .about-left{order:2;width:100%}}.about .about-columns .about-left img{width:100%}@media(max-width:670px){.about .about-columns .about-left img{max-width:350px;display:block}}.about .about-columns .about-left .about-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.about .about-columns .about-left .about-links a{display:inline-flex;align-items:center;gap:8px;width:100%;padding:6px 14px 4px;color:#fff;background-color:#5a1f74;border:2px solid #5A1F74;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;text-decoration:none}@media(max-width:670px){.about .about-columns .about-left .about-links a{max-width:350px}}.about .about-columns .about-left .about-links a:hover{background-color:#9c1a52;border-color:#9c1a52}.about .about-columns .about-left .about-links a:focus{outline:2px solid #5A1F74;outline-offset:2px}.about .about-columns .about-left .about-links a .about-icon{font-size:1rem}.about .about-columns .about-left .about-links a .about-link-title{padding-top:0}.about .about-columns .about-right{order:2;width:75%}@media(max-width:670px){.about .about-columns .about-right{order:1;width:100%}}.about .about-columns .about-right .about-group{width:100%;max-width:486px;margin:0 0 30px}.about .about-columns .about-right .about-group:last-of-type{margin-bottom:0}.about .about-columns .about-right p{margin-bottom:10px}.about .about-columns .about-right .about-title{margin:0 0 5px;text-transform:uppercase;font-size:1.2em;color:#5a1f74}.about .about-columns .about-right .about-heading{margin:0;font-size:1em;line-height:1.2em;color:#9c1a52}.about .about-columns .about-right .about-detail{margin:0 0 10px;font-size:1em;line-height:1.2em;color:#123a7a}.about .about-columns .about-cta a{display:inline-flex;align-items:center;gap:8px;width:100%;max-width:250px;padding:6px 14px 4px;color:#fff;background-color:#5a1f74;border:2px solid #5A1F74;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;text-decoration:none}@media(max-width:670px){.about .about-columns .about-cta a{max-width:350px}}.about .about-columns .about-cta a:hover{background-color:#9c1a52;border-color:#9c1a52}.about .about-columns .about-cta a:focus{outline:2px solid #5A1F74;outline-offset:2px}.about .about-columns .about-cta a .about-icon{font-size:1rem}.about .about-columns .about-cta a .about-link-title{padding-top:0}.contact{width:100%;padding:40px 20px}.contact h1{margin:40px 0 10px}@media(max-width:780px){.contact h1{margin:0 0 10px}}.contact .contact-columns{display:flex;justify-content:space-between;gap:40px}@media(max-width:780px){.contact .contact-columns{flex-wrap:wrap;justify-content:center}}.contact .contact-left{width:40%;max-width:480px}@media(max-width:780px){.contact .contact-left{width:100%;max-width:560px}}.contact .contact-left p{margin-bottom:1rem}.contact .contact-left .contact-details{margin:30px 0 20px}.contact .contact-left .contact-details .contact-detail-row{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:.95rem;line-height:1.4}.contact .contact-left .contact-details .contact-detail-row .contact-detail-icon{min-width:20px}.contact .contact-left .contact-details .contact-detail-row a{color:#571751;border:2px solid #BFDA71;text-decoration:none}.contact .contact-left .contact-details .contact-detail-row a:hover{color:#9c1a52;text-decoration:underline}.contact .contact-left .contact-details .contact-detail-row a:focus,.contact .contact-left .contact-details .contact-detail-row a:active{border:2px solid #571751}.contact .contact-left .contact-links{display:flex;flex-wrap:wrap;gap:10px}.contact .contact-left .contact-links a{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;color:#fff;background-color:#571751;border:2px solid #571751;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;text-decoration:none}.contact .contact-left .contact-links a:hover{background-color:#9c1a52;border-color:#9c1a52}.contact .contact-left .contact-links a:focus{outline:2px solid #571751;outline-offset:2px}.contact .contact-left .contact-links a svg{font-size:1rem}.contact .contact-left .contact-links a span{padding-top:2px}.contact .contact-right{width:60%;max-width:560px}@media(max-width:780px){.contact .contact-right{width:100%;order:2}}.contact .contact-right .contact-form{width:100%}.contact .contact-right .contact-form-group{display:flex;flex-direction:column;margin-bottom:20px}.contact .contact-right .contact-form-group label{font-size:.95rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;color:#571751}.contact .contact-right .contact-form-group input,.contact .contact-right .contact-form-group textarea{padding:10px 12px;border-radius:0;border:2px solid #9C1A52;background-color:#fff;color:#9c1a52;font-size:1rem;font-family:inherit;box-sizing:border-box}.contact .contact-right .contact-form-group input:focus-visible,.contact .contact-right .contact-form-group textarea:focus-visible{outline:2px solid #571751;outline-offset:2px}.contact .contact-right .contact-form-group textarea{resize:vertical;min-height:140px}.contact .contact-right .contact-error{margin-top:4px;font-size:.8rem;color:#9c1a52}.contact .contact-right .contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.contact .contact-right .contact-submit{display:inline-flex;align-items:center;gap:8px;padding:14px 24px 12px;border:none;text-transform:uppercase;letter-spacing:.08em;font-size:.95rem;cursor:pointer;background-color:#571751;color:#fff}.contact .contact-right .contact-submit:hover{background-color:#9c1a52}.contact .contact-right .contact-submit:focus-visible{outline:2px solid #123A7A;outline-offset:2px}.contact .contact-right .contact-submit span{padding-top:2px}.contact .contact-right .contact-submit .contact-submit-icon{font-size:1rem}.contact .contact-right .contact-status{font-size:.85rem;color:#123a7a}.work{max-width:72rem;margin:0 auto;padding:40px 20px}.work .page-header{margin-bottom:1.5rem}.work .page-header h1{margin-bottom:10px;color:#9c1a52}.work .page-header .lead{color:#5a1f74;font-size:1rem;line-height:1.2}.work .work-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.work .work-filters .chip{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;color:#fff;background-color:#5a1f74;border:2px solid #5A1F74;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;text-decoration:none}.work .work-filters .chip:hover{background-color:#9c1a52;border-color:#9c1a52}.work .work-filters .chip:focus{outline:2px solid #5A1F74;outline-offset:2px}.work .work-filters .chip svg{font-size:1rem}.work .work-filters .chip span{padding-top:2px}.work .work-filters .chip-icon{font-size:.9rem}.work .work-filters .chip-active{background-color:#9c1a52;border-color:#9c1a52;pointer-events:none}.work .work-filters .chip-active .chip-icon{transform:scale(1.2);transition:transform .2s ease}.work .projects-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-flow:row dense;gap:1.5rem}@media(max-width:850px){.work .projects-grid{grid-template-columns:1fr}}
