button{background-color:transparent;color:#000;border:3px solid black;padding:10px 20px;border-radius:100px;cursor:pointer;font-size:18px;min-width:200px;transition:background-color .3s ease,color .3s ease,border-color .3s ease}button:hover{background-color:#000;color:#fff}button:active{background-color:#004085}button:disabled{background-color:silver;cursor:not-allowed}.header{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:500px;height:100vh;background-color:#f8f9fa;padding:20px;text-align:center;font-size:24px}.header.dark{background-color:#121212}.header.dark .header-buttons button{border-color:#fff;color:#fff}.header.dark .header-buttons button:hover{background-color:#fff;color:#121212}.header-title{line-height:1.1}.header-subtitle{line-height:1.1;margin-bottom:30px}.header-blurb{max-width:500px;margin:0 auto 20px;font-size:16px;color:#6c757d}.header-buttons{display:flex;justify-content:center;gap:20px;margin-top:20px}.section-header{overflow:hidden}.section.with-line-after .section-header{position:relative;padding-bottom:1.5rem;margin-bottom:1.5rem}.section.with-line-after .section-header .gradient-title{position:relative}.section.with-line-after .section-header .gradient-title:after{content:"";position:absolute;bottom:50%;transform:translateY(50%);left:calc(100% + 20px);width:100vw;height:3px;background-color:#7566d533}.grid{max-width:100%;display:grid;grid-template-columns:1fr;gap:20px;padding:20px;min-height:0;min-width:0}@media (min-width: 768px){.grid{grid-template-columns:1fr 1fr}}@media (min-width: 992px){.grid{grid-template-columns:1fr 1fr 1fr}}.card{display:flex;flex-direction:column;background-color:#f0f0f0;padding:20px;text-align:center;border-radius:8px;overflow:hidden;min-width:0;min-height:0;box-shadow:0 2px 4px #0000001a}.card figure{max-height:250px;overflow:hidden;border-radius:8px;margin:0;flex:0 0 auto;position:relative}.card figure img{width:100%;border-radius:8px;object-fit:cover}.card figure figcaption{display:none;position:absolute;bottom:0;font-size:10px;background:#fff;width:100%}.card-content{flex:1;display:flex;flex-direction:column;justify-content:center}.card-content .gradient-title{font-size:22px;margin-top:15px}.card-content a{color:#4f46e5}.icon-list{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;padding:1rem;font-size:72px;color:#7566d5}.timeline{position:relative}@media (min-width: 768px){.timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:6px;background:linear-gradient(to bottom,#f9766f,#d160a2 25%,#7f60d1 65%,#3b8ff1 90%,#7db9e8);transform:translate(-50%);z-index:1;border-radius:3px}}@media (min-width: 0px){.timeline .card-content{font-size:16px}.timeline .card-content h3{font-size:22px}}@media (min-width: 992px){.timeline .card-content{font-size:22px}.timeline .card-content h3{font-size:34px}}.timeline .timeline-card{display:flex;flex-direction:column;margin-bottom:20px}.timeline .timeline-card .timeline-years{font-size:16px;font-weight:700;color:#eaeaea;background-color:#333;border-top-left-radius:8px;border-top-right-radius:8px;border:2px solid #1a1a1a;text-align:center;padding-top:10px}@media (min-width: 768px){.timeline .timeline-card{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;margin-bottom:30px;align-items:center}.timeline .timeline-card .timeline-years{font-size:16px;font-weight:700;color:#888;background-color:transparent;border-top-left-radius:0;border-top-right-radius:0;border:2px solid transparent;padding-top:0}.timeline .timeline-card:nth-child(odd) .timeline-years{grid-column:1;text-align:right;padding-right:20px}.timeline .timeline-card:nth-child(odd) .card{grid-column:3;grid-row:1;margin-left:20px;position:relative}.timeline .timeline-card:nth-child(2n) .timeline-years{grid-column:3;text-align:left;padding-left:20px}.timeline .timeline-card:nth-child(2n) .card{grid-column:1;grid-row:1;margin-right:20px;position:relative}}.projects .card-content{font-size:16px;justify-content:flex-start;text-align:left}.projects .card-content h3{font-size:22px;padding:20px 0 10px}.footer{text-align:center;font-size:14px;padding-top:10px}.footer a{color:#4f46e5}.footer.dark{background-color:#121212;color:#f1f1f1}form{max-width:640px;width:100%;margin:0 auto 100px}form input,form textarea{width:100%;padding:10px;border:2px solid #4f46e5}.contact .icons{display:flex;justify-content:center;gap:1rem;width:100%}.contact .icons .icon-list{display:flex;flex-wrap:nowrap;justify-content:center;gap:1rem;width:80%;border-top:2px solid #ccc;padding-top:0}.contact .icons a{display:flex;flex-wrap:wrap;justify-content:center;color:#999;text-decoration:none;font-size:5rem;transition:color .3s ease;width:50%;padding:40px 20px;border-right:2px solid #ccc}.contact .icons a:last-child{border-right:none}.contact .icons a:hover{color:#007bff}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{max-width:100%;font-size:100%;scroll-behavior:smooth}body{max-width:100%;font-family:Inter,sans-serif;background-color:#fff;color:#1a1a1a;line-height:1.6;transition:background-color .3s ease,color .3s ease}#root{padding:0}.portfolio{padding:0 2rem}.portfolio.dark{background-color:#121212}.portfolio.dark .contact label{color:#f1f1f1}.portfolio.dark .contact button{color:#f1f1f1;border-color:#f1f1f1}.portfolio.dark .contact button:hover{background-color:#f1f1f1;color:#1a1a1a}.section{max-width:1200px;margin:0 auto;padding:4rem 2rem}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{font-family:Poppins,sans-serif;font-weight:600}p{margin-bottom:10px}a{color:inherit;text-decoration:none}strong{color:#4f46e5}h1.gradient-title{width:fit-content;background:linear-gradient(to right,#f9766f,#d160a2 15%,#7f60d1 34%,#3b8ff1 59%,#7db9e8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:72px;margin:0 auto}h2.gradient-title{width:fit-content;background:linear-gradient(to right,#f9766f,#d160a2 15%,#7f60d1 34%,#3b8ff1 59%,#7db9e8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:48px}h3.gradient-title{width:fit-content;background:linear-gradient(to right,#f9766f,#d160a2 15%,#7f60d1 34%,#3b8ff1 59%,#7db9e8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:34px}h4.gradient-title{width:fit-content;font-size:22px}h5.gradient-title{width:fit-content;font-size:16px}h6.gradient-title{width:fit-content;font-size:14px}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.section{padding:4rem 2rem}.title{font-size:48px;margin-bottom:2rem}
