*{box-sizing:border-box}body{margin:0;padding:0;min-width:320px;min-height:100vh}#root{min-height:100vh}.layout{min-height:100vh;display:flex;flex-direction:column}.skip-link{position:absolute;top:-100px;left:0;background:var(--accent-primary);color:#fff;padding:.75rem 1.5rem;text-decoration:none;z-index:1000;font-weight:600;border-radius:0 0 .5rem;transition:top .3s ease;opacity:0;pointer-events:none}.skip-link:focus{top:0;opacity:1;pointer-events:auto;outline:2px solid var(--accent-hover);outline-offset:2px}.header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;max-width:1400px;margin:0 auto}.header .container{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;max-width:1000px;margin:0 auto}.logo{font-size:1.5rem;font-weight:700;color:var(--accent-secondary);text-decoration:none;transition:color .3s ease;display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.certifications{font-size:.7rem;font-weight:500;color:var(--text-muted);margin-top:.1rem;letter-spacing:1px}.logo:hover{color:var(--accent-hover)}.nav{display:flex;gap:2rem;align-items:center}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:.5rem;transition:all .3s ease;position:relative}.nav-link:hover,.nav-link.active{color:var(--accent-secondary);background:var(--bg-tertiary)}.nav-link.active:after{content:"";position:absolute;bottom:-.5rem;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--accent-secondary);border-radius:50%}.menu-toggle{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:.5rem}.menu-toggle span{width:25px;height:3px;background:var(--text-primary);border-radius:2px;transition:all .3s ease}.main{flex:1;background:var(--bg-primary);width:100%;max-width:1400px;margin:0 auto}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:2rem 0;text-align:center;width:100%;max-width:1400px;margin:0 auto}.footer .container{max-width:1000px;margin:0 auto;padding:0 2rem}.footer p{color:var(--text-muted);font-size:.9rem}@media (max-width: 768px){.header .container{padding:1rem 2rem;margin:0 auto}.nav{position:fixed;top:100%;left:0;right:0;background:var(--bg-secondary);border-top:1px solid var(--border-color);flex-direction:column;gap:0;padding:1rem 0;transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease;z-index:99}.nav-open{transform:translateY(0);opacity:1;visibility:visible}.nav-link{width:100%;text-align:center;padding:1rem;border-radius:0}.nav-link:focus{outline:2px solid var(--accent-primary);outline-offset:-2px}.nav-link:hover,.nav-link.active{background:var(--bg-tertiary)}.nav-link.active:after{display:none}.menu-toggle{display:flex}.menu-toggle:focus{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:.25rem}.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:2rem}.error-boundary-content{text-align:center;max-width:600px}.error-boundary-content h1{color:var(--text-primary);margin-bottom:1rem}.error-boundary-content p{color:var(--text-secondary);margin-bottom:2rem;font-size:1.1rem}.error-details{margin:2rem 0;text-align:left;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem;padding:1rem}.error-details summary{cursor:pointer;color:var(--accent-secondary);font-weight:500;margin-bottom:1rem}.error-details summary:hover{color:var(--accent-hover)}.error-message{color:var(--text-secondary);font-size:.9rem;white-space:pre-wrap;word-break:break-all;background:var(--bg-tertiary);padding:1rem;border-radius:.25rem;overflow-x:auto}.error-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.error-actions .btn{min-width:120px}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #1a1d23;--bg-secondary: #252831;--bg-tertiary: #2d3139;--text-primary: #e8eaed;--text-secondary: #9aa0a6;--text-muted: #6c757d;--accent-primary: #60a5fa;--accent-secondary: #3b82f6;--accent-hover: #2563eb;--border-color: #3a3f47;--shadow: rgba(0, 0, 0, .3);--gradient-primary: linear-gradient(135deg, #60a5fa 0%, #3b82f6 100%);--gradient-secondary: linear-gradient(135deg, #252831 0%, #2d3139 100%)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;margin:0;padding:0}#root{width:100%;max-width:1400px;margin:0 auto}.container{max-width:1000px;margin:0 auto;padding:0 2rem}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin-bottom:1rem;font-weight:600}h1{font-size:3rem;line-height:1.2}h2{font-size:2.5rem;line-height:1.3}h3{font-size:2rem;line-height:1.4}h4{font-size:1.5rem;line-height:1.4}p{color:var(--text-secondary);margin-bottom:1rem}a{color:var(--accent-secondary);text-decoration:none;transition:color .3s ease}a:hover{color:var(--accent-hover)}.btn{display:inline-block;padding:.75rem 1.5rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none}.btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow)}.btn-outline{background:transparent;border:2px solid var(--accent-primary);color:var(--accent-secondary)}.btn-outline:hover{background:var(--accent-primary);color:#fff}.card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;padding:2rem;box-shadow:0 4px 6px var(--shadow);transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-4px);box-shadow:0 8px 25px var(--shadow)}.section{padding:6rem 0}.section-title{text-align:center;margin-bottom:3rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp .6s ease-out}@media (max-width: 768px){.container{padding:0 1rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}.section{padding:2rem 0}}
