*,:before,:after{box-sizing:border-box}body{color:#1f2937;-webkit-font-smoothing:antialiased;background:#f8fafc;margin:0;font-family:Inter,system-ui,Segoe UI,Roboto,sans-serif;font-size:14px}#root{flex-direction:column;width:100%;min-height:100vh;display:flex}button:focus-visible{outline-offset:2px;outline:2px solid #3b82f6}input:focus,select:focus,textarea:focus{outline:2px solid #3b82f6;border-color:#3b82f6!important}@keyframes spin{to{transform:rotate(360deg)}}.typing-dot{background:#94a3b8;border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite blink}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (width>=901px){.mobile-only{display:none!important}.os-sidebar{position:relative!important;transform:none!important}.sidebar-overlay{display:none!important}}@media (width<=900px){.desktop-only{display:none!important}.os-sidebar{z-index:100;transition:transform .24s cubic-bezier(.4,0,.2,1);top:56px;bottom:0;left:0;transform:translate(-100%);box-shadow:4px 0 28px #00000024;position:fixed!important}.os-sidebar.sidebar-open{transform:translate(0)!important}.sidebar-overlay{z-index:99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000061;display:none;position:fixed;inset:56px 0 0}.sidebar-overlay.sidebar-overlay-visible{display:block}}@keyframes waveHand{0%{transform:rotate(0)scale(1)}15%{transform:rotate(-18deg)scale(1.08)}30%{transform:rotate(12deg)scale(1.08)}45%{transform:rotate(-10deg)scale(1.04)}60%{transform:rotate(6deg)scale(1.02)}75%{transform:rotate(-3deg)scale(1)}to{transform:rotate(0)scale(1)}}.wave-icon{transform-origin:bottom;align-items:center;animation:1.8s ease-in-out .25s both waveHand;display:inline-flex}.brief-md h2{color:#0f1e50;margin:1rem 0 .35rem;font-size:.98rem;font-weight:800}.brief-md h3{color:#0f1e50;margin:.75rem 0 .25rem;font-size:.88rem;font-weight:700}.brief-md p{margin:.4rem 0;line-height:1.6}.brief-md ul{margin:.35rem 0 .5rem 1.15rem;padding:0}.brief-md li{margin:.2rem 0;line-height:1.5}.brief-md strong{color:#7b1d2e}.brief-md a{color:#2563eb}.brief-md hr{border:none;border-top:1px solid #e5e7eb;margin:.7rem 0}.brief-md h2{color:#0f1e50;text-transform:uppercase;letter-spacing:.05em;border-left:3px solid #7b1d2e;margin:1.15rem 0 .45rem;padding:1px 0 1px 9px;font-size:.8rem;font-weight:800}.brief-md h2:first-child{margin-top:.1rem}.brief-md p{color:#334155;margin:.3rem 0 .65rem;line-height:1.62}.brief-md ul{margin:.15rem 0 .75rem;padding:0;list-style:none}.brief-md li{color:#334155;margin:.3rem 0;padding-left:1.05rem;line-height:1.5;position:relative}.brief-md li:before{content:"";background:#d4a023;border-radius:50%;width:5px;height:5px;position:absolute;top:.55em;left:2px}.brief-md strong{color:#7b1d2e;font-weight:700}.mobile-only{display:none!important}.desktop-only{display:flex!important}.sidebar-overlay{display:none}.wave-icon{transform-origin:bottom;animation:1.8s ease-in-out infinite waveMotion}@keyframes waveMotion{0%,to{transform:rotate(0)}20%{transform:rotate(12deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(8deg)}}.nav-item-btn:hover{background:#f8fafc!important}@media (width<=900px){.mobile-only{display:flex!important}.desktop-only{display:none!important}.sidebar-overlay{display:none}.sidebar-overlay-visible{z-index:90;background:#0f172a73;display:block;position:fixed;inset:56px 0 0}.os-sidebar{z-index:100;transition:transform .22s;position:fixed;top:56px;bottom:0;left:0;transform:translate(-105%);box-shadow:16px 0 40px #0f172a2e}.os-sidebar.sidebar-open{transform:translate(0)}}@media (width>=901px){.os-sidebar{position:relative;transform:none!important}}@media (width<=768px){.section-page-header{flex-direction:column!important;align-items:flex-start!important}.section-outer{padding:1rem 1rem 2rem!important}.project-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none}.project-tabs::-webkit-scrollbar{display:none}table{min-width:560px}.table-scroll-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (width<=480px){.section-outer{padding:.75rem .75rem 2rem!important}}
