:root{font-family:Open Sans,Helvetica Neue,Helvetica,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5;color:#111}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}:root{--primary-color: #000000;--secondary-color: grey;--text-color: #4c4c4c;--button-bg: #FFFFFF;--button-border: rgba(0, 0, 0, .1);--button-shadow: rgba(0, 0, 0, .02);--button-hover-shadow: rgba(0, 0, 0, .1);--button-active-shadow: rgba(0, 0, 0, .06);--gap-small: .5rem;--gap-medium: 1.2rem;--gap-large: 2vh;--container-width-desktop: 55vw;--container-width-mobile: 90vw;--max-width: 800px}body{line-height:1.25;font-family:system-ui,-apple-system,Helvetica Neue,Helvetica,Arial,sans-serif;margin:0;padding:0;display:flex;flex-direction:column;align-items:center}.top{padding:1vh 1rem;display:grid;grid-template-rows:auto auto auto;justify-items:center;gap:var(--gap-large);width:100%;max-width:var(--max-width)}.name{font-weight:700;font-size:2rem;text-align:center}.job-title{color:var(--secondary-color);font-size:1rem;text-align:center}.interactive-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--gap-small);width:100%;max-width:var(--container-width-desktop);padding-bottom:1rem;border-bottom:.15rem solid var(--secondary-color)}.bottom{display:grid;grid-template-columns:1fr;justify-items:center;gap:var(--gap-medium);width:100%;max-width:var(--max-width);padding:2rem 1rem}.about-me-title{font-weight:600;font-size:1.4rem;text-align:center}.about-me{display:grid;gap:var(--gap-medium);width:100%;max-width:var(--container-width-desktop)}.about-me-description{color:var(--text-color);font-size:1.1rem;line-height:1.5;gap:var(--gap-medium)}.skills{display:grid;gap:.5rem;padding-left:2.5rem;list-style:disc}.button{display:inline-flex;align-items:center;justify-content:center;background-color:#e8e6e6;border:1px solid var(--button-border);border-radius:.25rem;box-shadow:var(--button-shadow) 0 1px 3px 0;color:#000000d9;cursor:pointer;font-size:1.15rem;font-weight:600;line-height:1.25;min-height:2rem;padding:.4rem 1.5rem;text-decoration:none;transition:all .25s;-webkit-user-select:none;user-select:none;width:100%;max-width:200px}.button:hover,.button:focus{border-color:#00000026;box-shadow:var(--button-hover-shadow) 0 4px 12px;color:#000000a6;transform:translateY(-1px)}.button:active{background-color:#f0f0f1;box-shadow:var(--button-active-shadow) 0 2px 4px;color:#000000a6;transform:translateY(0)}@media screen and (max-width: 768px){.interactive-buttons,.about-me{max-width:var(--container-width-mobile)}.name{font-size:1.5rem}.job-title{font-size:.9rem}.about-me-title{font-size:1.2rem}.about-me-description{font-size:1rem}.skills{padding-left:1.5rem}.button{font-size:1rem;padding:.35rem 1rem;max-width:none}}.mobile-only{display:none}@media screen and (max-width: 768px){.desktop-only{display:none}.mobile-only{display:block}}.about-me-description p{margin-bottom:var(--gap-medium)}.about-me-description p:last-child{margin-bottom:0}.skills-list{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;list-style:none}.skills-list li{background-color:#f0f0f0;color:#000;padding:.4rem .8rem;border-radius:.5rem;font-size:.9rem;font-weight:500;box-shadow:0 2px 4px #0000001a;transition:transform .2s,box-shadow .2s;cursor:default}.skills-list li:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.timeline-container{width:90%;max-width:900px;margin:2rem auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#222}.back-button{background-color:#e0e0e0;color:#111;border:none;padding:.6rem 1.2rem;margin-bottom:2rem;cursor:pointer;border-radius:6px;transition:background .3s,transform .2s}.back-button:hover{background-color:#cfcfcf;transform:translateY(-2px)}.timeline{position:relative;padding:2rem 0}.timeline:after{content:"";position:absolute;width:4px;background-color:#888;top:0;bottom:0;left:50%;transform:translate(-50%)}.timeline-item{padding:1rem 2rem;position:relative;width:50%;box-sizing:border-box;transition:transform .3s ease,box-shadow .3s ease}.timeline-item.left{left:0;text-align:right;padding-right:3rem}.timeline-item.right{left:50%;text-align:left;padding-left:3rem}.timeline-dot{position:absolute;top:20px;width:18px;height:18px;background-color:#555;border-radius:50%;z-index:1;border:3px solid #fff;transition:transform .3s}.timeline-item.left .timeline-dot{right:-9px}.timeline-item.right .timeline-dot{left:-9px}.timeline-item:hover .timeline-dot{transform:scale(1.2)}.timeline-content{background-color:#fff;color:#111;padding:1rem 1.5rem;border-radius:10px;display:inline-block;max-width:95%;transition:.3s;box-shadow:0 2px 12px #00000026}.timeline-item.left .timeline-content{background-color:#fdfdfd}.timeline-item.right .timeline-content{background-color:#fff}.timeline-item:hover .timeline-content{transform:translateY(-4px);box-shadow:0 10px 20px #0003}.timeline-item.project .timeline-content{border-left:4px solid #1a73e8}.timeline-item.education .timeline-content{border-left:4px solid #e53935}.timeline-period{display:block;font-weight:600;margin-bottom:.5rem;color:#444}.timeline-content h3{margin:0;font-size:1.25rem;color:#111}.timeline-content h4{margin:.3rem 0 .7rem;font-weight:500;color:#333}.timeline-content ul{margin:0;padding-left:1.2rem;color:#333;line-height:1.5}.timeline-item+.timeline-item{margin-top:3.5rem}@media screen and (max-width: 768px){.timeline-item{width:100%!important;left:0!important;text-align:left;padding-left:3rem;padding-right:1rem;margin-bottom:2.5rem}.timeline-dot{left:0!important;right:auto;top:.5rem}.timeline-content{max-width:calc(100% - 3rem);display:block;padding:1rem 1rem 1rem 1.5rem;border-left:4px solid transparent!important}.timeline:after{left:1.25rem}.timeline-period{font-size:.9rem}.timeline-content h3{font-size:1rem}.timeline-content h4{font-size:.9rem}.timeline-content ul{font-size:.85rem;padding-left:1rem}}form{max-width:26rem;width:90%;margin:3rem auto;padding:1rem;box-sizing:border-box}.header{text-align:center;font-size:2rem;padding-bottom:1.5rem}.feedback-input{font-family:Helvetica,Arial,sans-serif;font-weight:500;font-size:1.125rem;line-height:1.4;background-color:transparent;border-bottom:.125rem solid grey;transition:all .3s;padding:.8rem;margin-bottom:1rem;width:100%;box-sizing:border-box;outline:none}textarea{height:10rem;line-height:1.5;resize:vertical;outline:none}input:focus,textarea:focus,select:focus{border-bottom:.15rem solid grey}.feedback-input:focus{border-bottom:.125rem solid grey}[type=submit],[type=button]{font-family:Montserrat,Arial,Helvetica,sans-serif;width:100%;border-radius:.3rem;border:0;cursor:pointer;font-size:1.25rem;padding:.75rem 0;font-weight:700;transition:all .3s}.buttons{display:flex;flex-direction:column;gap:.8rem;padding-top:1rem}[type=submit]:hover{opacity:.9;transform:scale(1.05)}[type=button]:hover{opacity:.8;transform:scale(.95)}@media screen and (max-width: 768px){.header{font-size:1.5rem;padding-bottom:1rem}.feedback-input{font-size:1rem;padding:.6rem}textarea{height:8rem}[type=submit],[type=button]{font-size:1.1rem;padding:.65rem 0}.buttons{gap:.6rem}}.feedback-input{font-family:Helvetica,Arial,sans-serif;font-weight:500;font-size:1.125rem;line-height:1.4;background-color:#fafafa;border:1px solid #ccc;border-radius:.5rem;transition:all .3s ease;padding:.75rem 1rem;margin-bottom:1rem;width:100%;box-sizing:border-box;outline:none;box-shadow:inset 0 1px 2px #0000000d}.feedback-input:focus{border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e826;background-color:#fff}textarea.feedback-input{min-height:10rem;line-height:1.5;resize:vertical;transition:all .3s ease}.feedback-input::placeholder{color:#888;opacity:1;font-style:italic}.feedback-input:disabled,.feedback-input[readonly]{background-color:#f0f0f0;border-color:#ddd;color:#999;cursor:not-allowed}@media screen and (max-width: 768px){.feedback-input{font-size:1rem;padding:.6rem .8rem}textarea.feedback-input{min-height:8rem}}
