:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{font-family:Segoe UI,Arial,sans-serif;margin:0;background:#f8f9fa;color:#222}h1{font-size:3.2em;line-height:1.1}#app{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.vanilla:hover{filter:drop-shadow(0 0 2em #f7df1eaa)}.card{padding:2em}.read-the-docs{color:#888}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.navbar{display:flex;gap:2rem;background:#036;padding:1rem 2rem}.navbar a{color:#fff;text-decoration:none;font-weight:500;font-size:1.1rem}.navbar a:hover{text-decoration:underline}.home-container,.contact-container{max-width:700px;margin:2rem auto;background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000012;padding:2rem}.hero{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;background:linear-gradient(90deg,#036,#0055a5);color:#fff;text-align:center;padding:3rem 0 2.5rem;overflow:hidden;animation:heroFadeIn 1.2s ease}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}.flyer{width:100%;max-width:700px;border-radius:18px;margin-bottom:1.5rem;box-shadow:0 8px 32px #0000002e;transition:transform .4s cubic-bezier(.25,.8,.25,1),box-shadow .3s;animation:flyerZoomIn 1.2s cubic-bezier(.25,.8,.25,1)}@keyframes flyerZoomIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.flyer:hover{transform:scale(1.06) rotate(-2deg);box-shadow:0 12px 40px #00000038}.hero h1{font-size:2em;font-weight:800;margin-bottom:.5rem;letter-spacing:1px;animation:textSlideIn 1.1s .2s cubic-bezier(.25,.8,.25,1) backwards}.hero p{font-size:1.5em;font-weight:400;margin-top:.5rem;animation:textSlideIn 1.1s .4s cubic-bezier(.25,.8,.25,1) backwards}@keyframes textSlideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.program{margin-bottom:2.5rem;text-align:center;background:#f4f8fb;border-radius:12px;padding:1.5rem 1rem 2rem;box-shadow:0 2px 12px #0000000f;position:relative;animation:sectionFadeIn 1.1s cubic-bezier(.25,.8,.25,1)}.program h2{font-size:1.6em;color:#036;margin-bottom:.7em;display:flex;align-items:center;justify-content:center;gap:.5em}.program h2:before{content:"📄";font-size:1.1em}.program-btn{display:inline-block;background:#036;color:#fff;padding:.7rem 1.5rem;border-radius:6px;text-decoration:none;font-weight:600;margin-top:.5rem}.program-btn:hover{background:#0055a5}.register{text-align:center;margin-bottom:2rem;background:#f4f8fb;border-radius:12px;padding:1.2rem 1rem 1.5rem;box-shadow:0 2px 12px #0000000f;animation:sectionFadeIn 1.1s .3s cubic-bezier(.25,.8,.25,1) backwards}.register-btn{display:inline-block;background:#28a745;color:#fff;padding:.7rem 1.5rem;border-radius:6px;text-decoration:none;font-weight:600}.register-btn:hover{background:#218838}.social{text-align:center;margin-bottom:2.5rem;background:#f4f8fb;border-radius:12px;padding:1.2rem 1rem 1.5rem;box-shadow:0 2px 12px #0000000f}.social h3{font-size:1.3em;color:#036;margin-bottom:1em;display:flex;align-items:center;justify-content:center;gap:.5em}.social h3:before{content:"🤝";font-size:1.1em}.social-links{display:flex;justify-content:center;gap:1.5rem;margin-top:.5rem}.social-links a{font-size:1.5rem;color:#fff;background:linear-gradient(135deg,#036 60%,#0055a5);border-radius:50%;width:2.7rem;height:2.7rem;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 2px 8px #0000001a;transition:background .2s,transform .2s}.social-links a:hover{background:linear-gradient(135deg,#0055a5 60%,#036);color:gold;transform:scale(1.12) rotate(-8deg)}.contact-link{text-align:center}.contact-link a{color:#036;font-weight:600;text-decoration:underline}.contact-info{margin-top:2rem}.contact-info h2{margin-bottom:.5rem;color:#036}.contact-info ul{list-style:none;padding:0;margin-bottom:1.5rem}.contact-info li{margin-bottom:.3rem;font-size:1.1rem}.contact-grid{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin-top:2rem}.contact-card{background:#f4f8fb;border-radius:14px;box-shadow:0 2px 16px #00000014;padding:2rem 1.5rem 1.5rem;min-width:220px;max-width:320px;flex:1 1 220px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .25s,box-shadow .25s}.contact-card:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 8px 32px #00000021}.contact-card h2{color:#036;margin-bottom:1rem;font-size:1.3em}.contact-list{list-style:none;padding:0;margin:0;width:100%}.contact-list li{font-size:1.1em;margin-bottom:.7rem;display:flex;align-items:center;gap:.6em}.contact-list a{color:#036;text-decoration:none;font-weight:500;transition:color .2s}.contact-list a:hover{color:#0055a5;text-decoration:underline}.contact-container h1{font-size:2em;margin-bottom:.5em}@keyframes sectionFadeIn{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.program-btn,.register-btn{position:relative;overflow:hidden;z-index:1;transition:background .3s,color .3s,transform .2s}.program-btn:after,.register-btn:after{content:"";position:absolute;left:50%;top:50%;width:0;height:0;background:#ffffff2e;border-radius:50%;transform:translate(-50%,-50%);transition:width .4s cubic-bezier(.25,.8,.25,1),height .4s cubic-bezier(.25,.8,.25,1);z-index:-1}.program-btn:hover,.register-btn:hover{color:#036;background:#fff;transform:scale(1.06)}.program-btn:hover:after,.register-btn:hover:after{width:220%;height:500%}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@media (max-width: 800px){.contact-grid{flex-direction:column;align-items:center;gap:1.2rem}.contact-card{width:100%;max-width:95vw}}
