.language-selector{border:1px solid var(--color-border,#ccc);background-color:var(--color-bg,#fff);color:var(--color-text,#333);cursor:pointer;border-radius:6px;outline:none;padding:8px 12px;font-size:14px;font-weight:500;transition:border-color .2s}.language-selector:hover,.language-selector:focus{border-color:var(--color-primary,#0056b3)}.navbar{border-bottom:1px solid var(--color-border,#eaeaea);background-color:var(--color-surface,#fff);z-index:100;position:sticky;top:0}.navbar-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:16px 48px;display:flex}.navbar-logo{color:var(--color-text,#111);letter-spacing:-.5px;font-size:1.5rem;font-weight:700;text-decoration:none}.navbar-links{align-items:center;gap:32px;display:flex}.navbar-links a{color:var(--color-text-muted,#666);font-size:15px;font-weight:500;text-decoration:none;transition:color .2s}.navbar-links a:hover{color:var(--color-text,#111)}.navbar-actions{align-items:center;gap:20px;display:flex}.btn-login{border:1px solid var(--color-border,#ccc);color:var(--color-text,#333);background-color:#0000;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s}.btn-login:hover{background-color:var(--color-bg,#f5f5f5);border-color:var(--color-text-muted,#888)}.footer{border-top:1px solid var(--color-border,#eaeaea);background-color:var(--color-surface,#fff);margin-top:auto;padding:32px 48px}.footer-container{text-align:center;max-width:1200px;color:var(--color-text-muted,#666);margin:0 auto;font-size:14px}.btn{white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:8px;outline:none;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s ease-in-out;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-default{background-color:var(--color-primary,#007bff);color:#fff}.btn-default:hover{background-color:var(--color-primary-dark,#0056b3);transform:translateY(-1px)}.btn-outline{border-color:var(--color-border,#eaeaea);color:var(--color-text,#111);background-color:#0000}.btn-outline:hover{border-color:var(--color-text-muted,#888);background-color:#f9f9f9}.btn-ghost{color:var(--color-text,#111);background-color:#0000}.btn-ghost:hover{background-color:#0000000d}.btn-md{height:40px}.btn-sm{height:32px;padding:0 12px;font-size:12px}.btn-lg{height:48px;padding:0 24px;font-size:16px}.btn-active:active{filter:brightness(.9);transform:translateY(0)}.portfolio-section{background-color:var(--color-bg,#fff);padding:96px 0}.portfolio-container{max-width:1200px;margin:0 auto;padding:0 24px}.portfolio-header{flex-direction:column;gap:24px;margin-bottom:64px;display:flex}.portfolio-title-wrapper{max-width:600px}.portfolio-title{letter-spacing:-.025em;color:var(--color-text,#111);margin-bottom:16px;font-size:2.25rem;font-weight:700;line-height:1.1}.portfolio-subtitle{color:var(--color-text-muted,#666);font-size:1.125rem;line-height:1.6}.portfolio-header-btn{display:none}.portfolio-header-btn svg{width:16px;height:16px;margin-left:8px;transition:transform .2s}.portfolio-header-btn:hover svg{transform:translate(2px,-2px)}.portfolio-grid{grid-template-columns:1fr;gap:64px 32px;display:grid}.portfolio-card{cursor:pointer;flex-direction:column;display:flex}.portfolio-img-wrapper{background-color:var(--color-surface,#f5f5f5);aspect-ratio:4/3;border-radius:16px;margin-bottom:24px;transition:box-shadow .5s;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000000d}.portfolio-card:hover .portfolio-img-wrapper{box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.portfolio-img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .7s cubic-bezier(.25,1,.5,1)}.portfolio-card:hover .portfolio-img{transform:scale(1.05)}.portfolio-overlay{background-color:#0000;transition:background-color .5s;position:absolute;inset:0}.portfolio-card:hover .portfolio-overlay{background-color:#0000000d}.portfolio-info{flex-direction:column;align-items:flex-start;display:flex}.portfolio-tag{color:var(--color-primary,#007bff);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.875rem;font-weight:600}.portfolio-card-title{color:var(--color-text,#111);margin-bottom:12px;font-size:1.5rem;font-weight:700}.portfolio-link{color:var(--color-text-muted,#666);align-items:center;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .3s;display:inline-flex}.portfolio-card:hover .portfolio-link{color:var(--color-primary,#007bff)}.portfolio-link-icon{opacity:0;width:16px;height:16px;margin-left:4px;transition:all .3s;transform:translate(-8px)}.portfolio-card:hover .portfolio-link-icon{opacity:1;transform:translate(0)}.portfolio-mobile-btn{justify-content:center;margin-top:48px;display:flex}@media (width>=768px){.portfolio-section{padding:128px 0}.portfolio-container{padding:0 48px}.portfolio-header{flex-direction:row;justify-content:space-between;align-items:flex-end}.portfolio-title{font-size:3rem}.portfolio-header-btn{display:flex}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-mobile-btn{display:none}}.contact-page{max-width:600px;margin:0 auto;padding:80px 48px}.contact-title{color:var(--color-text,#111);margin-bottom:8px;font-size:2.5rem;font-weight:700}.contact-subtitle{color:var(--color-text-muted,#666);margin-bottom:48px;font-size:1.125rem;line-height:1.6}.contact-form{flex-direction:column;gap:24px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-label{color:var(--color-text,#111);font-size:14px;font-weight:600}.form-input,.form-textarea{border:1px solid var(--color-border,#eaeaea);background-color:var(--color-bg,#fff);width:100%;color:var(--color-text,#111);border-radius:8px;outline:none;padding:12px 16px;font-family:inherit;font-size:15px;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-textarea:focus{border-color:var(--color-primary,#007bff);box-shadow:0 0 0 3px #007bff1a}.form-textarea{resize:vertical;min-height:120px}.contact-success{text-align:center;background-color:#f0fdf4;border:1px solid #86efac;border-radius:16px;padding:40px 32px;animation:.5s fadeIn}.success-icon{color:#22c55e;margin-bottom:16px;font-size:3rem}.success-title{color:#166534;margin-bottom:8px;font-size:1.5rem;font-weight:700}.success-desc{color:#15803d;font-size:1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.contact-page{padding:60px 24px}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#fff;--color-surface:#f5f5f5;--color-border:#e0e0e0;--color-text:#1a1a1a;--color-text-muted:#666;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-danger:#dc2626;--color-success:#16a34a;--color-sidebar-bg:#1e293b;--color-sidebar-text:#cbd5e1;--color-sidebar-active:#2563eb;--sidebar-width:240px}body{color:var(--color-text);background:var(--color-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.6}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;background:var(--color-primary);color:#fff;border:none;border-radius:6px;padding:8px 16px;font-family:inherit;font-size:14px;transition:background .2s}button:hover{background:var(--color-primary-hover)}h1{font-size:2rem;font-weight:700}h2{font-size:1.5rem;font-weight:600}h3{font-size:1.25rem;font-weight:600}
