@import url(https://use.typekit.net/jmk3xov.css);*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{overflow-x:hidden}canvas{position:fixed;top:0;left:0;z-index:1}:root{--dark-bg:rgba(15, 15, 15, 0.95);--dark-bg-solid:rgba(15, 15, 15, 0.98);--spacing-mobile:80px;--spacing-tablet:150px;--spacing-desktop:350px;--section-padding-mobile:1rem;--section-padding-tablet:1.5rem;--section-padding-desktop:2rem;--grid-margin-mobile:1rem;--grid-margin-tablet:2rem;--grid-margin-desktop:4rem;font-family:brandon-grotesque,sans-serif;font-weight:400;font-style:normal}main{width:100%;color:#fff;z-index:99;position:relative;margin:0;padding:100px var(--grid-margin-mobile) 60px;display:flex;flex-direction:column;gap:var(--spacing-mobile)}blockquote,h1,h2,h3{font-family:elevon,sans-serif;font-weight:700;font-style:normal}.desktop-banner{position:fixed;top:0;left:0;right:0;background:linear-gradient(135deg,#667eea 0,#764ba2 100%);color:#fff;z-index:9999;padding:.8rem 1rem;box-shadow:0 4px 20px rgba(0,0,0,.3);backdrop-filter:blur(10px);display:block}.banner-content{display:flex;align-items:center;justify-content:center;gap:.8rem;max-width:100%;font-size:.9rem;font-weight:500}.banner-icon{font-size:1.1rem}.banner-text{flex:1;text-align:center}.banner-close{background:rgba(255,255,255,.2);border:none;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;font-weight:700;transition:background .3s ease;line-height:1}.banner-close:hover{background:rgba(255,255,255,.3)}header{background:var(--dark-bg-solid);padding:var(--section-padding-mobile);border-radius:10px;border:2px solid rgba(255,255,255,.1);box-shadow:0 8px 32px rgba(0,0,0,.3);backdrop-filter:blur(15px);text-align:center}header h1{font-size:2rem;margin-bottom:.5rem;line-height:1.2}header>p{font-size:.9rem;margin-bottom:1rem;line-height:1.4}.contact-info{font-size:.8rem;margin-top:1rem;opacity:.9;line-height:1.3}.contact-info p{margin:.3rem 0}section{padding:var(--section-padding-mobile);background:var(--dark-bg);font-size:1rem;line-height:1.6;border-radius:10px;border:2px solid rgba(255,255,255,.1);box-shadow:0 8px 32px rgba(0,0,0,.3);backdrop-filter:blur(10px)}section h2{font-size:1.5rem;margin-bottom:1rem;color:tomato}.project{background:rgba(255,255,255,.05);padding:1rem;margin:1rem 0;border-radius:8px;border-left:4px solid tomato;transition:transform .3s ease,box-shadow .3s ease}.project:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(255,99,71,.2)}.project h3{margin-top:0;margin-bottom:.5rem;color:tomato;font-size:1.1rem}.project p{margin:.5rem 0;font-size:.9rem}.tech-category{background:rgba(255,255,255,.05);padding:1rem;margin:.8rem 0;border-radius:8px;border-left:4px solid #4caf50}.tech-category h3{margin-top:0;margin-bottom:.5rem;color:#4caf50;font-size:1rem}.tech-category p{font-size:.9rem;line-height:1.4}blockquote{margin:0;padding:1rem;text-align:center}blockquote p{color:#000;background:linear-gradient(135deg,#667eea 0,#764ba2 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-color:#fff;font-size:1.5rem;display:inline-block;line-height:1.3;padding:.8rem 1.2rem;border-radius:10px;box-shadow:0 8px 32px rgba(102,126,234,.3);position:relative;max-width:100%;word-wrap:break-word}blockquote p::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.95);border-radius:10px;z-index:-1}.contact-section{text-align:center}.social-links{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.social-link{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1rem;background:rgba(255,255,255,.1);color:#fff;text-decoration:none;border-radius:25px;transition:all .3s ease;border:2px solid transparent;font-size:.9rem}.social-link:active,.social-link:hover{background:rgba(255,99,71,.2);border-color:tomato;transform:translateY(-2px);box-shadow:0 4px 15px rgba(255,99,71,.3)}.social-link span{font-size:1.1rem}.learning-section{margin-top:2rem;padding:1.5rem;background:rgba(76,175,80,.1);border-radius:10px;border:2px solid rgba(76,175,80,.3)}.learning-section h3{color:#4caf50;margin-bottom:1rem;font-size:1.1rem}.learning-section p{font-size:.9rem;line-height:1.4}.learning-section code{background:rgba(255,255,255,.1);padding:.3rem .5rem;border-radius:4px;font-family:"Courier New",monospace;color:#4caf50;font-size:.8rem;white-space:nowrap}@media (min-width:768px){main{padding:120px var(--grid-margin-tablet) 80px;gap:var(--spacing-tablet)}header{padding:var(--section-padding-tablet);text-align:left}header h1{font-size:2.5rem}header>p{font-size:1.1rem}.contact-info{font-size:.9rem}section{padding:var(--section-padding-tablet);font-size:1.1rem}section h2{font-size:1.8rem}.project{padding:1.25rem}.project h3{font-size:1.2rem}.project p{font-size:1rem}.tech-category{padding:1.25rem}.tech-category h3{font-size:1.1rem}.tech-category p{font-size:1rem}blockquote p{font-size:2.2rem;padding:1rem 1.5rem}.social-links{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.social-link{padding:1rem 1.5rem;font-size:1rem}.learning-section{padding:2rem}.learning-section h3{font-size:1.2rem}.learning-section p{font-size:1rem}.learning-section code{font-size:.9rem}}@media (min-width:1024px){.desktop-banner{display:none}main{width:100vw;color:#fff;z-index:99;position:absolute;width:100%;margin:0 auto;padding:120px 0;display:grid;grid-template-columns:repeat(12,1fr);gap:0}header{background:var(--dark-bg);grid-column:2/span 5;font-size:2.5rem;padding:2rem;margin-bottom:var(--spacing-desktop);border-radius:10px;border:2px solid rgba(255,255,255,.1);box-shadow:0 8px 32px rgba(0,0,0,.3);text-align:left}header h1{font-size:2.5rem;margin-bottom:.5rem}header>p{font-size:1rem;margin-bottom:1rem}.contact-info{font-size:1rem;margin-top:1rem;opacity:.9}.contact-info p{margin:.3rem 0}section{grid-column:2/8;padding:2rem;background:var(--dark-bg);font-size:1.25rem;line-height:1.5;margin-bottom:var(--spacing-desktop);border-radius:10px;border:2px solid rgba(255,255,255,.1);box-shadow:0 8px 32px rgba(0,0,0,.3);backdrop-filter:blur(10px)}section h2{font-size:1.8rem;margin-bottom:1rem;color:tomato}.project{background:rgba(255,255,255,.05);padding:1.5rem;margin:1.5rem 0;border-radius:8px;border-left:4px solid tomato;transition:transform .3s ease,box-shadow .3s ease}.project:hover{transform:translateY(-5px);box-shadow:0 12px 40px rgba(255,99,71,.2)}.project h3{margin-top:0;color:tomato;font-size:1.2rem}.tech-category{background:rgba(255,255,255,.05);padding:1.2rem;margin:1rem 0;border-radius:8px;border-left:4px solid #4caf50}.tech-category h3{margin-top:0;color:#4caf50;font-size:1.2rem}blockquote{margin:0;padding:0;grid-column:2/span 9;margin-bottom:var(--spacing-desktop)}blockquote p{color:#000;background:linear-gradient(135deg,#667eea 0,#764ba2 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-color:#fff;font-size:3.5rem;display:inline;line-height:1.2;padding:1rem 2rem;border-radius:10px;box-shadow:0 8px 32px rgba(102,126,234,.3);position:relative}.left{grid-column:6/12}.contact-section{grid-column:2/10!important;text-align:center}.social-links{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;margin:2rem 0}.social-link{display:flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:rgba(255,255,255,.1);color:#fff;text-decoration:none;border-radius:50px;transition:all .3s ease;border:2px solid transparent}.social-link:hover{background:rgba(255,99,71,.2);border-color:tomato;transform:translateY(-3px);box-shadow:0 8px 25px rgba(255,99,71,.3)}.social-link span{font-size:1.2rem}.learning-section{margin-top:3rem;padding:2rem;background:rgba(76,175,80,.1);border-radius:10px;border:2px solid rgba(76,175,80,.3)}.learning-section h3{color:#4caf50;margin-bottom:1rem}.learning-section code{background:rgba(255,255,255,.1);padding:.3rem .6rem;border-radius:4px;font-family:"Courier New",monospace;color:#4caf50}}@media (min-width:1440px){main{max-width:1600px}header h1{font-size:3.5rem}header>p{font-size:1.3rem}section{font-size:1.3rem}section h2{font-size:2.2rem}blockquote p{font-size:4rem}}