.btn{display:inline-flex;align-items:center;gap:var(--space-sm);padding:.75rem 1.75rem;font-family:var(--font-body);font-size:.9375rem;font-weight:600;letter-spacing:.03em;border-radius:var(--radius-md);border:none;cursor:pointer;transition:var(--ease);text-decoration:none;white-space:nowrap;position:relative;overflow:hidden}.btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff1a;opacity:0;transition:var(--ease-fast)}.btn:hover:after{opacity:1}.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-dark));color:var(--navy)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-gold);color:var(--navy)}.btn-outline{background:transparent;color:var(--gold);border:1.5px solid var(--gold)}.btn-outline:hover{background:var(--gold-glow);transform:translateY(-2px);color:var(--gold-light)}.btn-ghost{background:var(--glass);color:var(--cream);border:1.5px solid var(--glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-ghost:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}.btn-lg{padding:1rem 2.5rem;font-size:1.0625rem}.btn-sm{padding:.5rem 1.25rem;font-size:.875rem}.card{background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:var(--radius-lg);overflow:hidden;transition:var(--ease)}.card:hover{border-color:var(--gold-dark);transform:translateY(-6px);box-shadow:var(--shadow-md)}.card-glass{background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg)}.card-img{width:100%;aspect-ratio:16/9;object-fit:cover;transition:var(--ease-slow)}.card:hover .card-img{transform:scale(1.05)}.card-body{padding:var(--space-lg)}.card-tag{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:var(--space-sm)}.service-card{padding:var(--space-lg) var(--space-lg) var(--space-xl);background:var(--navy-mid);border:1px solid var(--navy-border);border-radius:var(--radius-lg);transition:var(--ease);position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-light));transform:scaleX(0);transition:var(--ease)}.service-card:hover{border-color:var(--gold-dark);transform:translateY(-8px);box-shadow:0 20px 60px #0006,var(--shadow-gold)}.service-card:hover:before{transform:scaleX(1)}.service-icon{width:60px;height:60px;background:var(--gold-glow);border:1px solid rgba(201,168,76,.2);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-lg);font-size:1.5rem;color:var(--gold);transition:var(--ease)}.service-card:hover .service-icon{background:var(--gold);color:var(--navy);border-color:var(--gold)}.project-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--navy-mid)}.project-card .project-img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:var(--ease-slow)}.project-card:hover .project-img{transform:scale(1.08)}.project-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(13,17,23,.95) 0%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-lg);opacity:1}.project-badge{position:absolute;top:var(--space-md);right:var(--space-md);padding:.3rem .75rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.badge-ongoing{background:#2ecc7133;color:#2ecc71;border:1px solid #2ecc71}.badge-completed{background:#c9a84c33;color:var(--gold);border:1px solid var(--gold)}.badge-upcoming{background:#3498db33;color:#3498db;border:1px solid #3498db}.form-group{margin-bottom:var(--space-lg)}.form-label{display:block;margin-bottom:var(--space-xs);font-size:.875rem;font-weight:500;color:var(--muted-light)}.form-control{width:100%;padding:.75rem 1rem;background:var(--navy-light);border:1.5px solid var(--navy-border);border-radius:var(--radius-md);color:var(--cream);font-family:var(--font-body);font-size:.9375rem;transition:var(--ease-fast);outline:none}.form-control:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow)}.form-control::placeholder{color:var(--muted)}textarea.form-control{resize:vertical;min-height:130px}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%238892a4' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.alert{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);border-left:4px solid;margin-bottom:var(--space-md)}.alert-success{background:#2ecc711a;border-color:#2ecc71;color:#2ecc71}.alert-danger{background:#e553531a;border-color:var(--danger);color:var(--danger)}.alert-info{background:#3498db1a;border-color:#3498db;color:#3498db}.page-banner{padding:calc(var(--space-3xl) + 80px) 0 var(--space-3xl);background:linear-gradient(to bottom,#0d1117b3,#0d111780),var(--navy-mid);background-size:cover;background-position:center;text-align:center;position:relative}.page-banner:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.page-banner h1{margin-bottom:var(--space-md)}.breadcrumb{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);font-size:.875rem;color:var(--muted)}.breadcrumb a{color:var(--gold)}.breadcrumb-sep{color:var(--muted)}.pagination{display:flex;justify-content:center;gap:var(--space-sm);margin-top:var(--space-2xl)}.page-link{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--navy-mid);border:1px solid var(--navy-border);color:var(--muted-light);font-size:.875rem;transition:var(--ease-fast)}.page-link:hover,.page-link.active{background:var(--gold);border-color:var(--gold);color:var(--navy)}.stats-section{background:var(--navy);border-top:1px solid rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.03);padding:2rem 0}.stats-section:before{display:none}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;position:relative}.stat-item{padding:.5rem 1rem;position:relative;border-right:none}.stat-item:not(:last-child):after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px;height:0%;background:linear-gradient(to bottom,transparent,rgba(201,168,76,.4),transparent);transition:height 1.2s cubic-bezier(.2,.8,.2,1)}.stat-item.is-visible:not(:last-child):after{height:70%;transition-delay:.4s}.stat-icon{width:32px;height:32px;margin:0 auto 1.25rem;color:var(--gold);opacity:0;transform:translateY(10px);transition:all .6s cubic-bezier(.2,.8,.2,1)}.stat-item.is-visible .stat-icon{opacity:1;transform:translateY(0);transition-delay:.2s}.stat-icon svg{width:100%;height:100%;display:block;filter:drop-shadow(0 2px 8px rgba(201,168,76,.25))}.stat-icon svg path,.stat-icon svg rect,.stat-icon svg line,.stat-icon svg circle,.stat-icon svg polyline{stroke-dasharray:1;stroke-dashoffset:1}.stat-item.is-visible .stat-icon svg path,.stat-item.is-visible .stat-icon svg rect,.stat-item.is-visible .stat-icon svg line,.stat-item.is-visible .stat-icon svg circle,.stat-item.is-visible .stat-icon svg polyline{animation:drawStatIcon 2.5s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:.4s}@keyframes drawStatIcon{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.stat-number{font-family:var(--font-body);font-size:clamp(2rem,3.5vw,3rem);font-weight:300;color:var(--gold);line-height:1;margin-bottom:1.25rem;letter-spacing:-.02em;position:relative;display:inline-block}.stat-number:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:0%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transition:width .8s cubic-bezier(.2,.8,.2,1)}.stat-item.is-visible .stat-number:after{width:80%;transition-delay:.6s}.stat-label{font-family:var(--font-body);font-size:.65rem;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:.3em;display:block}
