body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@font-face{font-display:swap;font-family:Digitag;font-style:normal;font-weight:400;src:url(/static/media/Digitag.f220b4f78090dda4e071.ttf) format("truetype")}@font-face{font-display:swap;font-family:Playfair Display;font-style:normal;font-weight:300 900;src:url(/static/media/PlayfairDisplay-VariableFont_wght.6fb1338b42a1658eb1ee.ttf) format("truetype")}@font-face{font-display:swap;font-family:Urban Starblues;font-style:normal;font-weight:400;src:url(/static/media/Urban%20Starblues%20Demo.e43b7077c9ee29d3ba7f.otf) format("opentype")}body::-webkit-scrollbar{display:none}body{-ms-overflow-style:none}.App{font-family:Montserrat,sans-serif;margin-top:0;padding-top:0;text-align:center}body,html{background-color:#e9ecef;height:100%;overflow-y:scroll;scroll-behavior:auto;scroll-snap-type:y mandatory}body.resume-background{background-attachment:fixed;background-color:#e9ecef;background-image:url(/static/media/loganbackgroundresume.69ffc8796c2e6f19343e.png);background-position:50%;background-repeat:no-repeat;background-size:cover}.jumboSpacing{background-color:initial;padding-bottom:0;padding-top:0;position:relative}.backgroundImg{background-attachment:scroll;background-image:url(/static/media/loganbackgroundwpaint2.dba303075457b516cb57.png);background-position:top;background-repeat:no-repeat;background-size:cover;flex-direction:column;justify-content:flex-start;min-height:200vh}.backgroundImg,.introHeader{align-items:center;display:flex;position:relative}.introHeader{justify-content:center;min-height:100vh;width:100%}.centerTextDiv{align-items:center;color:#00f0ef;display:flex;flex-direction:column;font-family:Playfair Display,serif;height:50%;justify-content:center;left:0;position:absolute;text-align:center;top:0;width:40%}.centerTextDiv,.firstName{font-size:clamp(4rem,10vw,7rem)}.firstName{right:1rem;top:1rem}.lastName{bottom:0;font-family:Urban Starblues,cursive;font-size:clamp(4rem,10vw,7rem);left:50%;position:absolute;transform:translateX(-3%)}.title:hover{animation-direction:alternate;animation-duration:2.5s;animation-iteration-count:infinite;animation-name:flash;color:#fff}.title,.title:hover{text-decoration:none}.title{color:#000;font-family:Playfair Display,sans-serif;font-size:30px;font-weight:700;margin-right:40px;opacity:1}.title>h1{float:left;margin-bottom:0;margin-left:3%;text-shadow:2px 2px gray}.projectCardBody{height:275px}.projectCardTitle{height:75px!important}.customNav{background-position:100% 0;display:flex;justify-content:space-between;left:0;margin:0;opacity:.8;padding:1.3% 0 1.5% 1rem;position:fixed;top:0;transition-duration:.45s;width:100%;z-index:1020}.customNav .title{width:30%}.customNavLink{background-color:#000;color:#fff;display:block;font-family:Playfair Display,sans-serif;margin-right:0;padding:.25rem .75rem .25rem 1.25rem;transition:padding-left .4s ease-in-out}.customNavLink:hover{animation-direction:alternate;animation-duration:2.5s;animation-iteration-count:infinite;animation-name:flash;padding-left:1.75rem;text-decoration:none}.active{border-bottom:1px solid #000}.customNavLinks{align-items:flex-end;float:right;gap:.5rem;justify-content:flex-end;list-style-type:none;margin-bottom:0;margin-right:0;padding-right:0;width:auto}.aboutMeDiv,.customNavLinks{display:flex;flex-direction:column}.aboutMeDiv{align-items:stretch;background:#0000;gap:4rem;margin:6% 6% -4%;width:70%}.about-description{background-color:#fff;color:#000;padding:1rem;width:100%}.about-description,.skills-section{font-family:Playfair Display}.skills-section ul{column-gap:1rem;column-width:140px;list-style:none;max-height:500px;overflow:auto}.skills-section h2{align-self:center}.skills-section{background-color:#fff;color:#000;display:flex;flex-direction:column;padding:1rem;width:100%}.skills-container{align-items:flex-start;display:flex;gap:1rem}.skill-buttons{display:flex;flex:0 0 120px;flex-direction:column;gap:.5rem}.skills-list{flex:1 1}.skills-list ul{list-style-position:inside;padding:0;text-align:center}.skill-buttons button{background-color:initial;border:2px solid #000;border-radius:20px;color:#000;cursor:pointer;font-weight:700;margin:0 .5rem;padding:.4rem 1rem;transition:background-color .3s ease,color .3s ease}.skill-buttons button:hover{background-color:#00ecec;color:#fff}.contact-link{background-color:#0006;color:#fff;font-size:1rem;margin-bottom:1%;margin-top:auto;padding:.5% 1%}.mobileMenuButton{background:none;border:none;cursor:pointer;display:none;font-size:2rem}@media (max-width:768px){.mobileMenuButton{display:block}.customNavLinks{align-items:center;background-color:#fff;display:none;flex-direction:column;gap:.5rem;left:0;padding:1rem;position:absolute;top:100%;width:100%}.customNavLink{padding-left:.75rem;text-align:center}.skills-container{align-items:center}.customNavLinks.showMobileMenu{display:flex}}.nav-links{font-family:Raleway,sans-serif}.titleStyling{font-weight:700}.buttonClass{animation-name:buttonAnimation;background-color:#000;border-color:#343a40;border-radius:.25rem;color:#fff;display:inline-block;font-size:1.1rem;font-weight:400;line-height:1.5;margin:5px;opacity:.6;padding:.5rem 1rem;text-align:center;transition:.2s;vertical-align:middle}.projectRow{padding:25px 0}.projects-container{flex-direction:column}.projectsFilterBar{align-items:center;display:flex;flex-wrap:wrap;gap:0;justify-content:space-evenly;margin-bottom:0;width:100%}.projectRow{width:100%}.projectsFilterBtn{background:#0000;border:1px solid #00000040;border-radius:5%;cursor:pointer;font-size:14px;padding:10px 16px;transition:all .15s ease;z-index:1000}.projectsFilterBtn:hover{transform:translateY(-1px)}.projectsFilterBtn.active{background:#00000014;border-color:#00000080}@media (max-width:768px){.projectsFilterBar{gap:10x;margin-bottom:16px}.projectsFilterBtn{font-size:13px;padding:9px 14px}}.projects-container{display:flex;justify-content:center;margin-top:20px;width:100%}.projects-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-auto-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));max-width:100%;padding:8%;width:100%}.projects-container{padding-top:110px}@media (max-width:768px){.projects-container{padding-top:90px}.projects-grid{grid-template-columns:1fr}}@media (min-width:768px) and (max-width:991px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:992px){.projects-grid{grid-template-columns:repeat(3,1fr)}}.cardCSS{opacity:0;padding:15px;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.cardCSS.visible{opacity:1;transform:translateY(0)}.projectCard{background-color:#343a40;border:6px solid grey;border-radius:10px;box-shadow:5px 3px 5px 1px #4d4d4d;color:#8f8f8f;font-weight:700;height:615px;margin:0 0 0 3%;padding:10px;width:100%}.headerSpacing{margin-bottom:15px}.stStyling{font-size:20px!important;font-weight:700;margin-bottom:32px}.skillsCard{background-color:#fff;border:6px solid grey;border-radius:10px;box-shadow:5px 3px 5px 1px #4d4d4d;height:415px;margin:0 0 0 3%;padding:10px}.col-md-3{padding:1% 1% 1% 2%}.row{width:100%}.btn{margin:5px}.contactCard{border:6px solid grey;border-radius:10px;height:200px;position:relative;transition-duration:.5s;transition-timing-function:ease}.contactCard:hover,.resumeItem:hover{bottom:5px;box-shadow:5px 3px 5px 1px #4d4d4d;right:5px}.contactImage{border:1px solid #000;border-radius:50%;height:75px;margin:auto;width:75px}.contactBox{border:1px solid #000;height:50px;width:50px}.buttonAnimation,.cardAnimate,.navAnimation,.skillsAnimate,.textAnimate{animation-delay:4s;animation-duration:180s;animation-fill-mode:forwards}.resumeContainer{display:flex;flex-direction:column}.resumeItem{background-color:#fff;border:6px solid grey;border-radius:10px;margin-top:2%;padding-bottom:1%;padding-top:1%;position:relative;transition-duration:.5s;transition-timing-function:ease}.resumeFlexBody{display:flex;flex-direction:row;justify-content:space-around;margin-left:5%;margin-right:5%;text-align:left}.skillsAnimate{animation-name:skillsAnimate}.buttonAnimation{animation-name:darkAnimate}.navAnimation{animation-name:nav-animate}.textAnimate{animation-name:colorfulText}.cardAnimate{animation-name:cardAnimate}.card-title{font-family:Raleway,sans-serif;font-size:200%;font-weight:700}.card-text{font-family:Montserrat,sans-serif;font-size:100%}.wrapper{background-color:#dddfdf;bottom:0}.timeline-wrapper{margin-top:8.5rem;position:relative}.timeline{background:#0000;height:180vh;margin-top:0;overflow-x:hidden;position:relative;transition:opacity .3s ease;width:100%}.timeline.fading{opacity:0}.timeline:before{background:#444;bottom:0;content:"";top:0;width:2px}.timeline-tick,.timeline:before{left:50%;position:absolute;transform:translateX(-50%)}.timeline-tick.year{border-top:2px solid #444;width:30px}.timeline-tick.year span{font-size:.8rem;left:100%;margin-left:.25rem;position:absolute;top:-1rem;white-space:nowrap}.timeline-tick.month{border-top:1px solid #888;width:15px}.duration-bracket{background:#000;left:50%;position:absolute;transform:translateX(-50%);width:4px;z-index:0}.duration-bracket:after,.duration-bracket:before{background:#000;content:"";height:4px;position:absolute;width:16px}.duration-bracket.left:before{left:auto;right:-16px;top:0}.duration-bracket.left:after{bottom:0;left:auto;right:-16px}.duration-bracket.right:before{left:-16px;right:auto;top:0}.duration-bracket.right:after{bottom:0;left:-16px;right:auto}.timeline-item{position:absolute;transform:translateY(-50%);transition:transform .2s ease-out;z-index:1}.timeline-item .card{box-sizing:border-box;color:#f3f4f6;padding:1rem;transform:scale(.8);transform-origin:center;transition:transform .2s ease-out;width:280px}.exp-logo{display:block;height:40px;margin:0 auto .5rem;object-fit:contain;width:40px}.timeline-item .card .company{font-weight:700;margin-bottom:.25rem}.timeline-item .connector{background:#000;height:2px;position:absolute;top:50%;transform:translateY(-50%) scaleX(1);transform-origin:left;z-index:-1}.timeline-item.left .connector{left:100%;transform-origin:right;z-index:-100!important}.timeline-item.right .connector{right:100%;transform-origin:left}.timeline-item:after{display:none}@media (max-width:640px){.creation-label{display:none}.timeline{height:auto;position:relative}.duration-bracket,.timeline-item .connector,.timeline-tick,.timeline:before{display:none}.skills-container{align-items:center}.timeline-item{margin:1rem;position:static;transform:none;width:auto}.timeline-item .card{margin:0;width:100%}.exp-logo{height:24px;margin-right:.5rem;width:24px}.resume-toggle{font-family:Playfair Display;margin-bottom:1rem;position:static;text-decoration:none;width:100%}}.creation-label{bottom:-18px;font-family:Playfair Display;left:40px;opacity:50%;position:absolute}@media only screen and (max-width:600px){.projectRow{padding:0}}.modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.experience-modal{background:#fff;border-radius:8px;color:#1f2937;max-width:500px;padding:1rem;position:relative;width:90%}.modal-close{cursor:pointer;font-size:1.5rem;line-height:1;position:absolute;right:.5rem;top:.5rem}.experience-box{background:#ffffffe6;border-radius:4px;left:1rem;padding:.5rem 1rem;pointer-events:none;position:fixed;top:5rem;z-index:0}.resume-toggle{font-family:Playfair Display,sans-serif;margin-right:1rem;position:absolute;right:0;text-align:center;top:0;transform:none;transition:transform .3s ease-in-out;z-index:1000}.resume-toggle.slide-out{transform:translateX(120%)}.resume-toggle button{background:#f0f0f0;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:700;margin:0 .25rem;padding:.6rem 1.2rem}.resume-toggle span{margin:0 .25rem}.resume-toggle button.active{background:#333;color:#fff}.project-thumb{aspect-ratio:1/1;cursor:pointer;display:block;object-fit:cover;width:100%}.project-thumb.paused{filter:grayscale(80%)}.floating-links{align-items:center;bottom:20px;display:flex;flex-direction:column;position:fixed;right:20px;z-index:1050}.floating-button{background-color:#000;border-radius:6px;color:#fff;margin-top:5px;padding:8px;text-decoration:none}.floating-button:hover{opacity:.8}.skill-flash-container{align-items:flex-end;bottom:10%;display:flex;flex-direction:column;position:absolute;right:10%;z-index:1050}.skill-flash-text{animation:fadeSkill 3s ease-in-out infinite;border-radius:4px;color:#00ecec;font-family:Urban Starblues,serif;font-size:5rem;padding:4px 8px}.see-more-link{border-radius:20px;color:#000;cursor:pointer;font-family:Playfair Display,serif;font-size:2rem;font-weight:700;margin:0 .5rem;padding:.4rem 1rem;text-decoration:none;transition:background-color .3s ease,color .3s ease}.see-more-link:hover{color:#fff;text-decoration:none}@keyframes fadeSkill{0%,to{opacity:0}50%{opacity:1}}.snap-section{scroll-snap-align:start}.homeContent{align-items:center;background-color:initial;display:flex;flex-direction:column;justify-content:flex-start;min-height:100vh;width:100%}@media (max-width:768px){.firstName,.lastName,.skill-flash-text{font-size:clamp(2.5rem,15vw,4rem)}}@media (max-width:480px){.firstName,.lastName,.skill-flash-text{font-size:clamp(2rem,16vw,3rem);top:210px}.aboutMeDiv{gap:2rem;width:90%}.see-more-link{color:#f94301}.about-description,.skills-section{font-size:.9rem;padding:.5rem}.customNavLinks.showMobileMenu,.skills-container{align-items:center}.skills-container{flex-direction:column;gap:.5rem}.mobileMenuButton{margin-right:40px}.timeline{padding-top:10%!important}.resume-toggle{margin:auto;padding-left:5%}.projects-container{margin-top:30%}.skill-buttons{flex-direction:row;flex-wrap:wrap;justify-content:center}.skill-buttons button{margin:.25rem}}.wordle-gate-overlay{align-items:center;background:#000000f2;bottom:0;color:#fff;gap:1rem;justify-content:center;left:0;position:fixed;right:0;top:0;transition:opacity 2s ease-in-out;z-index:2000}.wordle-gate-overlay,.wordle-grid{display:flex;flex-direction:column}.wordle-grid{gap:.5rem}.wordle-row{display:flex;gap:.25rem}.wordle-cell{align-items:center;border:2px solid #555;display:flex;font-size:1.5rem;height:3rem;justify-content:center;text-transform:uppercase;width:3rem}.wordle-cell.correct{background:#6aaa64;border-color:#6aaa64}.wordle-cell.present{background:#c9b458;border-color:#c9b458}.wordle-cell.absent{background:#787c7e;border-color:#787c7e}.wordle-form input{background:#0000;border:2px solid #fff;color:#fff;font-size:1.5rem;letter-spacing:.3rem;padding:.5rem;text-align:center;text-transform:uppercase;width:15rem}.wordle-gate-overlay.fade-out{opacity:0}.fade-out{opacity:0;transition:opacity .5s ease-in-out}.hidden{display:none!important}.used-letters{font-size:1.2rem}.welcome-message{font-family:monospace;font-size:2rem;letter-spacing:.1rem}.pmOverlay{align-items:center;background:#000000a6;display:flex;inset:0;justify-content:center;padding:18px;position:fixed;z-index:3000}.pmModal{background:#fff;border:1px solid #00000014;border-radius:14px;box-shadow:0 20px 60px #00000040;color:#1f2937;max-height:90vh;overflow-y:auto;padding:22px;pointer-events:auto;position:relative;width:min(1100px,100%)}.pmCloseInline{align-items:center;background:#fffffff2;border:1px solid #0000002e;border-radius:999px;cursor:pointer;display:inline-flex;font-size:22px;height:40px;justify-content:center;line-height:1;transition:background .15s ease,transform .15s ease;width:40px}.pmCloseInline:hover{background:#0000000d;transform:translateY(-1px)}.pmHeader{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:12px;position:relative}.pmTitle{font-family:Playfair Display,serif;font-size:28px;margin:0}.pmSubtitle{font-size:14px;margin-top:6px;opacity:.7}.pmActions{display:flex;flex-wrap:wrap;gap:10px}.pmBtn{align-items:center;border:1px solid #0003;border-radius:999px;cursor:pointer;display:inline-flex;font-size:14px;justify-content:center;padding:10px 14px;text-decoration:none;transition:transform .15s ease,background .15s ease}.pmBtn:hover{transform:translateY(-1px)}.pmBtnPrimary{background:#000000e6;color:#fff}.pmBtnGhost{background:#ffffffd9;color:#000}.pmBody{padding-top:6px}.pmDesc{font-family:Montserrat,sans-serif;line-height:1.55;margin-bottom:18px}.pmGalleryWrap{margin-top:8px}.pmHeroSection{grid-gap:14px;align-items:start;display:grid;gap:14px;grid-template-columns:2fr 1fr;margin-bottom:14px}.pmHeroStack{grid-gap:14px;display:grid;gap:14px;grid-template-rows:1fr 1fr}.pmThumb{aspect-ratio:3/4;background:#0000;border:0;border-radius:12px;box-shadow:0 10px 26px #00000024;cursor:pointer;height:auto;overflow:hidden;padding:0;pointer-events:auto;position:relative;transition:transform .18s ease,box-shadow .18s ease;z-index:1}.pmThumb:hover{box-shadow:0 14px 34px #0003;transform:translateY(-2px)}.pmThumb--hero{aspect-ratio:8/10;width:100%}.pmThumb--stack{aspect-ratio:3/4;width:100%}.pmThumb img{background:#0000;display:block;height:100%;object-fit:contain;width:100%}.pmGallery{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.pmHeaderRow{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.pmHeaderRow>div:first-child{flex:1 1 auto;min-width:0}.pmActionRow{align-items:center;display:flex;flex:0 0 auto;flex-wrap:wrap;gap:10px}.pmModal h3{font-size:34px;letter-spacing:.2px;line-height:1.1;margin:0;overflow-wrap:anywhere;word-break:normal}.pmDesc{font-size:16px;line-height:1.45;margin-top:10px}@media (max-width:560px){.pmHeaderRow{align-items:stretch;flex-direction:column;gap:10px}.pmActionRow{gap:8px;justify-content:flex-start}.pmModal h3{font-size:22px;letter-spacing:.1px;line-height:1.15;overflow-wrap:normal;word-break:keep-all}.pmDesc{font-size:14px;line-height:1.5}.buttonClass{font-size:13px;padding:8px 12px}.modal-close{margin-left:0!important}.pmLightbox{align-items:center;background:#000c;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}.pmLightboxInner{max-height:90vh;max-width:90vw;position:relative}.pmLightboxInner img{display:block;max-height:90vh;max-width:90vw;object-fit:contain}.pmLightboxClose{background:#000;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:26px;height:40px;position:absolute;right:-12px;top:-12px;width:40px}.lightboxOverlay{align-items:center;background:#000c;display:flex;inset:0;justify-content:center;position:fixed;z-index:99999}.lightboxOverlay img{max-height:90vh;max-width:90vw;object-fit:contain}}@media (max-width:900px){.pmHeroSection{grid-template-columns:1fr}.pmHeroStack{grid-template-columns:1fr 1fr;grid-template-rows:auto}.pmGallery{grid-template-columns:repeat(2,minmax(0,1fr))}.pmThumb--hero{aspect-ratio:16/9}}@media (max-width:560px){.pmActionRow{pointer-events:auto;width:auto}.pmModal h3{padding-right:96px}}.lazyWrap{height:100%;position:relative;width:100%}.lazySkeleton{background:#ffffff0f;border-radius:inherit;inset:0;opacity:1;overflow:hidden;position:absolute;transition:opacity .2s ease}.lazySkeleton:before{animation:lazyShimmer 1.1s infinite;background:linear-gradient(90deg,#fff0,#ffffff24 50%,#fff0);content:"";inset:0;position:absolute;transform:translateX(-120%)}.lazySkeleton.isLoaded{animation:none;opacity:0}@keyframes lazyShimmer{to{transform:translateX(120%)}}.lazyImg{opacity:0;transition:opacity .25s ease;will-change:opacity}.lazyImg.isLoaded{opacity:1}
/*# sourceMappingURL=main.b8b9aa07.css.map*/