*{box-sizing:border-box;margin:0;padding:0}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}:root{--bg-primary: #fafafa;--bg-section: #ffffff;--border-subtle: #e5e5e5;--text-primary: #171717;--text-secondary: #737373;--text-tertiary: #a3a3a3;--accent-primary: #171717;--accent-hover: #404040;--error: #dc2626;--success: #16a34a;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-subtle: 0 1px 3px 0 rgba(0, 0, 0, .05)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{width:100%;min-height:100vh}.container{max-width:800px;margin:0 auto;padding:3rem 1.5rem}.hero{text-align:center;padding:3rem 0;border-bottom:1px solid var(--border-subtle);margin-bottom:3rem}.hero-title{font-size:2.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.04em;margin-bottom:.5rem;cursor:default}.glow-effect{position:relative;cursor:default}h1.glow-effect,h2.glow-effect{background:radial-gradient(circle 200px at var(--x, 50%) var(--y, 50%),rgba(115,115,115,.9) 0%,var(--text-primary) 50%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-color:var(--text-primary);transition:background .2s ease}.submit-btn.glow-effect:before,.social-link.glow-effect:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle 150px at var(--x, 50%) var(--y, 50%),rgba(255,255,255,.2) 0%,transparent 70%);border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s ease}.submit-btn.glow-effect:hover:before,.social-link.glow-effect:hover:before{opacity:1}@supports not (background-clip: text){h1.glow-effect,h2.glow-effect{color:var(--text-primary);background:none;-webkit-text-fill-color:currentColor}}.hero-subtitle{font-size:1.125rem;color:var(--text-secondary);font-weight:400;margin-bottom:1rem;min-height:1.6em}.typing-cursor{display:inline-block;margin-left:2px;animation:blink 1s infinite;color:var(--text-secondary)}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.hero-description{font-size:.9375rem;color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.content-grid{display:grid;grid-template-columns:1fr;gap:3rem}.left-column,.right-column{min-width:0}.about-section{margin-bottom:2rem}.section-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1.25rem;letter-spacing:-.02em;width:fit-content}.section-description{font-size:.9375rem;color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.skills-list{display:flex;flex-direction:column;gap:1.25rem}.skill-item{padding:1.25rem;background-color:var(--bg-section);border:1px solid var(--border-subtle);border-radius:6px;transition:all .3s ease;cursor:default}.skill-item:hover{border-color:var(--text-tertiary);transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.skill-item h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.375rem;transition:color .2s ease}.skill-item:hover h3{color:var(--accent-hover)}.skill-item p{font-size:.875rem;color:var(--text-secondary);line-height:1.5}.grandoweb-section{padding:1.5rem;background-color:var(--bg-section);border:1px solid var(--border-subtle);border-radius:6px}.grandoweb-description{font-size:.9375rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1rem}.grandoweb-link{display:inline-flex;align-items:center;font-size:.9375rem;font-weight:500;color:var(--text-primary);text-decoration:none;transition:all .2s ease}.grandoweb-link:hover{color:var(--accent-hover)}.grandoweb-link:focus{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:2px}.contact-section{padding:1.5rem;background-color:var(--bg-section);border:1px solid var(--border-subtle);border-radius:6px;height:fit-content;margin-top:1rem}.contact-form{margin-bottom:1.25rem}.form-row{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8125rem;font-weight:500;color:var(--text-primary);margin-bottom:.375rem}.form-group input,.form-group textarea{width:100%;padding:.625rem .875rem;font-family:Inter,sans-serif;font-size:.875rem;background-color:#fff;color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:6px;outline:none;transition:all .2s ease;min-height:44px}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-tertiary)}.form-group input:focus,.form-group textarea:focus{border-color:var(--text-primary);transform:translateY(-1px);box-shadow:0 2px 8px #00000014}.form-group input:disabled,.form-group textarea:disabled{opacity:.5;cursor:not-allowed;background-color:#fafafa}.form-group textarea{resize:vertical;min-height:100px;line-height:1.5}.submit-btn{width:100%;padding:.75rem 1.5rem;font-family:Inter,sans-serif;font-size:.875rem;font-weight:500;background-color:var(--accent-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;min-height:44px;position:relative;overflow:hidden}.submit-btn:hover:not(:disabled){background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.submit-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px #0000001a}.submit-btn:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.status-message{padding:.75rem .875rem;margin-top:1rem;border-radius:6px;font-size:.8125rem;min-height:20px;font-weight:400}.status-message.success{color:#15803d;background-color:#f0fdf4;border:1px solid #86efac}.status-message.error{color:#991b1b;background-color:#fef2f2;border:1px solid #fca5a5}.status-message.submitting{color:var(--text-secondary);background-color:#fafafa;border:1px solid var(--border-subtle)}.footer{border-top:1px solid var(--border-subtle);padding:2rem 0;margin-top:3rem;text-align:center}.social-links{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem}.social-link{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.5rem;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:400;background-color:transparent;color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:6px;text-decoration:none;transition:all .2s ease;min-height:44px}.social-link:hover{background-color:var(--accent-primary);color:#fff;border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.social-link:active{transform:translateY(0);box-shadow:0 2px 4px #0000000d}.social-link:focus{outline:2px solid var(--accent-primary);outline-offset:2px}.footer-text{font-size:.875rem;color:var(--text-tertiary)}@media (min-width: 640px){.form-row{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.container{max-width:1200px;padding:2.5rem 2rem}.hero{padding:2.5rem 0;margin-bottom:2.5rem}.hero-title{font-size:3rem}.hero-subtitle{font-size:1.25rem}.content-grid{grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.section-title{font-size:1.25rem}.footer{margin-top:2.5rem}}
