body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9f9f9;color:#333;line-height:1.6}*,*:before,*:after{box-sizing:border-box}a{color:#555;text-decoration:none;transition:color .2s ease-in-out}a:hover{color:#000}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.75rem;font-weight:500}._header_ufn0j_1{background-color:#fff;padding:1.5rem 0;border-bottom:1px solid #eeeeee;position:sticky;top:0;z-index:1000}._container_ufn0j_10{max-width:960px;margin:0 auto;padding:0 1.5rem;display:flex;justify-content:space-between;align-items:center}._logo_ufn0j_19{font-size:1.8rem;font-weight:600;color:#333;text-decoration:none}._navLink_ufn0j_26{margin-left:1.5rem;font-size:1rem;color:#555;text-decoration:none;padding-bottom:.25rem;border-bottom:2px solid transparent;transition:color .2s ease,border-bottom-color .2s ease}._navLink_ufn0j_26:hover{color:#000}._navLink_ufn0j_26._active_ufn0j_40{color:#000;font-weight:500;border-bottom-color:#555}._footer_19juf_1{background-color:#f0f0f0;color:#666;text-align:center;padding:2rem 1rem;margin-top:4rem;font-size:.9rem;border-top:1px solid #e0e0e0}._container_19juf_11{max-width:960px;margin:0 auto}._footer_19juf_1 p{margin:.25rem 0}._homePage_1k5hh_1{padding:2rem 1.5rem;max-width:960px;margin:2rem auto;text-align:center}._hero_1k5hh_8{padding:3rem 0;margin-bottom:3rem}._tagline_1k5hh_13{font-size:2.8rem;font-weight:300;color:#222;margin-bottom:1rem}._subTagline_1k5hh_20{font-size:1.2rem;color:#555;margin-bottom:2.5rem;max-width:600px;margin-left:auto;margin-right:auto}._ctaButton_1k5hh_29{display:inline-block;background-color:#555;color:#fff;padding:.8rem 1.8rem;border-radius:4px;text-decoration:none;font-size:1rem;transition:background-color .2s ease}._ctaButton_1k5hh_29:hover{background-color:#333}._mission_1k5hh_44{padding:2rem 0;border-top:1px solid #eee}._mission_1k5hh_44 h2{font-size:1.8rem;font-weight:400;margin-bottom:1rem;color:#333}._mission_1k5hh_44 p{font-size:1.1rem;color:#555;max-width:700px;margin:0 auto;line-height:1.7}._portfolioItem_6cmlp_1{background-color:#fff;border:1px solid #e0e0e0;padding:1.5rem;margin-bottom:1.5rem;border-radius:4px;transition:box-shadow .2s ease-in-out}._portfolioItem_6cmlp_1:hover{box-shadow:0 4px 12px #0000000d}._title_6cmlp_14{font-size:1.5rem;color:#333;margin-bottom:.75rem;font-weight:500}._description_6cmlp_21{font-size:1rem;color:#555;margin-bottom:1rem;line-height:1.6}._techContainer_6cmlp_28{margin-top:1rem;font-size:.9rem;color:#666}._techContainer_6cmlp_28 strong{font-weight:500}._techList_6cmlp_38{list-style:none;padding:0;margin-top:.5rem;display:flex;flex-wrap:wrap;gap:.5rem}._techTag_6cmlp_47{background-color:#f0f0f0;color:#555;padding:.25rem .6rem;border-radius:3px;font-size:.85rem}._projectLink_6cmlp_55{display:inline-block;margin-top:1rem;color:#444;font-weight:500;text-decoration:underline}._projectLink_6cmlp_55:hover{color:#000}._portfolioPage_1sbge_1{max-width:960px;margin:2rem auto;padding:2rem 1.5rem}._pageTitle_1sbge_7{font-size:2.2rem;text-align:center;margin-bottom:.5rem;font-weight:400;color:#333}._pageSubtitle_1sbge_15{text-align:center;font-size:1.1rem;color:#555;margin-bottom:3rem}._portfolioGrid_1sbge_22{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 768px){._portfolioGrid_1sbge_22{grid-template-columns:repeat(2,1fr)}}._aboutPage_13eg0_1{max-width:800px;margin:2rem auto;padding:2rem 1.5rem;font-size:1.05rem;line-height:1.7}._pageTitle_13eg0_9{font-size:2.2rem;text-align:center;margin-bottom:2rem;font-weight:400;color:#333}._section_13eg0_17{margin-bottom:2.5rem}._section_13eg0_17 h2{font-size:1.6rem;font-weight:500;color:#444;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #eee}._section_13eg0_17 p{margin-bottom:1rem;color:#555}._section_13eg0_17 ul{list-style:disc;padding-left:1.5rem;margin-bottom:1rem;color:#555}._section_13eg0_17 li{margin-bottom:.5rem}.app-container{display:flex;flex-direction:column;min-height:100vh}.main-content{flex-grow:1}
