:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--colorEmphasisRGB: 153, 221, 200;--colorEmphasis: rgb(var(--colorEmphasisRGB));--colorHighlightRGB: 149, 191, 116;--colorHighlight: rgb(var(--colorHighlightRGB));--colorLight: #659B5E;--colorMain: #556f44;--colorDarkRGB: 40, 63, 59;--colorDark: rgb(var(--colorDarkRGB));scrollbar-width:thin;scrollbar-gutter:stable}*{box-sizing:border-box;margin:0}button,a{border:none;font-family:inherit;background-color:inherit;height:min-content;cursor:pointer;color:inherit;font-size:.8rem;text-decoration:none}body{display:flex;min-height:100vh;flex-direction:column;margin:0;background-color:var(--colorMain)}#root{padding:0;border:0;margin:0;position:relative;display:flex;flex-direction:column}#header{background-color:var(--colorLight);padding:1rem;height:3rem;display:flex;justify-content:space-between;align-items:center;white-space:nowrap;position:fixed;top:0;width:100vw;z-index:99}#header h1{font-size:1rem}#mainBody{padding-top:3rem;flex-grow:1}#introSection{background-color:var(--colorDark);min-height:calc(100vh - 3rem);padding:1rem;display:flex;flex-direction:column-reverse;gap:1em 1em}#intro{display:flex;flex-direction:column;gap:1rem;flex:1 1}#introSection h1{margin:auto;line-height:1}p{line-height:2em;margin-bottom:1rem}#buttonContainer{margin:auto}.contactButton{background-color:var(--colorHighlight);color:var(--colorDark);padding:1rem;border-radius:2rem;font-size:1.25rem;transition:background-color .25s,color .25s;padding:.5em 1em}.contactButton:disabled{background-color:var(--colorLight);color:rgba(var(--colorDarkRGB),.3)}.contactButton:not(:disabled):hover{background-color:var(--colorEmphasis)}#introContainer{display:flex;flex-direction:row;flex-wrap:wrap-reverse;gap:1rem 1rem;align-items:flex-end}#mugshot{--picSize: min( calc(100vw - 2rem) , calc(100vh - 4rem) );width:var(--picSize);border-radius:calc(var(--picSize) / 2)}#portfolioContainer{transition:.75s ease-in-out;transition-property:grid-template-rows,grid-template-columns;display:grid;position:relative;height:25rem;overflow:hidden}#portfolioContainer button{position:absolute;right:0;z-index:5;background-color:transparent;color:var(--colorEmphasis);font-size:2.5rem;height:4rem;width:4rem;line-height:0}#portfolioContainer button.upbutton{top:0}#portfolioContainer button.downbutton{bottom:0}#portfolioContainer .article{overflow:hidden;position:relative}#portfolioContainer .article:hover #articleImg{transform:translate(-50%,-50%) scale(1.15)}#portfolioContainer .article #articleImg{transform:translate(-50%,-50%)}#portfolioContainer img{border-radius:0;object-fit:cover;width:100%;height:calc(25rem * 8 / (7 + var(--imgcount)));transition:transform .5s;position:absolute;left:50%;top:50%}#portfolioContainer .article{grid-column:1 / -1;grid-row:unset}#portfolioContainer p{color:var(--colorEmphasis);margin-left:1em;font-weight:700;position:absolute;bottom:-1em;white-space:nowrap;text-shadow:0em 0 .25em black;z-index:1}#portfolioContainer .imageOverlay{width:100%;height:100%;display:block;position:absolute;background:linear-gradient(to top,#000000bf,#0000 4em);z-index:1}#serviceSection{min-height:calc(100vh - 3rem);padding:4rem 1rem;display:flex;flex-direction:column;gap:1rem}#serviceSection h1{margin:auto;margin-bottom:1rem;padding:0 .5rem;background-color:var(--colorEmphasis);width:min-content;white-space:nowrap;color:var(--colorDark);border-radius:.25em;font-size:1.75rem}#serviceSection h2{font-size:1.25rem;background-color:var(--colorEmphasis);padding:.25rem;position:absolute;left:1rem;top:-.5rem;border-radius:.25em;color:var(--colorDark)}#serviceList{display:flex;flex-direction:column;flex:1 0;gap:1rem 1rem}.serviceEntry{display:flex;justify-content:space-between}#serviceSection .serviceEntry{flex:1 0 0;position:relative;background-image:linear-gradient(to left,rgba(var(--colorDarkRGB),0),rgba(var(--colorDarkRGB),1));border-radius:1em;display:flex;flex-direction:row;height:8rem}#serviceSection img{border-radius:20%;height:100%;padding:1rem}#serviceSection ul{margin-top:1.75rem;list-style:none;padding:0 1rem 1rem;white-space:nowrap}@keyframes sent{0%{transform:translateY(0)}to{transform:translateY(100%)}}.sent{animation-name:sent;animation-duration:.75s;animation-iteration-count:1;animation-timing-function:ease-out;animation-fill-mode:forwards}.sending *,.sent *{transition:opacity .25s}.sending *,.sent *{opacity:66%}#contactSectionWrapper{min-height:calc(100vh - 3rem);overflow:hidden;position:relative}#contactSection{min-height:calc(100vh - 3rem);background-color:var(--colorDark);display:flex;flex-direction:column;flex-wrap:wrap;padding:1rem;align-items:stretch;gap:2rem 1rem;justify-content:flex-start;border:none;position:relative}#contactSection label{display:flex;flex-direction:column}#contactSection p{font-size:.75rem}#contactSection h1{padding-left:1rem}#contactSection input,#contactSection textarea{margin-top:.25em;font:inherit;font-size:1rem;background-color:inherit;color:inherit;padding:.25em .5em;resize:none;border:.15em solid var(--colorHighlight);border-radius:.5em}#contactSection input:focus,#contactSection textarea:focus{outline:none}#contactSection textarea{height:10em}#contactSection button{margin-left:auto;width:min-content;align-self:flex-end}#contactThankYou{background-color:var(--colorLight);position:absolute;width:100%;height:100%;text-align:center;display:flex;flex-direction:column;justify-content:center}#contactThankYou p{font-size:1.5rem;background-color:var(--colorEmphasis);margin:auto;color:var(--colorDark);padding:.5em 1em;border-radius:1em}#backgroundIcon{position:fixed;right:1rem;bottom:1rem;z-index:-99;--sizewide: min( calc(66vw - 2rem) , calc(100vh - 5rem) );width:var(--sizewide);height:calc(var(--sizewide) * 290 / 300);color:var(--colorLight)}#backgroundIcon.noScript{filter:invert(56%) sepia(16%) saturate(1012%) hue-rotate(66deg) brightness(96%) contrast(88%) blur(.15rem)}#footer{text-align:center;height:3rem;background-color:var(--colorMain);display:flex;flex-direction:column;justify-content:space-around}#projectContainer{display:grid;grid-template-rows:auto minmax(10px,calc(50vh - 3rem)) 3fr;margin:auto;width:100%;gap:1em;padding:1em;min-height:calc(100vh - 3rem)}#projectContainer>*{min-width:0}#projectContainer>h1{grid-row:1;background-color:var(--colorEmphasis);color:var(--colorDark);padding:.5rem;border-radius:1rem;margin:auto}#projectContainer #carouselContainer{grid-row:2;margin:auto;height:100%;background-color:var(--colorDark);border-radius:2rem;padding:1rem}#projectContainer #carouselContainer img{width:100%;height:100%;object-fit:cover;border-radius:calc(2rem - 1em)}#projectContainer div{align-self:start}#projectContainer ul{padding-left:1.5em;list-style-type:circle;display:flex;flex-direction:column;gap:.5em}#projectContainer #projectDetails{grid-row:3;flex-basis:content;flex-shrink:1;display:flex;flex-wrap:wrap;gap:2em;background-color:var(--colorDark);padding:1em;border-radius:2rem}#projectContainer #projectDetails div{flex:1 1 200px}#projectContainer #projectDetails h1{border-width:0;border-bottom-width:2px;border-style:solid;border-image-slice:1;border-image-source:linear-gradient(to right,var(--colorEmphasis),rgba(0,0,0,0));padding-left:.25em;font-size:1rem;width:100%;margin-bottom:.5em}#projectContainer #projectDescription{grid-row:4;flex-grow:1;flex-basis:60%;flex-shrink:0;text-shadow:0em 0 .25em black}#projectContainer #projectDescription p{margin-left:1em}#projectContainer #projectDescription a{font-size:inherit;text-decoration:underline}#projectContainer #projectDescription h1{text-shadow:none;background-image:linear-gradient(to left,rgba(var(--colorDarkRGB),0),rgba(var(--colorDarkRGB),1));padding:.5rem .5rem .5rem 1rem;border-radius:1rem;font-size:1rem}@media only screen and (min-width: 768px){#introContainer img{max-width:25rem}#intro{max-width:35rem;margin-left:1rem}#introContainer{flex-grow:1;justify-content:center;align-items:center}#introSection{display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:1em}#introSection h1{margin:unset;padding-left:1rem}#introSection #buttonContainer{margin:unset;padding-left:1rem}#portfolioContainer{width:max(75vw,768px)}#portfolioContainer button{display:none}#portfolioContainer .article{grid-column:unset;grid-row:1 / -1}#portfolioContainer p{bottom:unset;writing-mode:vertical-rl;margin-left:0;font-size:1.5rem;margin-top:.25em}#portfolioContainer .imageOverlay{background:linear-gradient(to right,#000000bf,#0000 4em)}#portfolioContainer img{width:calc(max(75vw,768px) * 8 / (7 + var(--imgcount)));height:100%}#serviceSection{max-width:min(45rem,calc(100vw - 10rem));margin:auto}#serviceSection h1{margin:unset;margin-left:3rem;font-size:2rem;margin-bottom:3rem;padding:.25rem;transform:translate(3rem)}#serviceList{gap:4rem}#serviceSection .serviceEntry{width:100%;height:13em}.serviceEntry:nth-child(odd){transform:translate(-5rem)}.serviceEntry:nth-child(2n){transform:translate(5rem)}#serviceSection h2{top:-1.5rem;font-size:2rem}#serviceSection ul{display:flex;gap:1rem .5rem;flex-direction:column;flex-wrap:wrap;margin-top:2.5rem;padding:0 3rem}:root{font-size:max(16px,max(calc(100vw / 1920 * 16),calc(100vh / 990 * 16)))}#contactSection{height:unset;min-height:calc(100vh - 3rem);flex-direction:row;align-content:center;margin:auto;padding:1rem calc((100vw - 38rem)/2 - .5rem) 1rem}#contactSection h1{width:100%}#contactSection label{min-width:calc(50% - .5rem)}#contactSection label:nth-of-type(3){width:100%}#projectContainer{display:grid;grid-template-rows:auto minmax(10px,calc(50vh - 3rem)) 3fr;grid-template-columns:minmax(33%,max-content) minmax(66%,40rem);margin:auto;width:fit-content;gap:1em;padding:1em;min-height:calc(100vh - 3rem)}#projectContainer>h1{grid-column:1 / -1;background-color:var(--colorEmphasis);color:var(--colorDark);padding:.5rem;border-radius:1rem;margin:auto}#projectContainer #carouselContainer{grid-column:2 / -1;grid-row:2;margin:auto;height:100%;background-color:var(--colorDark);border-radius:2rem;padding:1rem}#projectContainer #carouselContainer img{width:100%;height:100%;object-fit:cover;border-radius:calc(2rem - 1em)}#projectContainer div{align-self:start}#projectContainer ul{padding-left:1.5em;list-style-type:circle;display:flex;flex-direction:column;gap:.5em}#projectContainer #projectDetails{grid-row:2;flex-basis:content;flex-shrink:1;display:flex;flex-direction:column;gap:2em;background-color:var(--colorDark);padding:1em;border-radius:2rem}#projectContainer #projectDetails div{width:100%;flex:inherit}#projectContainer #projectDetails h1{border-width:0;border-bottom-width:2px;border-style:solid;border-image-slice:1;border-image-source:linear-gradient(to right,var(--colorEmphasis),rgba(0,0,0,0));padding-left:.25em;font-size:1rem;width:100%;margin-bottom:.5em}#projectContainer #projectDescription{grid-row:3;grid-column:2 / -1;flex-grow:1;flex-basis:60%;flex-shrink:0;text-shadow:0em 0 .25em black}#projectContainer #projectDescription p{margin-left:1em}#projectContainer #projectDescription a{font-size:inherit;text-decoration:underline}#projectContainer #projectDescription h1{text-shadow:none;background-image:linear-gradient(to left,rgba(var(--colorDarkRGB),0),rgba(var(--colorDarkRGB),1));padding:.5rem .5rem .5rem 1rem;border-radius:1rem;font-size:1rem}}
