:root{--eo-black: #000000;--eo-pitch: #090909;--eo-night: #121212;--eo-coal: #2b2b2b;--eo-graphite: #4a4a4a;--eo-storm: #4a5759;--eo-steel: #5a646e;--eo-olive: #4f5851;--eo-sigil: #4D4153;--eo-khaki: #6a5e52;--eo-moss: #7b8165;--eo-mauve: #9a8c98;--eo-taupe: #a59e8c;--eo-latte: #d4a373;--eo-cream: #eaddca;--eo-mint: #ecffdc;--eo-sand: #f1eee4;--eo-petal: #ffe4ee;--eo-blush: #fff0fb;--eo-smoke: #f5f5f5;--eo-powder: #faf9f6;--eo-white: #ffffff;--eo-coral: #e76f51;--eo-terra: #d65a3a;--eo-peach: #ffa69e;--eo-candy: #ffc4d6;--eo-mustard: #ffde5c;--eo-teal: #2a9d8f}:root{--primary: var(--eo-terra);--secondary: var(--eo-white);--accent: var(--eo-teal);--card-color: var(--eo-night);--border-color: var(--eo-coal);--bg-color: var(--eo-pitch);--text-muted: rgba(255, 255, 255, 0.7);--text-color: var(--eo-white);--nav-bg: var(--eo-black);--shadow-primary: rgba(250, 249, 246, 0.1);--shadow-secondary: rgba(9, 9, 9, 0.2);--hero-gradient: radial-gradient(circle, rgba(79, 88, 81, 0.1) 0%, rgba(18, 18, 18, 0) 60%)}[data-theme=light]{--card-color: var(--eo-white);--border-color: var(--eo-cream);--bg-color: var(--eo-powder);--text-muted: rgba(0, 0, 0, 0.7);--text-color: var(--eo-black);--nav-bg: var(--eo-white);--shadow-primary: rgba(18, 18, 18, 0.1);--shadow-secondary: rgba(250, 249, 246, 0.2);--hero-gradient: radial-gradient(circle, rgba(79, 88, 81, 0.1) 0%, rgba(250, 249, 246, 0) 60%)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.2)}100%{transform:scale(1)}}@keyframes blink{from,to{opacity:0}50%{opacity:1}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:2.75rem;overflow-x:hidden}body{transition:all .3s ease;background:var(--bg-color);color:var(--text-color);font-family:"Inter",sans-serif;font-weight:400;margin:0;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{flex:1;gap:1rem;margin:auto;display:flex;flex-direction:column}sub,sup{font-size:70%;line-height:0;position:relative;vertical-align:baseline}small{font-size:80%}button,input{overflow:visible}button,select{text-transform:none}button,input,optgroup,select,option,textarea{font-family:inherit;font-size:100%;color:inherit;background:inherit;line-height:1.15;margin:0}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button{all:unset;cursor:pointer;font-weight:600;font-family:"Jura",sans-serif}input,textarea{width:100%;padding:.75rem;border-radius:.5rem;transition:border-color .3s ease}input:focus,textarea:focus{outline:none;border-color:var(--accent-color-secondary)}textarea{resize:vertical;min-height:9rem}span{font-weight:normal}img,svg{max-width:100%;display:block}a{cursor:pointer;color:var(--text-color);text-decoration:none;transition:all .3s ease}a:hover{color:var(--accent)}i{cursor:pointer;padding:.5rem .25rem}i:hover{transform:scale(1.05)}em{font-style:italic;font-weight:500}ol,ul{list-style:none}ol li,ul li{margin:auto .875rem}h1,h2,h3,h4,h5,h6{line-height:1.2;margin-bottom:1rem;font-family:"Exo 2",sans-serif}h1{font-weight:700}h2,h3{font-weight:600}h4,h5,h6{font-weight:500}p{font-size:.9rem;font-size:clamp(0.9rem,0.8375rem + 0.3125vw,1.1rem)}h1{font-size:2rem;font-size:clamp(2rem,1.78125rem + 1.09375vw,2.7rem)}h2{font-size:1.5rem;font-size:clamp(1.5rem,1.34375rem + 0.78125vw,2rem)}h3{font-size:1.3rem;font-size:clamp(1.3rem,1.175rem + 0.625vw,1.7rem)}h4{font-size:1.1rem;font-size:clamp(1.1rem,0.975rem + 0.625vw,1.5rem)}h5{font-size:1rem;font-size:clamp(1rem,0.90625rem + 0.46875vw,1.3rem)}h6{font-size:.8rem;font-size:clamp(0.8rem,0.70625rem + 0.46875vw,1.1rem)}[hidden],[type=hidden]{display:none}.card{background-color:var(--card-color);border:.0625rem solid var(--border-color);padding:1.5rem;border-radius:.5rem;transition:all .2s ease-in-out;height:100%}.card:hover{transform:translateY(-0.313rem);box-shadow:0 .625rem 1.25rem rgba(0,0,0,.1);border-color:var(--primary)}.tag{display:inline-block;padding:.25rem .75rem;background-color:var(--bg-color);border:.0625rem solid var(--border-color);color:var(--text-muted);border-radius:999px;font-size:.8rem;margin-right:.5rem;margin-top:.5rem}header{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:1rem 0;background:var(--nav-bg);backdrop-filter:blur(0.625rem);border-bottom:.0625rem solid var(--border-color);box-shadow:0 .125rem .625rem var(--shadow-primary)}.nav-container{display:flex;justify-content:space-between;align-items:center}@media(max-width: 48rem){.nav-container{gap:1rem}}.logo{display:flex;align-items:center;gap:.5rem;font-family:"Iceberg",sans-serif;font-weight:700;font-size:1.5rem;font-size:1rem;font-size:clamp(1rem,0.84375rem + 0.78125vw,1.5rem);color:var(--text-color)}.logo img,.logo svg{object-fit:cover;border-radius:50%}.nav-links{display:flex}.nav-links a{color:var(--text-color);margin:0 1rem;font-weight:500}.nav-links a:hover,.nav-links a.active{color:var(--accent)}@media(max-width: 48rem){.nav-links{position:fixed;top:4.4rem;right:-100%;flex-direction:column;background:var(--nav-bg);width:100%;text-align:center;padding:1.25rem 0;transition:all .3s ease;box-shadow:0 .625rem .875rem var(--shadow-primary)}.nav-links.active{right:0}.nav-links a{margin:.875rem 0}}.theme-toggle{color:var(--text-color);padding:.5rem}.theme-toggle:hover{color:var(--accent)}.theme-toggle i{width:1.5rem;height:1.5rem}.menu-toggle{display:none;padding:.5rem;color:var(--text-color)}.menu-toggle:hover{color:var(--accent)}@media(max-width: 48rem){.menu-toggle{display:block}}footer{background:var(--bg-color);border-top:.0625rem solid var(--border-color);padding:1rem 0;margin-top:2rem;color:var(--text-muted);text-align:center;width:100%;font-family:"Jura",sans-serif}.footer-content{display:flex;flex-direction:column;align-items:center;justify-content:space-between}.footer-links{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.625rem}.quick-links{display:flex;align-items:center;justify-content:center;padding:0;gap:1rem;flex-wrap:wrap;margin:1rem auto 0}.quick-links a{font-weight:700;color:var(--text-muted);transition:color .3s ease}.quick-links a:hover{text-decoration:none;color:var(--eo-teal)}.social-links{display:flex;gap:1rem;align-items:center;justify-content:center;flex-wrap:wrap;margin:1rem auto}.social-links a>i{width:2.5rem;height:2.5rem;font-size:1.5rem;border-radius:50%;color:var(--eo-white);background:var(--eo-coal);text-decoration:none;transition:all .3s ease}.social-links a>i:hover{background:var(--eo-teal);transform:translateY(-3px)}.footer-copyright{font-weight:600;text-align:center}.copyright-info{padding-top:2rem;color:var(--eo-graphite);font-size:90%}.license-info{font-size:80%}.license-info a{color:var(--primary)}.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:500;text-align:center;cursor:pointer;transition:all .2s ease-in-out;border:2px solid rgba(0,0,0,0)}.btn-primary{background:var(--primary);color:var(--secondary)}.btn-primary:hover{opacity:.9;color:var(--text-color);background:rgba(0,0,0,0);transform:translateY(-2px);border:.0625rem solid var(--primary)}.btn-outline{background:rgba(0,0,0,0);border:.125rem solid var(--border-color)}.btn-outline:hover{color:var(--text-color);background:var(--card-color);border:.0625rem solid var(--primary)}.btn-ghost{background:rgba(0,0,0,0);color:var(--text-muted);border:.0625rem solid var(--shadow-primary)}.btn-ghost:hover{color:var(--text-color);background:var(--card-color);border:.0625rem solid var(--primary)}#contact .contact-wrapper{display:flex;gap:2.5rem}@media(max-width: 60rem){#contact .contact-wrapper{flex-direction:column}}.contact-form{flex:2;padding:1.5rem;border-radius:.625rem;box-shadow:0 .5rem 1rem var(--shadow-primary)}.contact-form .form-group{margin-bottom:1rem}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:.75rem;background-color:var(--bg-color);border:.0625rem solid var(--border-color);color:var(--text-color);border-radius:.5rem}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;box-shadow:0 0 0 .187rem var(--shadow-primary)}.contact-form button{display:block;margin:auto}.contact-info{flex:1;display:flex;flex-direction:column;gap:2rem;border-radius:.625rem;box-shadow:0 .5rem 1rem var(--shadow-primary);padding:1.5rem}.contact-info .info-card{display:flex;align-items:end;justify-content:start;gap:1rem}.contact-info .info-card i{width:3rem;height:3rem;font-size:1.5rem;border-radius:50%;text-align:center;padding:.75rem 0;border:.0625rem solid var(--accent);transition:all .2s ease-in-out}.contact-info .info-card i:hover{color:var(--eo-white);background:var(--accent);border:.0625rem solid var(--primary)}.contact-info .info-card div{display:flex;align-items:start;flex-direction:column}.contact-info .info-card div h4{font-size:90%;font-weight:700;margin-bottom:.5rem}.contact-info .info-card div a,.contact-info .info-card div p{text-decoration:none;font-size:90%;margin-bottom:0;text-wrap:wrap}.form-response{display:none;margin-top:1rem;padding:1rem 1.25rem;border-radius:.5rem;font-weight:500;transition:all .3s ease;box-shadow:0 .125rem .5rem var(--shadow-color-secondary);transform:translateY(5px)}.form-response.success{display:block;background:#e6f9f0;color:var(--accent-color-primary);border-left:.25rem solid #1bc47d;transform:translateY(0)}.form-response.failed{display:block;background:#fdecea;color:#8a1f11;border-left:.25rem solid #f03e3e;transform:translateY(0)}.container{max-width:84rem;margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0;opacity:0;transform:translateY(1.25rem);width:100%;transition:opacity .6s ease-out,transform .6s ease-out}.section.is-visible{opacity:1;transform:translateY(0)}.section-header{text-align:center;margin-bottom:3rem}.section-header p{margin:1rem auto;text-align:center}.section-header .section-title{margin:0;display:inline-block;position:relative;padding-bottom:.5rem}.section-header .section-title::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:3.75rem;height:.187rem;background:var(--accent);border-radius:.125rem}.grid{display:grid;gap:1.5rem}#hero{padding:6rem 0;text-align:center;background:var(--hero-gradient)}#hero::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("https://msio.me/img/bg-3.jpg");opacity:.1;pointer-events:none}#hero .container{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center}.hero-content h1{background:linear-gradient(90deg, var(--text-color) 70%, var(--text-muted));-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);margin-bottom:1rem}.hero-content .subtitle{font-size:1.25rem;color:var(--text-muted);max-width:600px;margin:0 auto 2rem}.cta-buttons{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.hero-illustration{max-width:300px;margin:2rem auto 0}#about .about-content{display:grid;grid-template-columns:repeat(auto-fit, minmax(min(18.75rem, 100%), 1fr));gap:3rem;align-items:center}#about .about-summary h2,#about .about-highlights h3{margin-bottom:1rem}#about .about-highlights ul{list-style:none;padding:0}#about .about-highlights li{padding-left:1.5rem;position:relative;margin-bottom:.75rem;color:var(--text-color)}#about .about-highlights li::before{content:"✓";position:absolute;left:0;color:var(--accent)}#focus-areas .grid{grid-template-columns:repeat(auto-fit, minmax(min(15.625rem, 100%), 1fr))}.focus-item .icon{color:var(--primary);margin-bottom:1rem}#projects .grid,#blog .grid,#services .grid{grid-template-columns:repeat(auto-fit, minmax(min(20rem, 100%), 1fr))}.project-card h3,.project-card h4,.blog-post h3,.blog-post h4{margin:0 0 .5rem}.project-card p,.blog-post p{color:var(--text-color)}.blog-post .date{font-size:.9rem;color:var(--text-muted);margin-bottom:1rem}.project-card .tech-stack{margin-top:1.5rem}#team .grid{grid-template-columns:repeat(auto-fit, minmax(min(24rem, 100%), 1fr));gap:2rem;justify-content:center}.team-member{text-align:center;padding:1rem}.team-member .avatar{width:5rem;height:5rem;border-radius:50%;margin:0 auto 1rem;border:.2rem solid var(--border-color)}.team-member .role{color:var(--primary);font-weight:500}.team-member .social-links{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:1rem}.team-member .social-links a{color:var(--text-muted)}