body{color:#111;background-color:var(--page-background-color);flex-direction:column;min-height:100vh;margin:0;padding:0;display:flex}:root{--white:white;--black:black;--gray-700:#495057;--gray-600:#6c757d;--gray-500:#adb5bd;--header-nav-bkg:#ffffffd9;--badge-square-color:black;--page-background-color:white;--project-menu-bkg:white;--font-family-mono:"RobotoMono-VF", monospace;--font-family-base:"Inter-VF", sans-serif}.l-container{--l-max:1200px;--l-pad:clamp(16px, 4vw, 48px);margin-left:auto;margin-right:auto;margin:0 calc(1em + 2vw)}@media (min-width:768px){.l-container{margin:0 calc(1em + 4vw)}}.l-grid{--l-gap:clamp(12px, 2vw, 24px);gap:var(--l-gap);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.l-col-1{grid-column:span 1}.l-col-2{grid-column:span 2}.l-col-3{grid-column:span 3}.l-col-4{grid-column:span 4}.l-col-5{grid-column:span 5}.l-col-6{grid-column:span 6}.l-col-7{grid-column:span 7}.l-col-8{grid-column:span 8}.l-col-9{grid-column:span 9}.l-col-10{grid-column:span 10}.l-col-11{grid-column:span 11}.l-col-12{grid-column:span 12}.l-start-1{grid-column-start:1}.l-start-2{grid-column-start:2}.l-start-3{grid-column-start:3}.l-start-4{grid-column-start:4}.l-start-5{grid-column-start:5}.l-start-6{grid-column-start:6}.l-start-7{grid-column-start:7}.l-start-8{grid-column-start:8}.l-start-9{grid-column-start:9}.l-start-10{grid-column-start:10}.l-start-11{grid-column-start:11}.l-start-12{grid-column-start:12}@media (max-width:639.98px){.sm-col-1{grid-column:span 1}.sm-col-2{grid-column:span 2}.sm-col-3{grid-column:span 3}.sm-col-4{grid-column:span 4}.sm-col-5{grid-column:span 5}.sm-col-6{grid-column:span 6}.sm-col-7{grid-column:span 7}.sm-col-8{grid-column:span 8}.sm-col-9{grid-column:span 9}.sm-col-10{grid-column:span 10}.sm-col-11{grid-column:span 11}.sm-col-12{grid-column:span 12}.sm-start-1{grid-column-start:1}.sm-start-2{grid-column-start:2}.sm-start-3{grid-column-start:3}.sm-start-4{grid-column-start:4}.sm-start-5{grid-column-start:5}.sm-start-6{grid-column-start:6}.sm-start-7{grid-column-start:7}.sm-start-8{grid-column-start:8}.sm-start-9{grid-column-start:9}.sm-start-10{grid-column-start:10}.sm-start-11{grid-column-start:11}.sm-start-12{grid-column-start:12}.l-grid{grid-template-columns:1fr}.l-col-1,.l-col-2,.l-col-3,.l-col-4,.l-col-5,.l-col-6,.l-col-7,.l-col-8,.l-col-9,.l-col-10,.l-col-11,.l-col-12{grid-column:1/-1}}@media (min-width:640px) and (max-width:1023.98px){.md-col-1{grid-column:span 1}.md-col-2{grid-column:span 2}.md-col-3{grid-column:span 3}.md-col-4{grid-column:span 4}.md-col-5{grid-column:span 5}.md-col-6{grid-column:span 6}.md-col-7{grid-column:span 7}.md-col-8{grid-column:span 8}.md-col-9{grid-column:span 9}.md-col-10{grid-column:span 10}.md-col-11{grid-column:span 11}.md-col-12{grid-column:span 12}.md-start-1{grid-column-start:1}.md-start-2{grid-column-start:2}.md-start-3{grid-column-start:3}.md-start-4{grid-column-start:4}.md-start-5{grid-column-start:5}.md-start-6{grid-column-start:6}.md-start-7{grid-column-start:7}.md-start-8{grid-column-start:8}.md-start-9{grid-column-start:9}.md-start-10{grid-column-start:10}.md-start-11{grid-column-start:11}.md-start-12{grid-column-start:12}}@media (min-width:1024px){.lg-col-1{grid-column:span 1}.lg-col-2{grid-column:span 2}.lg-col-3{grid-column:span 3}.lg-col-4{grid-column:span 4}.lg-col-5{grid-column:span 5}.lg-col-6{grid-column:span 6}.lg-col-7{grid-column:span 7}.lg-col-8{grid-column:span 8}.lg-col-9{grid-column:span 9}.lg-col-10{grid-column:span 10}.lg-col-11{grid-column:span 11}.lg-col-12{grid-column:span 12}.lg-start-1{grid-column-start:1}.lg-start-2{grid-column-start:2}.lg-start-3{grid-column-start:3}.lg-start-4{grid-column-start:4}.lg-start-5{grid-column-start:5}.lg-start-6{grid-column-start:6}.lg-start-7{grid-column-start:7}.lg-start-8{grid-column-start:8}.lg-start-9{grid-column-start:9}.lg-start-10{grid-column-start:10}.lg-start-11{grid-column-start:11}.lg-start-12{grid-column-start:12}}@font-face{font-family:Inter-VF;src:url(https://ik.imagekit.io/patrikgarde/Inter-VariableFont_opsz,wght.woff2)format("woff2"),url(https://ik.imagekit.io/patrikgarde/Inter-VariableFont_opsz,wght.woff)format("woff");font-weight:100 600;font-style:normal;font-display:swap}@font-face{font-family:RobotoMono-VF;src:url(https://ik.imagekit.io/patrikgarde/RobotoMono-VariableFont_wght.woff2)format("woff2"),url("https: //ik.imagekit.io/patrikgarde/RobotoMono-VariableFont_wght.woff")format("woff");font-weight:300 500;font-style:normal;font-display:swap}body{font-size:calc(15px + .390625vw);line-height:1.4;font-family:var(--font-family-base)}body,h1,h2,h3,h4,h5,h6,p{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;-webkit-backface-visibility:hidden;backface-visibility:hidden;letter-spacing:-.0135em;margin:0;padding:0;font-style:normal;font-weight:320;transition:line-height .4s,font-size .4s}h1,h2,h3,h4,h5,h6,p{margin-bottom:1em}h1,.h1{font-size:1.85em;line-height:1.15}h2,.h2{font-size:1.6em;line-height:1.25}h3,.h3{font-size:1.4em;font-weight:350;line-height:1.25}h4,.h4{font-size:1.2em;font-weight:350;line-height:1.35}h5,.h5{font-size:1.1em;font-weight:400;line-height:1.35}h6,.h6{font-size:1.05em;font-weight:450;line-height:1.35}p{-webkit-font-smoothing:auto}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.badge{font-family:var(--font-family-mono)}header.nav{z-index:100;background-color:var(--header-nav-bkg);letter-spacing:-.011em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:.75px solid #0000;align-items:center;height:4vw;min-height:70px;margin:0;padding-top:0;padding-bottom:0;padding-left:0;font-size:.9em;font-weight:500;line-height:1.25vw;transition:border-color .3s;display:flex;position:-webkit-sticky;position:sticky;top:0}header.nav.scrolled{border-color:#0006}@media (min-width:992px){header.nav{font-size:.9em}}header.nav .l-container{width:100%;max-width:none}header.nav .l-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center}header.nav .nav-left{grid-column:1/span 4}header.nav .project-title{grid-column:5/span 4;justify-self:center}header.nav .project-title h1{letter-spacing:-.04em;margin:0;font-size:1em;font-weight:500}header.nav .nav-right{grid-column:9/-1;justify-self:stretch}@media (max-width:639.98px){header.nav .nav-left{grid-column:1/span 7}header.nav .project-title{display:none}header.nav .nav-right{grid-column:8/-1;justify-content:flex-end}}header.nav .nav-left,header.nav .nav-right{align-items:center;gap:.5rem;display:flex}header.nav .nav-right{justify-content:flex-end}header.nav .nav a.is-active{text-decoration:underline}header.nav .project-title{text-align:center;display:none}@media (min-width:992px){header.nav .project-title{display:block}}header.nav .nav-btn{color:#000;background-color:#0000;border:none;border-radius:.3em;align-items:center;margin:0;padding:.5em;text-decoration:none;transition:all .5s;display:flex}header.nav .nav-btn.pg-inc{margin-left:-.5em;padding:.5em .5em .75em;font-size:1.2em}header.nav .nav-btn.pg-inc .svg-mask{-webkit-mask-image:url(../img/_icons/pg-inc-blk.svg);mask-image:url(../img/_icons/pg-inc-blk.svg);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:revert;background-color:#000;width:2vw;min-width:24px;height:2vw;min-height:24px;margin-bottom:-.2em;margin-right:.35rem;-webkit-mask-position:50%;-webkit-mask-repeat:no-repeat}@media (min-width:992px){header.nav .nav-btn{margin-left:-.4em;font-size:1.1em}}header.nav .nav-btn img{opacity:0;width:100%;height:auto;display:block}header.nav .nav-btn:hover{color:#fff;background:#000}header.nav .nav-btn:hover .svg-mask{background-color:#fff}header.nav .btn-projects{position:relative}header.nav .btn-projects span{box-sizing:border-box;border:2.5px solid #000;border-radius:.2em;width:16px;height:26px;margin-right:.2em;transition:opacity .25s,border-color .25s,background-color .25s;display:inline-block}header.nav .btn-projects span:nth-of-type(2){margin-right:.5em}header.nav .btn-projects:hover span{border-color:#fff}header.nav .btn-projects:before,header.nav .btn-projects:after{content:"";opacity:0;background:#000;border-radius:.2em;width:1.3em;height:2.5px;transition:opacity .25s,transform .25s,background-color .25s;position:absolute;top:50%;left:.35em;transform:translateY(-50%)translate(25%)scale(1.2)}header.nav .btn-projects:before{transform:translateY(-50%)translate(25%)rotate(45deg)scale(1.2)}header.nav .btn-projects:after{transform:translateY(-50%)translate(25%)rotate(-45deg)scale(1.2)}header.nav .btn-projects.is-open{color:#fff;background:#000}header.nav .btn-projects.is-open span{opacity:0}header.nav .btn-projects.is-open:before,header.nav .btn-projects.is-open:after{opacity:1;background:#fff;transform:translateY(-50%)translate(25%)rotate(45deg)scale(1.2)}header.nav .btn-projects.is-open:after{transform:translateY(-50%)translate(25%)rotate(-45deg)scale(1.2)}.btn-hamburger{z-index:5}.btn-hamburger:hover #hamburger span{background:#fff}#hamburger,#hamburger span{box-sizing:border-box;display:inline-block}#hamburger{-webkit-appearance:none;appearance:none;cursor:pointer;background:0 0;border:none;width:2.5em;height:1.75em;position:relative}#hamburger:focus:not(:focus-visible){outline:none}#hamburger span{background:#000;border-radius:.2em;width:100%;height:3px;position:absolute}#hamburger span:first-of-type{transition:top .3s;top:0;left:0}#hamburger span:nth-of-type(2){transition:opacity .3s;top:43%;left:0}#hamburger span:nth-of-type(3){transition:bottom .3s;bottom:0;left:0}#hamburger.active span:first-of-type{transition:top .3s cubic-bezier(.36,-.42,.68,-.56),transform .3s .3s;top:43%;transform:rotate(-45deg)}#hamburger.active span:nth-of-type(2){opacity:0;transition:opacity 50ms .3s}#hamburger.active span:nth-of-type(3){transition:bottom .3s cubic-bezier(.36,-.42,.68,-.56),transform .3s .3s;top:43%;transform:rotate(45deg)}.hamburger-menu{visibility:hidden;opacity:0;pointer-events:none;z-index:2;background:#fffffff5;flex-direction:column;justify-content:center;width:100vw;height:100vh;transition:opacity .35s,transform .35s,visibility 0s linear .35s;display:flex;position:absolute;top:0;left:0;transform:translateY(8px)}.hamburger-menu menu{justify-content:center;align-self:top;text-align:center;flex-direction:column;width:70vw;margin:15vh auto auto;padding:0;display:flex}@media (min-width:992px){.hamburger-menu menu{width:50%}}.hamburger-menu menu a{color:#000;border-bottom:.75px solid #000;padding:1rem;font-size:1.4em;line-height:1.5;text-decoration:none}.hamburger-menu menu a:hover{color:#fff;background:#000}.hamburger-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .35s,transform .35s,visibility;transform:translateY(0)}.projects-menu{visibility:hidden;pointer-events:none;opacity:0;background:#0000008f;width:100vw;height:100vh;transition:opacity .35s,transform .35s,visibility 0s linear .35s;position:absolute;top:70px;left:0}.projects-menu .project-card-scroll{visibility:hidden;pointer-events:none;opacity:0;background:var(--project-menu-bkg);border-top:1px solid #00000038;border-bottom:1px solid #00000047;margin:0;padding:1.5em 0 2em 2em;box-shadow:0 2em 2em #0000001a}.projects-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .35s,transform .35s,visibility .35s}.projects-menu.is-open .project-card-scroll{opacity:1;visibility:visible;pointer-events:auto}.footer-nav{margin-bottom:1rem}.footer-nav a{border-bottom:1px solid #000;padding:.5em;font-size:1.3em;line-height:1;text-decoration:none;display:block}.footer-nav a:hover{color:#fff;background:#000}@media (min-width:576px){.footer-nav a{border:none;border-radius:.3em;display:inline-block}}main{flex:1 0 auto}.email-link{border:1px solid #000;border-radius:.3em;padding:.12em .5em;text-decoration:none}.email-link:hover{color:#fff;background-color:#000;text-decoration:none}[data-aos]{will-change:transform, opacity}.badge{text-transform:uppercase;letter-spacing:.02em;color:#000c;background:0 0;border:1px solid #00000040;border-radius:6px;align-items:center;width:-webkit-fit-content;width:fit-content;margin-bottom:1em;padding:10px 12px;font-size:12px;font-weight:450;line-height:1;display:flex}.badge:before{content:"";background:var(--badge-square-color);border-radius:2px;width:8px;height:8px;margin-right:10px;display:inline-block}.specialty-bullets{color:#00000080;font-size:.9em}.specialty-bullets code{letter-spacing:.02em;margin-bottom:.5rem;font-size:12px;font-weight:450;display:block}.specialty-bullets strong{letter-spacing:.02em;color:#000;margin-bottom:.5rem;font-size:18px;font-weight:450;display:block}.nowrap{white-space:nowrap}code,.code{font-family:var(--font-family-mono);letter-spacing:-.055em;margin-bottom:1em;font-size:.9em;font-weight:400;line-height:1.35;display:block}ul.code{font-family:var(--font-family-mono);text-transform:uppercase;margin:0 0 1.5em;font-size:.7em;font-weight:400;line-height:1.5;list-style-type:square}.index .btn-projects{display:none!important}.index .specialty-bullets{margin-bottom:2em;display:none}.index .specialty-bullets code{display:none}@media (min-width:992px){.index .specialty-bullets{display:block}}.index .credentials{order:-1}.index .credentials .cred-label{margin-bottom:1em;font-size:1.2em;font-weight:450}.index .credentials .cred-item{margin-bottom:1em}.index .credentials .cred-item .cred-val{margin-bottom:.15em;font-size:1.3em;font-weight:500;line-height:1.1}.index .credentials .cred-item .cred-desc{opacity:.65;font-size:.7em;font-weight:320}@media (min-width:992px){.index .credentials{order:1;grid-column:8/13}}.index .intro{margin:3.3em 0 1.5em}.index .intro .title{margin-bottom:0;font-weight:500}.index .intro .subtitle{opacity:.45;margin-bottom:0}@media (min-width:992px){.index .intro .subtitle{display:none}}.index .intro .subtitle2{opacity:.45;margin-bottom:0;display:none}@media (min-width:992px){.index .intro .subtitle2{display:block}}.index .about{margin-top:2.5em;font-size:calc(1.05em + .2vw)}.index .about p{-webkit-font-smoothing:auto;margin-bottom:1em}.background .intro{margin-top:3em}.background .intro .headshot{border-radius:50%;width:100%}.background .intro h1{margin-top:0;margin-bottom:.5em;font-weight:500}@media (min-width:992px){.background .intro h1{margin-top:2em}}video{width:100%;height:auto}footer{color:#000000bf;border-top:1px solid #00000014;margin-top:4em;padding-top:18px;padding-bottom:30px;font-size:14px}footer .footer-legal{margin-top:1em}.project-card-scroll{scrollbar-width:none;align-items:center;height:auto;margin-left:4vw;padding-top:1.5em;padding-bottom:3vw;display:flex;overflow:scroll}.project-card-scroll .card-link{color:#000;cursor:url(../img/_icons/scroll.svg) 16 16,auto;border:none;text-decoration:none;display:inline-block}.project-card-scroll .project-card{color:#000;background-color:#cecece;border-radius:4vw;flex-direction:column;width:65vw;height:100vw;margin-left:0;margin-right:4vw;padding:0;transition:all .5s;display:flex;box-shadow:1px 1px 14px #00000017}@media (min-width:576px){.project-card-scroll .project-card{border-radius:3vw;width:50vw;height:70vw;margin-right:4vw}}@media (min-width:768px){.project-card-scroll .project-card{border-radius:3vw;width:40vw;height:55vw;margin-right:3vw}}@media (min-width:992px){.project-card-scroll .project-card{border-radius:1.5vw;width:35vw;height:47vw;margin-right:2.5vw}}@media (min-width:1200px){.project-card-scroll .project-card{border-radius:1vw;width:28vw;height:40vw;margin-right:2.5vw}}.project-card-scroll .project-card .card-image{align-items:start;margin:1.5em auto auto 1.5em}.project-card-scroll .project-card .card-image img{width:100%;height:auto}.project-card-scroll .project-card .card-title{padding-left:.72em}.project-card-scroll .project-card .card-tags{padding-left:1em}.project-card-scroll .project-card.etags{background-color:#e0dfd8;background-image:url(https://ik.imagekit.io/patrikgarde/etags-sm.avif);background-position:50%;background-size:cover}.project-card-scroll .project-card.etags .card-image{width:7vw;min-width:50px;max-width:70px;margin-left:0}.project-card-scroll .project-card.etags .card-title{text-shadow:0 3px 6px #00000087}.project-card-scroll .project-card.healthnook{background-color:#e0dfd8;background-image:url(https://ik.imagekit.io/patrikgarde/healthnook-sm.avif);background-position:50%;background-size:cover}.project-card-scroll .project-card.healthnook .card-image{width:5vw;min-width:50px}.project-card-scroll .project-card.healthnook .card-title{color:#000}.project-card-scroll .project-card.healthnook .card-tags .tag{color:#000;background:#ffffff26;border-color:#000}.project-card-scroll .project-card.skn-labs{background-color:#e0dfd8;background-image:url(https://ik.imagekit.io/patrikgarde/skn-labs-sm2.avif);background-position:50%;background-size:cover;position:relative;overflow:hidden}.project-card-scroll .project-card.skn-labs .card-image{width:7vw;min-width:70px;margin:1.5em 1em auto auto}.project-card-scroll .project-card.skn-labs .card-title{color:#000}.project-card-scroll .project-card.skn-labs .card-tags .tag{color:#000;background:#ffffff26;border-color:#000}.project-card-scroll .project-card.real-ecig{background-color:#e0dfd8;background-image:url(https://ik.imagekit.io/patrikgarde/real-ecig-sm.avif);background-position:50%;background-size:cover}.project-card-scroll .project-card.real-ecig .card-image{width:4vw;min-width:40px}.project-card-scroll .project-card.partzilla{background-color:#e0dfd8;background-image:url(https://ik.imagekit.io/patrikgarde/partzilla/hero-sm.avif);background-position:50%;background-size:cover}.project-card-scroll .project-card.partzilla .card-image{width:4vw;min-width:40px;display:flex}.project-card-scroll .project-card.partzilla .card-image img{margin-right:.25em}.project-card-scroll .project-card.archive{color:#000;background:#f1f1f1;border:1px solid #00000021}.project-card-scroll .project-card.archive .card-image{margin:auto 5em}.project-card-scroll .project-card.archive .card-image svg{fill:#aaaaae;width:100%;height:auto}.project-card-scroll .project-card.archive .card-title{color:#000}.project-card-scroll .project-card.archive .card-tags .tag{color:#000;background:#ffffff26;border-color:#000}.project-card-scroll .project-card:hover{transition:transform .4s;transform:translateY(-1em)}.project-card-scroll .project-card .card-bg-video{object-fit:cover;opacity:0;pointer-events:none;z-index:0;border-radius:2vw;width:100%;height:100%;transition:opacity .25s;position:absolute;top:0;bottom:0;left:0;right:0}.project-card-scroll .project-card .card-image,.project-card-scroll .project-card .card-title,.project-card-scroll .project-card .card-tags{z-index:1;position:relative}@media (hover:hover) and (pointer:fine){.project-card-scroll .project-card:hover .card-bg-video,.project-card-scroll .project-card.is-video-playing .card-bg-video{opacity:1}}.card-title{color:#fff;letter-spacing:-.014em;font-size:1.5em;font-weight:500;line-height:1.3}.card-tags{justify-content:flex-start;align-items:center;margin-top:.25em;margin-bottom:1em;margin-left:0;display:flex;position:relative;top:auto;bottom:0;left:0;right:auto}.card-tags .tag{color:#fff;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000030;border:.75px solid #fff;border-radius:.5em;align-items:center;margin-right:.5em;padding:.65em .8em;font-size:.55em;font-weight:600;display:flex}@media (min-width:576px){.card-tags .tag{padding:.45em .8em;font-size:calc(10px + .15em);font-weight:500}}.card-tags-dark .tag{color:#000;background:#00000005;border-color:#000c}@media (min-width:576px){.card-tags-dark .tag{color:#000000b3;border-color:#00000080}}.badge-block{justify-content:flex-start;align-items:center;margin-top:1.5vw;margin-bottom:1vw;margin-left:0;padding-left:3vw;display:flex;position:relative;top:auto;bottom:0%;left:0%;right:auto}.badge-block .badge{color:#fff;border:1px solid #000;border-radius:6px;margin-right:.75vw;padding:.4vw .5vw;display:block}.badge-block .badge .hp{font-size:1vw}