div.highlight,pre{position:relative}.copy-code{position:absolute;top:5px;right:5px;padding:.5rem 1rem;border-radius:2px;user-select:none;opacity:.5;display:none}.copy-code:hover{background-color:#eb1536;opacity:1}div.highlight:hover .copy-code,pre:hover .copy-code{display:block}.grid-view{margin-top:2rem;width:100%;display:flex;flex-direction:column;justify-content:flex-start;flex-wrap:wrap;gap:20px}@media only screen and (min-width:992px){.grid-view{flex-direction:row}}.grid-item{position:relative;width:100%;height:250px;font-size:1.5rem;display:flex;flex-direction:column;transition:all .4s ease-in-out;transform-origin:center;border-radius:.25rem;overflow:hidden}@media only screen and (min-width:992px){.grid-item{width:30%}}.grid-item.soft-hide{opacity:0}@media only screen and (max-width:calc($bp-large - 1)){.grid-item.soft-hide{margin:-10px 0;height:0}}@media only screen and (min-width:992px){.grid-item.soft-hide{margin:0 -10px;width:0}}.grid-item.soft-hide .filter-item-title{font-size:0}.grid-item:hover{transform:scale(1.05)}.grid-item:hover .filter-item-title{background-color:rgba(0,0,0,.4)}.grid-item .grid-item-img{width:100%;height:100%;flex:none}.grid-item .grid-item-img img{width:100%;height:100%;object-fit:cover}.grid-item .grid-item-title-wrapper{position:absolute;bottom:0;width:100%;height:50%;display:block}.grid-item .grid-item-title{padding:2rem;width:100%;height:100%;font-size:inherit;color:#efefef;background-color:rgba(0,0,0,.2);letter-spacing:1px;text-align:center;transition:all .4s ease-in-out;display:flex;justify-content:center;align-items:center}.list-view{width:100%;display:flex;flex-direction:column}.list-item{margin-bottom:30px}.list-item-content-wrapper{display:flex;flex-direction:column;flex:none}@media only screen and (min-width:992px){.list-item-content-wrapper{flex-direction:row}}.list-item-img-wrapper{width:100%;display:flex;flex:none}@media only screen and (min-width:992px){.list-item-img-wrapper{width:320px}}.list-item-img{width:100%;height:200px;background-size:contain;background-repeat:no-repeat;flex:none}.list-item-img div{height:100%;width:100%}.list-item-img img{width:100%;height:100%}.list-item-title-summary-wrapper{display:flex;flex-direction:column}@media only screen and (min-width:992px){.list-item-title-summary-wrapper{margin-left:2rem}}.list-item-title{margin-top:1rem;margin-bottom:20px;font-size:1.75rem;color:#a07a61;letter-spacing:1px}.list-item-title:hover{color:#eb1536}@media only screen and (min-width:992px){.list-item-title{margin-top:0}}.list-item-summary{font-size:14px;line-height:2;text-align:justify;color:#222}.list-item-info{margin-top:25px;padding:7px 0;font-size:12px;border-top:1px solid #999;border-bottom:1px solid #999}.pagination-wrapper{margin:auto}.pagination{margin-bottom:30px;padding-left:0;list-style:none;width:100%;display:flex;justify-content:center;align-items:center}.page-item{margin-right:5px;height:50px;width:50px;display:flex;justify-content:center;align-items:center;color:#a07a61;border:1px solid transparent;cursor:default}.page-item.active{color:#fff;background-color:#eb1536}.page-item:hover:not(.disabled){border:1px solid #eb1536;cursor:pointer}.page-item a{height:100%;width:100%;display:flex;align-items:center;justify-content:center}.filters{margin:0;padding:0;text-align:left;width:100%;display:flex;justify-content:flex-start;align-items:center;border-top:1px solid #ccc;border-bottom:1px solid #ccc;flex-direction:column;list-style:none}@media only screen and (min-width:992px){.filters{flex-direction:row;flex-wrap:wrap;gap:1rem}}.filters li{height:40px;width:100%;padding-bottom:3px}.filters li:not(:first-child){border-top:1px solid #8f867b}@media only screen and (min-width:992px){.filters li{width:auto;border:none;border-top:none}.filters li:not(:first-child){border:none}}.filter{height:100%;width:100%;border-top-width:3px;border-top-style:solid;border-color:transparent;transition:color 200ms ease-in,border-color 200ms ease-in;display:flex;align-items:center;cursor:pointer}.filter:hover{color:#eb1536}.filter.active{color:#eb1536;border-color:#eb1536}#nav-icon{position:relative;width:30px;height:30px;transform:rotate(0);transition:.5s ease-in-out;cursor:pointer}#nav-icon span{position:absolute;left:0;height:5px;width:100%;background:#fff;border-radius:5px;opacity:1;transform:rotate(0);transition:.25s ease-in-out;display:block}#nav-icon span:nth-child(1){top:0}#nav-icon span:nth-child(2),#nav-icon span:nth-child(3){top:10px}#nav-icon span:nth-child(4){top:20px}#nav-icon.open span:nth-child(1){top:10px;width:0%;left:50%}#nav-icon.open span:nth-child(2){transform:rotate(45deg)}#nav-icon.open span:nth-child(3){transform:rotate(-45deg)}#nav-icon.open span:nth-child(4){top:10px;width:0%;left:50%}#search{width:100%;line-height:1}#search form{margin-top:2rem;padding:0 1rem;width:100%;display:flex;justify-content:center;align-items:center;border:1px solid gray;border-radius:2px;color:gray}#search form .form-group{margin:0}#search form button{color:inherit}#search form button:hover{color:#eb1536}#search svg{width:20px;height:20px}#search input{margin:0;border:none}#search #search-results-wrapper{margin-top:50px;min-height:200px}#search #search-suggestion-wrapper{display:flex;justify-content:center;align-items:center}#search #search-suggestion{color:#eb1536}#search #search-empty{display:flex;justify-content:center;align-items:center}@font-face{font-family:montserrat;font-style:normal;font-weight:300;font-display:swap;src:local(""),url(/fonts/montserrat-v15-latin-300.woff2)format("woff2")}@font-face{font-family:montserrat;font-style:normal;font-weight:400;font-display:swap;src:local(""),url(../fonts/montserrat-v15-latin-regular.woff2)format("woff2")}@font-face{font-family:montserrat;font-style:normal;font-weight:600;font-display:swap;src:local(""),url(../fonts/montserrat-v15-latin-600.woff2)format("woff2")}*,*:before,*:after{box-sizing:border-box}html,body{padding:0;margin:0;height:100%;width:100%}body{font-family:montserrat,Arial,Helvetica,sans-serif;display:flex;align-items:center;flex-direction:column;color:#222}#page-bg{position:fixed;top:0;left:0;height:100%;width:100%;background:url(/img/bg.jpg);background-size:cover;background-attachment:fixed;background-position:50%}a{color:#a07a61;text-decoration:none;transition:color .1s ease-in-out}a:hover{color:#eb1536}input{padding:0 15px;height:60px;width:100%;font-size:1rem;line-height:2;border:1px solid #ccc;outline:none;font-family:inherit}textarea{padding:25px 15px;width:100%;height:200px;outline:none;resize:vertical;font-size:1rem;font-family:inherit;border:none}button{cursor:pointer;background-color:transparent;background-image:none}button,input{border:none;outline:none}form{width:100%}@media only screen and (min-width:992px){form{width:50%}}.btn{height:60px;width:100%;background:#eb1536;color:#fff;border:1px solid #eb1536;font-family:inherit;font-size:1rem;font-weight:300;transition:background-color .25s,color .25s}.btn:hover{color:#eb1536;background:#fff}.btn a{color:inherit}#contact-form button{margin-top:20px;letter-spacing:.3rem}main{position:relative;padding:3rem 0;width:90%;flex:1;display:flex;flex-direction:column;align-items:flex-start;line-height:2}@media only screen and (min-width:992px){main{max-width:1200px}}.masthead{position:relative;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;flex-shrink:0;text-align:center}.masthead h1{width:100%;letter-spacing:1.5px}.parallax{position:fixed;display:flex;flex-direction:column;justify-content:center;align-items:center}.masthead-homepage{height:100%}.masthead-homepage h1{margin:0 3rem;font-size:clamp(1.8rem,7vw,6.25rem);color:#eb1536}.masthead-homepage h2{color:#fff;font-size:20px;display:block;letter-spacing:.375rem}.masthead-homepage .masthead-subtitle{margin-top:1rem;padding:0 2rem;color:#fff;display:flex;justify-content:center;align-items:center;animation-delay:1s;animation-fill-mode:both}.masthead-homepage .masthead-subtitle span{font-size:14px;letter-spacing:5px;margin:0 2rem;flex:0;white-space:nowrap;font-weight:300}.masthead-section{padding:0 3rem;height:500px;flex:none}.masthead-section h1{padding:30px;font-family:montserrat,Arial;font-size:clamp(2.5rem,7vw,3rem);color:#fff}.masthead-section h1.masthead-title-single{border-radius:5px;background:rgba(0,0,0,.3);font-size:clamp(1.5rem,7vw,3rem)}.masthead-section img{height:100%;width:100%;position:absolute;z-index:-1;object-fit:cover}@keyframes widen{0%{width:0%}100%{width:100%}}@keyframes fade-in{0%{opacity:0}25%{opacity:0}100%{visibility:visible;opacity:1}}@keyframes slide-up{0%{transform:translate(0,50px)}25%{transform:translate(0,50px)}100%{transform:none}}.fade-in-out{animation:fade-in 1.5s ease-out,widen 2s ease-out}.fade-in{animation:fade-in 1.5s ease-out}.fade-in-up{animation:fade-in 1.5s ease-out,slide-up 1.5s ease-out}.sep{height:1px;width:100%;background:#fff;flex:auto}#arrow-down{position:absolute;bottom:.625rem;height:50px;width:50px;border-radius:50px;border:1px solid rgba(255,255,255,.5);display:flex;justify-content:center;align-items:center;color:rgba(255,255,255,.5)}#arrow-down:hover{border:1px solid #fff;color:#fff;cursor:pointer}#arrow-down svg{height:20px;width:20px}.section{padding:5rem 1rem;width:100%;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#ebeced;color:#222}@media only screen and (min-width:992px){.section{padding:5rem}}.section p{line-height:2}.dark{color:#fff;background:rgba(52,51,50,.95)}.light{color:#fff;background:rgba(64,61,57,.95)}h2{margin-top:0;margin-bottom:0;font-size:3rem;line-height:1}h5{font-weight:300;letter-spacing:.25rem;text-transform:uppercase}.row{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center}.col{padding:0 2rem;width:100%;font-size:.9rem}@media only screen and (min-width:992px){.col{width:40%}}.section-sep{margin-bottom:1rem;height:2px;width:6.25rem;background:#eb1536}.cards{width:100%;justify-content:space-evenly}.card{position:relative;margin-top:50px;padding:3rem 2rem;height:auto;width:100%;display:flex;flex-direction:column;align-items:center}@media only screen and (min-width:992px){.card{width:30%}}.card .card-title{margin-bottom:1rem;font-size:1.5rem;line-height:1.21;font-weight:600;color:#fff}.card .card-icon-wrapper{position:absolute;top:0;left:0;height:100%;width:100%;display:flex;justify-content:center}.card .card-icon{position:absolute;top:-28px;height:56px;width:56px;border-color:#555c6e;border-width:0;border-radius:50%;background-color:#eb1536;line-height:56px;color:#fff;font-size:1.75rem;display:flex;justify-content:center;align-items:center}.card .card-icon svg{height:30px;width:30px}.card .card-text{line-height:2}.skills{width:90%}.skill{width:100%}.skill-name{margin:10px 0;width:100%;text-align:left}.skill-bar{position:relative;height:25px;width:100%}.skill-bar-background{position:absolute;height:100%;width:100%;background:#746a5c}.skill-bar-actual{position:absolute;height:100%;background:#eb1536;transition:width 1.5s;width:0%}.quote-icon{color:#eb1536}.quote-icon svg{height:100px;width:100px}.quote{margin-top:50px;padding:2rem;width:90%;font-size:1.2rem;color:#fff;font-weight:400;background:#403d39}.quote-author{margin-top:20px;color:#fff;font-size:1.2rem;font-weight:600}.projects .card{transition:all .4s ease-in-out;background:#343332;color:#fff}.projects .card:hover{background:#fff;color:#000;transform:scale(1.05);border:1px solid #eb1536}.projects .card:hover .card-title{color:#eb1536}header{position:fixed;padding:0 30px;width:100%;height:110px;display:flex;justify-content:space-between;z-index:1;color:#fff;background-color:#343332;transition:background-color 200ms ease-out,height 200ms ease-out}@media only screen and (min-width:992px){header{background-color:transparent}}header.scrolled{height:65px;background-color:#30201394}header a{color:#fff}#header-logo{height:50px;align-self:center;z-index:3}#header-logo img{max-height:100%;object-fit:contain}@media only screen and (min-width:992px){#header-menu-flyout{display:none}}#header-menu-flyout ul{margin:0;height:100%;display:flex;align-items:center;list-style:none}#header-menu-flyout li{margin-left:1rem;-webkit-tap-highlight-color:transparent;z-index:3}#header-menu-flyout svg{height:30px;width:30px}#header-menu-main{font-size:24px;display:none}@media only screen and (min-width:992px){#header-menu-main{display:block}}#header-menu-main ul{margin:0;height:40px;display:flex;align-items:center;list-style:none}#header-menu-main ul li{padding-right:34px;height:100%;display:flex}#header-menu-main ul li a{height:100%;display:flex;align-items:center;letter-spacing:1px;border-top-width:3px;border-top-style:solid;border-color:transparent;transition:color 200ms ease-in,border-color 200ms ease-in}#header-menu-main ul li a:hover{color:#eb1536}#header-menu-main ul li a.active{color:#eb1536;border-color:#eb1536}#header-menu-main ul li svg{height:20px;width:20px}#header-menu-main .search{padding-right:0}footer{position:relative;padding:70px 10px 50px;width:100%;background:#343332;color:#fff;text-align:center}footer a{color:#fff}.footer-logo{height:50px}.footer-logo img{max-height:50px}.footer-sep{margin:0 8px;display:none}@media only screen and (min-width:992px){.footer-sep{display:block}}.footer-legal{margin-top:30px;line-height:2;display:flex;justify-content:center;flex-direction:column}@media only screen and (min-width:992px){.footer-legal{flex-direction:row}}.footer-social{margin-top:1rem;width:100%;font-size:1.5rem}.footer-social svg{width:20px;height:20px;color:#fff}.footer-social a{margin:0 10px}#flyout{position:fixed;top:0;left:0;width:100%;height:0%;background-color:#343332;z-index:2;transition:all .25s linear;display:flex;justify-content:center;align-items:center;visibility:hidden}#flyout ul{margin:0;padding:0;text-align:center;list-style:none}#flyout li{padding:20px 0;font-size:2rem;cursor:pointer}#flyout a.active{color:#eb1536}#flyout.open{height:100%;visibility:visible}.single-post,.project-page{flex-direction:column}@media only screen and (min-width:992px){.single-post,.project-page{flex-direction:row}}.post-content{width:100%;text-align:justify;flex:1}@media only screen and (min-width:992px){.post-content{width:1px}}.post-content a{color:#a07a61}.post-content img{display:block;margin:auto;max-width:75%}aside{position:relative;width:20%;line-height:2;flex-shrink:0}@media only screen and (min-width:992px){aside{padding-left:1.5rem}}aside h3{margin-top:0;margin-bottom:0}@media only screen and (min-width:992px){aside h3{margin-left:1.5rem}}aside ul{margin:0;list-style:none}@media only screen and (min-width:992px){aside ul{padding-left:1.5rem}}aside #TableOfContents>ul{padding:0}@media only screen and (min-width:992px){aside #TableOfContents>ul{padding:1.25rem}}aside a{margin:.5rem 0;display:block}aside a:hover{text-decoration:underline;color:#eb1536}aside nav{border:none}@media only screen and (min-width:992px){aside nav{border-left:1px solid gray}}aside.toc-sm{margin:2rem 0;width:100%;display:block}@media only screen and (min-width:992px){aside.toc-sm{display:none}}aside.toc-lg{display:none}@media only screen and (min-width:992px){aside.toc-lg{display:block}}.not-found-page{min-height:500px;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center}.not-found-page h1{margin-bottom:1rem;font-size:6.25rem;color:#eb1536}.post-nav{padding:.25rem 0;width:100%;display:flex;font-size:.75rem;border-top:1px solid #999;border-bottom:1px solid #999}.post-nav .prev-arrow{margin-right:5px}.post-nav .next-arrow{margin-left:5px}.post-nav .spacer{flex:1}.post-nav a{max-width:45%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.post-nav a:hover{color:#eb1536}.highlight{overflow-x:scroll;width:100%;max-width:100%}.hidden{display:none!important}.collapser{position:absolute;top:0;right:0}.collapser.collapsed::before{content:"\2795"}.collapser::before{content:"\2796"}.collapsible{max-height:0;overflow:hidden;transition:max-height .4s ease-in-out;flex:1}.collapsed{flex:0}.project-info{margin:0;width:100%;flex-shrink:0}@media only screen and (min-width:992px){.project-info{margin-left:1rem;width:50%}}.project-info>div{border:1px solid #ccc;padding:20px}.project-info table{width:100%}.project-info td{vertical-align:top}.project-info tbody tr td:first-child{width:40%;font-weight:700}.project-info .project-links{margin-top:1rem;display:flex}.project-info .project-links button{letter-spacing:.3rem}.project-info .project-links button:not(:first-child){margin-left:1rem}.project-info .project-links button a{height:100%;width:100%;display:flex;align-items:center;justify-content:center}.privacy{line-height:2}.image-credit{position:absolute;right:0;bottom:0;background-color:rgba(0,0,0,.2);border-radius:2px;padding:.5rem;font-size:.6rem;color:#ccc}.image-credit a{color:inherit}.form-group{position:relative;margin-top:20px;width:100%}.form-group label{position:absolute;top:0;left:15px;margin-top:22px;line-height:1;color:#aaa;pointer-events:none;transition:all .2s ease;display:block}.form-group textarea:focus~label,.form-group textarea:valid~label,.form-group input:focus~label,.form-group input:valid~label{top:-15px;font-size:12px;color:#eb1536}.form-group .bar{display:block;position:relative;width:100%}.form-group .bar:before,.form-group .bar:after{content:'';height:2px;width:0;bottom:0;position:absolute;background:#eb1536;transition:all .2s ease}.form-group .bar:before{left:50%}.form-group .bar:after{right:50%}.form-group input:focus~.bar:before,.form-group input:focus~.bar:after,.form-group textarea:focus~.bar:before,.form-group textarea:focus~.bar:after{width:50%}.grecaptcha-badge{display:none}#recaptcha-disclaimer{margin-top:10px;font-size:.8rem}#contact-form-submit-response{margin-top:10px;height:0;line-height:50px;overflow:hidden;transition:height .4s ease-in-out}#contact-form-submit-response.reveal{height:50px}