@charset "UTF-8";header h1{font-size:clamp(2rem,18vw,5.5rem)}header .role{font-size:clamp(3rem,8vw,3.5rem);font-weight:300;line-height:1.2}header .role span{display:block;font-size:80%;font-weight:100;line-height:.8;padding:.5rem}body.is-portfolio main{--portfolio-content-max-width: 52rem;--portfolio-heading-icon-column: 3.16rem;--portfolio-heading-icon-gap: .65rem;--portfolio-heading-icon-size: .7em;--portfolio-heading-text-offset: calc( var(--portfolio-heading-icon-column) + var(--portfolio-heading-icon-gap) )}@supports (height: 1cap){body.is-portfolio main{--portfolio-heading-icon-size: 1cap}}@media(width<375px){body.is-portfolio main{--portfolio-heading-icon-column: 2.7rem;--portfolio-heading-icon-gap: .35rem;--portfolio-heading-icon-size: 1.5rem}body.is-portfolio main h3{font-size:1.85rem;line-height:1.2}}main p{max-width:var(--portfolio-content-max-width)}main h2{margin-top:11rem}main h2+h3{margin-top:3rem}main h3{align-items:start;column-gap:var(--portfolio-heading-icon-gap);display:grid;grid-template-columns:var(--portfolio-heading-icon-column) minmax(0,1fr);margin-left:auto;margin-right:auto;max-width:var(--portfolio-content-max-width);text-align:left;width:100%}main p+p{margin-top:1.5rem}.portfolio-who{align-items:flex-start;display:flex;flex-direction:column;gap:.5rem;margin:0 auto;max-width:var(--portfolio-content-max-width);width:100%}.portfolio-who__logo{aspect-ratio:auto;height:auto;max-height:4.5rem;width:auto}.portfolio-who__name{background-clip:text;background-image:radial-gradient(ellipse at center,#eff1ffdb 10%,#757575db);background-position:center center;background-repeat:no-repeat;color:transparent;opacity:.86;text-shadow:0 0 8px var(--glow-primary-05);background-size:130% 170%;display:block;font-family:Iowan Old Style,Apple Garamond,Baskerville,Times New Roman,Droid Serif,Times,Source Serif Pro,serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:clamp(2rem,5vw,3rem);font-weight:400;line-height:1.15;margin:0;text-align:left;text-rendering:optimizeLegibility;text-transform:uppercase;width:100%}.portfolio-who__copy{margin:.5rem 0 0;text-align:left}.header-icon{align-self:start;display:block;height:var(--portfolio-heading-icon-size);justify-self:center;margin-top:calc((1lh - var(--portfolio-heading-icon-size)) / 2);max-width:var(--portfolio-heading-icon-column);width:auto}.indented{padding-left:var(--portfolio-heading-text-offset)}.technology-icon{--technology-icon-height: 1.75rem;filter:brightness(0) invert(1);height:var(--technology-icon-height);max-width:3.8rem;width:auto}.brand-list.technology-brand-list{display:grid;gap:2.15rem 1.35rem;grid-template-columns:repeat(auto-fill,minmax(6.75rem,1fr));justify-items:center;margin:0 auto;max-width:var(--portfolio-content-max-width)}.brand-list.technology-brand-list li{align-items:center;gap:.45rem;min-width:6.75rem;width:100%}.brand-list.technology-brand-list .brand-logo{align-items:center;display:flex;filter:drop-shadow(0 0 13px rgb(236 30 87 / .22));height:2.1rem;justify-content:center;margin-bottom:0;width:100%}.brand-list.technology-brand-list .brand-name{color:#ffffffc7;font-family:"SF Pro Display","SF Pro Icons","Helvetica Neue",-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:1rem;line-height:1.2;white-space:nowrap}.brand-list.technology-brand-list .technology-icon--aws,.brand-list.technology-brand-list .technology-icon--aws_s3,.brand-list.technology-brand-list .technology-icon--pagefind,.brand-list.technology-brand-list .technology-icon--php{max-width:4.5rem}.brand-list.technology-brand-list .technology-icon--bootstrap,.brand-list.technology-brand-list .technology-icon--illustrator,.brand-list.technology-brand-list .technology-icon--photoshop{--technology-icon-height: 2rem}.technology-icon--pagefind{filter:none}.img-full{--portfolio-banner-divider-margin-start: 18rem;--portfolio-banner-margin-block: 7rem;background-image:var(--lqip-image);background-position:center;background-repeat:no-repeat;background-size:cover;box-shadow:0 0 95px var(--glow-secondary-10);display:block;margin:var(--portfolio-banner-margin-block) -4rem;max-width:none;min-height:250px;object-fit:cover;width:calc(100% + 8rem)}.img-full:has(+h2){margin-bottom:0;margin-top:var(--portfolio-banner-divider-margin-start)}@media(max-width:800px){.img-full{margin-left:-2rem;margin-right:-2rem;width:calc(100% + 4rem)}}@media(max-width:550px){.img-full{margin-left:-1rem;margin-right:-1rem;width:calc(100% + 2rem)}}@media(min-width:1200px){.img-full{--portfolio-banner-margin-block: 9rem;margin-inline:calc(50% - 50vw);max-width:100vw;width:100vw}}.govspace-banner{--govspace-stripe-period: clamp(14.8px, 3.45vw, 69px);--govspace-stripe-width: clamp(6.4px, 1.5vw, 30px);background-image:repeating-linear-gradient(45deg,#2d2d2d 0 var(--govspace-stripe-width),#333 var(--govspace-stripe-width) var(--govspace-stripe-period));display:grid;height:30vw;min-height:0;place-items:center}.govspace-banner .govspace-banner-logo{display:block;height:75%;object-fit:contain;width:72%}@media(min-width:800px){.govspace-banner .govspace-banner-logo{max-width:min(36.7%,34rem);min-width:12rem;width:clamp(10rem,36.7%,34rem)}}.logo-banner{--logo-banner-height: min(34rem, max(18.5rem, 45vw), 70svh);--logo-banner-padding: clamp(3rem, 8vw, 5.5rem);--logo-banner-ratio: 2;--logo-banner-wide-scale-penalty: max( 0, calc(var(--logo-banner-ratio) - 2) );--logo-banner-width-scale: max( clamp( .46, calc( .85 - var(--logo-banner-ratio) * .045 - var(--logo-banner-wide-scale-penalty) * .08 ), .81 ), calc(1 - (var(--logo-banner-ratio) - 1) * .55) );align-items:center;display:flex;height:var(--logo-banner-height);justify-content:center;min-height:0;padding:var(--logo-banner-padding)}.logo-banner__image{display:block;height:auto;max-height:100%;max-width:min(100%,(var(--logo-banner-height) - 2 * var(--logo-banner-padding)) * var(--logo-banner-ratio) * var(--logo-banner-width-scale));width:100%}.container>img:not(.img-full){border-radius:16px;height:auto;margin:6rem 0;width:100%}.browser{backdrop-filter:blur(5px) saturate(1.25);background-color:#2b525b52;background-image:radial-gradient(ellipse at center,#e056fd14,#e056fd0a 42%,#00cfff1a);border-radius:24px;box-shadow:3px -5px 180px var(--glow-secondary-20),0 0 60px #000c,-3px -3px 180px var(--glow-primary-20),inset 0 0 1.5px #fff6;box-sizing:border-box;line-height:0;margin:6rem auto;max-width:100%;overflow:hidden;padding:1px;width:100%}.browser:before{color:#fff3;content:"···";font-family:sans-serif;font-size:7rem;letter-spacing:-.5rem;margin:1.45rem .4rem;position:absolute}.browser .url{background-color:#ffffff26;border-radius:8px;box-shadow:inset 0 0 1.5px #fff3;font-size:50%;line-height:1;margin:.5rem auto;max-width:50%;padding:.5rem;text-align:center}.browser img{border-end-end-radius:23px;border-end-start-radius:23px;box-shadow:0 0 95px var(--glow-secondary-10);cursor:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='40'%20height='48'%20viewBox='0%200%2040%2048'%3E%3Ctext%20x='0'%20y='30'%20font-size='28'%3E%F0%9F%93%B8%3C/text%3E%3C/svg%3E") 16 0,default;display:block;height:auto;line-height:10rem;text-align:center;width:100%}.browser img.lqip-image{background-image:var(--lqip-image);background-position:center;background-repeat:no-repeat;background-size:cover}@media(max-width:550px){.browser:before{content:""}.browser .url{max-width:75%}}.browser--legacy-site{max-width:min(100%,960px)}.browser--govcms{max-width:100%}.btn{margin:auto}
