html{scroll-behavior:smooth;scroll-padding-top:40px}:root{--pattern:#11111138;--background:#f5edda;--surface:#f5edda;--foreground:#111;--inverted-bg:#111;--inverted-text:#f5edda;--yellow:#ffd928;--pink:#ff4f9a;--mint:#65e6c1;--blue:#4267e8;--border:3px solid var(--foreground);--shadow:6px 6px 0 var(--foreground)}*{box-sizing:border-box}body{background:var(--background);color:var(--foreground);background-image:radial-gradient(var(--pattern) 1px, transparent 1px);background-size:16px 16px;margin:0;font-family:Arial,sans-serif}.content-section{border:var(--border);max-width:1100px;box-shadow:var(--shadow);background:var(--surface);margin:100px auto;padding:40px}.section-label{letter-spacing:2px;margin:0 0 20px;font-size:13px;font-weight:800}.content-section h2{letter-spacing:-3px;margin:0 0 25px;font-size:clamp(40px,7vw,80px);line-height:.95}@media (width<=700px){.content-section{margin:70px 12px;padding:30px 25px}.content-section h2{font-size:clamp(38px,11vw,60px)}}.skip-link{background:var(--yellow);color:var(--foreground);z-index:100;padding:8px;transition:top .3s;position:absolute;top:-40px;left:0}.skip-link:focus{top:0}nav{border:var(--border);box-shadow:var(--shadow);background:var(--surface);justify-content:space-between;align-items:center;margin:20px;padding:16px 20px;display:flex}.nav-brand{color:var(--foreground);font-size:16px;font-weight:800;text-decoration:none}.nav-right{align-items:center;gap:24px;display:flex}.nav-links{align-items:center;gap:20px;display:flex}.nav-links a{color:var(--foreground);border:2px solid #0000;padding:6px 12px;font-weight:700;text-decoration:none;transition:all .15s}.nav-links a.active{background:var(--yellow);color:#111;border:2px solid var(--foreground);box-shadow:2px 2px 0 var(--foreground)}.menu-toggle{display:none}@media (width<=700px){nav{margin:12px;padding:14px 16px;position:relative}.nav-right{gap:12px}.menu-toggle{border:var(--border);background:var(--pink);color:var(--foreground);box-shadow:3px 3px 0 var(--foreground);font:inherit;cursor:pointer;padding:18px 12px;font-size:12px;font-weight:900;display:block}.nav-links{border:var(--border);width:100%;box-shadow:var(--shadow);background:var(--surface);z-index:10;flex-direction:column;align-items:stretch;gap:0;margin-top:8px;display:none;position:absolute;top:100%;left:0;right:0}.nav-links.open{display:flex}.nav-links a{border-bottom:2px solid var(--foreground);padding:14px}.nav-links a:last-child{border-bottom:0}}.footer{border:var(--border);background:var(--inverted-bg);color:var(--inverted-text);box-shadow:var(--shadow);margin:100px 20px 20px}.footer-main{border-bottom:var(--border);padding:50px}.footer-main h2{letter-spacing:-4px;margin:0 0 15px;font-size:clamp(45px,8vw,90px);line-height:.9}.footer-main p{margin:0;font-size:14px;font-weight:900}.footer-bottom{justify-content:space-between;gap:20px;padding:18px 25px;font-size:12px;font-weight:900;display:flex}@media (width<=700px){.footer{margin:80px 12px 12px}.footer-main{padding:35px 25px}.footer-main h2{letter-spacing:-2px}.footer-bottom{flex-direction:column;gap:8px}}.scroll-top{border:var(--border);box-shadow:var(--shadow);background:var(--yellow);color:var(--foreground);font:inherit;cursor:pointer;border-radius:0;margin-top:30px;padding:14px 20px;font-size:13px;font-weight:900;transition:transform .15s,box-shadow .15s}.scroll-top:hover{box-shadow:2px 2px 0 var(--foreground);transform:translate(4px,4px)}.scroll-top:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.hero{border:var(--border);box-shadow:var(--shadow);background:var(--yellow);margin:60px 20px;padding:60px 40px;position:relative;overflow:hidden}.hero-content{z-index:3;max-width:650px;position:relative}.hero-label{letter-spacing:2px;margin:0;font-size:14px;font-weight:800}.hero h1{letter-spacing:-5px;margin:10px 0 20px;font-size:clamp(64px,12vw,160px);line-height:.9}.hero-description{max-width:600px;margin:0;font-size:22px;font-weight:600}.hero-tag{border:var(--border);background:var(--pink);margin-top:40px;padding:10px 16px;font-size:13px;font-weight:800;display:inline-block}.hero-actions{flex-wrap:wrap;gap:16px;margin-top:30px;display:flex}.button{border:var(--border);box-shadow:4px 4px 0 var(--foreground);border-radius:0;padding:14px 20px;font-weight:800;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-block}.button-dark{background:var(--foreground);color:var(--background)}.button-pink{background:var(--pink);color:var(--foreground)}.button:hover{box-shadow:1px 1px 0 var(--foreground);transform:translate(3px,3px)}.button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.hero-visual{width:45%;height:100%;position:absolute;top:0;right:0}.visual-circle{border:var(--border);background:var(--pink);width:180px;height:180px;box-shadow:var(--shadow);border-radius:50%;animation:3s ease-in-out infinite float-circle;position:absolute;top:20px;right:40px}.visual-square{border:var(--border);background:var(--yellow);width:120px;height:120px;box-shadow:var(--shadow);animation:5s ease-in-out infinite float-square;position:absolute;bottom:35px;left:30px;transform:rotate(-8deg)}@keyframes float-circle{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes float-square{0%,to{transform:rotate(-8deg)translateY(0)}50%{transform:rotate(-8deg)translateY(10px)}}.visual-window{border:var(--border);width:clamp(290px,90%,480px);box-shadow:var(--shadow);z-index:2;background:#141414;font-family:Courier New,Courier,monospace;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.window-bar{border-bottom:var(--border);background:var(--blue);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.window-dots{gap:6px;display:flex}.window-dots span{border:1.5px solid var(--foreground);background:var(--pink);border-radius:50%;width:10px;height:10px}.window-dots span:nth-child(2){background:var(--yellow)}.window-dots span:nth-child(3){background:var(--mint)}.window-title{color:var(--background);letter-spacing:.5px;font-size:11px;font-weight:800}.window-content{color:var(--background);padding:14px 16px;font-size:12.5px;line-height:1.4}.terminal-line{align-items:center;gap:8px;margin-top:10px;display:flex}.terminal-line:first-child{margin-top:0}.prompt{color:var(--mint);font-weight:900}.cmd{color:#fff;font-weight:700}.output{color:var(--yellow);margin:3px 0 0 14px;font-size:12px}.cursor{background:var(--mint);width:7px;height:14px;animation:1s steps(2,start) infinite cursor-blink;display:inline-block}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}@media (width<=700px){.hero{margin:40px 12px;padding:40px 25px}.hero-content{max-width:100%}.hero-actions{flex-direction:column;align-items:stretch}.button{text-align:center}.hero-visual{width:100%;height:260px;min-height:0;margin-top:20px;position:relative}.visual-window{width:100%}.hero h1{letter-spacing:-3px;font-size:clamp(56px,18vw,100px)}.hero-description{font-size:20px;font-weight:600}}@media (prefers-reduced-motion:reduce){.visual-circle,.visual-square,.cursor{animation:none}.button{transition:none}}.about-text{max-width:800px;margin:0 0 25px;font-size:20px;font-weight:500;line-height:1.6}.about-text:last-of-type{margin-bottom:0}.about-tags{flex-wrap:wrap;gap:10px;margin-top:35px;display:flex}.about-tags span{border:var(--border);background:var(--mint);padding:10px 14px;font-size:12px;font-weight:900}.project-card{border:var(--border);box-shadow:var(--shadow);background:var(--yellow);padding:35px}.project-number{letter-spacing:1px;margin-bottom:20px;font-size:13px;font-weight:900}.project-card h3{margin-bottom:20px;font-size:clamp(32px,5vw,58px);line-height:.95}.project-card p{max-width:700px;margin-bottom:25px;font-size:18px;line-height:1.5}.project-tags{flex-wrap:wrap;gap:10px;margin-bottom:30px;display:flex}.project-tags span{border:2px solid var(--foreground);background:var(--background);padding:8px 12px;font-size:12px;font-weight:900}.project-bottom{justify-content:flex-end;margin-top:30px;display:flex}.project-link{border:var(--border);background:var(--yellow);color:var(--foreground);box-shadow:5px 5px 0 var(--foreground);padding:14px 20px;font-size:13px;font-weight:900;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-block}.project-bottom a:hover{box-shadow:1px 1px 0 var(--foreground);transform:translate(4px,4px)}.project-features{max-width:700px;margin:0 0 30px;padding-left:22px;font-size:17px;font-weight:600;line-height:1.6}.project-features li{margin-bottom:6px}.project-link:focus-visible{outline:3px solid var(--blue);outline-offset:4px}@media (width<=700px){.project-card{padding:25px}}.contact-text{max-width:700px;margin:0 0 35px;font-size:20px;line-height:1.6}.contact-form{flex-direction:column;gap:20px;max-width:900px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{letter-spacing:1px;font-size:13px;font-weight:900}.form-group input,.form-group textarea{border:var(--border);background:var(--background);width:100%;color:var(--foreground);font:inherit;border-radius:0;padding:16px;font-size:16px;font-weight:600}.form-group textarea{resize:vertical;min-height:180px}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--foreground);opacity:.55}.form-group input:focus,.form-group textarea:focus{outline:3px solid var(--blue);outline-offset:3px}.contact-submit{border:var(--border);box-shadow:var(--shadow);background:var(--yellow);color:var(--foreground);font:inherit;cursor:pointer;border-radius:0;align-self:flex-start;padding:18px 28px;font-size:15px;font-weight:900;transition:transform .15s,box-shadow .15s}.contact-submit:hover{box-shadow:2px 2px 0 var(--foreground);transform:translate(4px,4px)}.contact-submit:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.contact-submit:disabled{cursor:wait;opacity:.7}.form-success{border:var(--border);background:var(--mint);margin:0;padding:15px;font-weight:700}.contact-divider{letter-spacing:1px;margin:60px 0 25px;font-size:13px;font-weight:900}.contact-links{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.contact-link{border:var(--border);min-height:90px;box-shadow:var(--shadow);color:var(--foreground);justify-content:space-between;align-items:center;padding:20px;font-size:15px;font-weight:900;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex}.contact-link:hover{box-shadow:2px 2px 0 var(--foreground);transform:translate(4px,4px)}.contact-link:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.contact-github{background:var(--yellow)}.contact-email{background:var(--pink)}.contact-instagram{background:var(--mint)}button.contact-link{text-align:left;cursor:pointer;width:100%;font-family:inherit}.contact-email.copied{background:var(--mint);box-shadow:2px 2px 0 var(--foreground);transform:translate(2px,2px)}@media (width<=700px){.form-row{grid-template-columns:1fr}.contact-submit{width:100%}.contact-links{grid-template-columns:1fr}}.form-error{border:var(--border);background:var(--pink);margin:0;padding:15px;font-weight:700}.contact-honeypot{position:absolute;left:-9999px}.lab-section{background:var(--inverted-bg);color:var(--inverted-text)}.lab-section .section-label{color:var(--inverted-text)}.section-intro{max-width:650px;margin:0;font-size:20px;font-weight:600;line-height:1.5}.lab-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;display:grid}.lab-card{border:var(--border);box-shadow:var(--shadow);color:#111;padding:25px}.lab-number{letter-spacing:1px;margin:0 0 30px;font-size:12px;font-weight:900}.lab-card h3{margin:0 0 15px;font-size:26px;line-height:1}.lab-card>p:last-child{margin:0;font-size:16px;font-weight:600;line-height:1.5}.lab-mint{background:var(--mint)}.lab-blue{background:var(--blue)}.lab-pink{background:var(--pink)}@media (width<=700px){.lab-grid{grid-template-columns:1fr}}.learning-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:40px;display:grid}.learning-card{border:var(--border);box-shadow:var(--shadow);padding:25px}.learning-card span{font-size:12px;font-weight:900}.learning-card h3{margin:30px 0 15px;font-size:32px;line-height:1}.learning-card p{margin:0;font-size:16px;font-weight:600;line-height:1.5}.learning-yellow{background:var(--yellow)}.learning-pink{background:var(--pink)}.learning-mint{background:var(--mint)}.learning-blue{background:var(--blue)}@media (width<=700px){.learning-grid{grid-template-columns:1fr}}
