:root{--background:#d9cbdb;--foreground:#171717}body{background:var(--background);color:var(--foreground);grid-template-rows:auto 1fr auto;min-height:100vh;margin:0;font-family:Arial,Helvetica,sans-serif;display:grid}main{padding:25px}.link:link,.link:visited{color:#d3d3d3}.link:hover,.link:focus{color:#a690a4}.link:active{color:purple}.container{text-align:center;flex-flow:wrap;justify-content:space-evenly;align-items:baseline;display:flex}.flex-row{flex-direction:row;display:flex}h1,h2{margin-bottom:5px;font-size:x-large;font-weight:700}h3{margin-top:1em;margin-bottom:5px;font-size:large;font-weight:700}.brand{margin-bottom:.25rem;font-size:1.25rem;font-weight:700}nav{color:#fff;background-color:#211431;flex-flow:column wrap;margin:0;padding:1rem 1rem 1rem 0;list-style:none;display:flex}.navbar{flex-wrap:wrap;justify-content:flex-end;list-style:none;display:flex}.navbar>li,.footbar>li{padding:0 .25rem;list-style:none}.footbar{color:#d3d3d3;background-color:#211431;justify-content:center;width:100%;padding:.5rem;display:flex}.footbar ul,.flex-row{margin:0;padding-left:0;list-style:none}#bio{color:#171717;max-width:64rem;margin:0 auto;padding:3rem 1.5rem}.bio-header{text-align:center;flex-direction:column;align-items:center;margin-bottom:2.5rem;display:flex}.bio-photo{border-radius:9999px;margin-bottom:1.5rem;box-shadow:0 10px 15px rgba(0,0,0,.145)}#bio h1{margin-bottom:1rem;font-size:2.25rem;font-weight:700}#bio h2{margin-bottom:.75rem;font-size:1.5rem;font-weight:600}#bio p{max-width:42rem;margin:0 auto;font-size:1.125rem;line-height:1.75}.bio-mission{margin-bottom:2.5rem}.about:link,.about:visited{font-weight:700;text-decoration:underline}.about:link{color:#211431}.about:visited{color:#5e4b56}.about:hover,.about:focus{color:#374151}.about:active{color:purple}.photo{width:200px;height:auto}.lnlogo{width:auto;height:2rem;padding:.25rem}button{color:#fff;cursor:pointer;background-color:#5e4b56;border-radius:.25rem;outline:none;padding:.5rem 1rem;font-weight:700;transition:background-color .2s,box-shadow .2s;box-shadow:0 1px 3px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.06)}button:hover{background-color:#a690a4}button:focus{box-shadow:0 0 0 3px rgba(166,144,164,.553)}.custom-label{letter-spacing:.05em;color:#374151;margin-bottom:.5rem;font-size:.75rem;font-weight:700;display:block}.custom-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#374151;background-color:#e5e7eb;border:1px solid #d3d3d3;border-radius:.25rem;outline:none;width:100%;padding:.75rem 1rem;line-height:1.25;display:block}.custom-input:focus{background-color:#fff;border-color:#6b7280;box-shadow:0 0 0 3px rgba(107,114,128,.3)}.grid-layout{grid-template:"form confirm""form confirm"1fr/1fr 1fr;column-gap:1rem;display:grid}form{max-width:100%;box-shadow:none;background:0 0;border:none}fieldset{box-sizing:border-box;width:100%;box-shadow:none;background:0 0;border:none;grid-area:form;margin-bottom:1.5rem;padding:0 .75rem}.confirm{color:#211431;background-color:#f3f4f6;border-radius:.5rem;flex-direction:column;grid-area:confirm;justify-content:flex-start;padding:1rem;display:flex;box-shadow:0 2px 6px rgba(0,0,0,.1)}.message-box{flex-direction:column;gap:1rem;display:flex}.message-heading{color:#5e4b56;margin-bottom:.25rem;font-size:1.25rem;font-weight:700}.message{font-size:1rem;line-height:1.5}.confirmation-text{color:#374151;white-space:pre-wrap;word-break:break-word;background-color:#fff;border-left:4px solid #5e4b56;padding:.75rem 1rem;font-style:italic}.projects-container{padding:2rem}.page-title{text-align:center;margin-bottom:2rem;font-size:2rem;font-weight:700}.project-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;padding:0;list-style:none;display:grid}.project-card{background-color:rgba(250,250,250,.5);border-radius:.5rem;padding:1rem;box-shadow:0 2px 6px rgba(0,0,0,.1)}.project-image{border-radius:.25rem;width:100%;height:auto;margin-bottom:1rem}#skills{text-align:center;padding:2rem}#skills h1{margin-bottom:2rem;font-size:2rem;font-weight:700}#skills ul{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));justify-items:center;gap:2rem;margin:0;padding:0;list-style:none;display:grid}.skill{text-align:center;background-color:rgba(250,250,250,.5);border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:160px;padding:1rem;display:flex;box-shadow:0 2px 6px rgba(0,0,0,.1)}.skill img{width:48px;height:48px;margin-bottom:.5rem}.skill span{color:#374151;font-size:1rem;font-weight:600}@media (max-width:800px){.grid-layout{grid-template-columns:1fr;grid-template-areas:"form""confirm"}}
