:root{--primary-color:#1d1579;--secondary-color:#0fd4c9;--accent-color:#633fff;--third-color:#119486;--bg-color:#f8f9fa;--text-color:#333;--text-light:#666;--border-color:rgba(0,0,0,.06);--card-bg:#fff;--modal-bg:#fff;--input-bg:#fff;--shadow-color:rgba(0,0,0,.1);--border-radius:.5rem;--font-size-base:16px;--max-width:1200px;--transition-speed:.3s;--header-height:120px}[data-theme=dark]{--primary-color:#58adf5;--secondary-color:#0fd4c9;--accent-color:#51e3ed;--third-color:#119486;--bg-color:#0f0f23;--text-color:#e5e5e5;--text-light:#a0a0a0;--border-color:hsla(0,0%,100%,.1);--card-bg:#1a1a2e;--modal-bg:#1a1a2e;--input-bg:#16213e;--shadow-color:rgba(0,0,0,.3)}@media(max-width:768px){:root{--header-height:90px}}@media(max-width:480px){:root{--header-height:70px}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-color);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;transition:background-color var(--transition-speed) ease,color var(--transition-speed) ease}.container{margin:0 auto;max-width:var(--max-width);padding:0 1rem}.section{padding:4rem 0}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}html{transition:background-color var(--transition-speed) ease,color var(--transition-speed) ease}button,input,select,textarea{transition:background-color var(--transition-speed) ease,border-color var(--transition-speed) ease,color var(--transition-speed) ease,box-shadow var(--transition-speed) ease}.card,.modal,.portfolio-item,.service-card{transition:background-color var(--transition-speed) ease,border-color var(--transition-speed) ease,box-shadow var(--transition-speed) ease}.skip-link{border-radius:4px;color:#fff;left:6px;padding:8px;position:absolute;text-decoration:none;top:-40px;transition:top .3s ease;z-index:1000}.skip-link:focus{top:6px}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.btn:focus,a:focus,button:focus,input:focus,select:focus,textarea:focus{outline:none}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:0 0 0 3px #58adf580;outline:2px solid var(--primary-color);outline-offset:2px}
