*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--primary: #6366f1;--primary-dark: #4f46e5;--primary-light: #eef2ff;--primary-glow: rgba(99, 102, 241, .15);--success: #10b981;--success-light: #d1fae5;--danger: #ef4444;--danger-light: #fee2e2;--warning: #f59e0b;--warning-light: #fef3c7;--info: #06b6d4;--info-light: #cffafe;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.07), 0 2px 4px -2px rgba(0,0,0,.05);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.08), 0 4px 6px -4px rgba(0,0,0,.04);--shadow-xl: 0 20px 25px -5px rgba(0,0,0,.08), 0 8px 10px -6px rgba(0,0,0,.04);--transition: all .2s cubic-bezier(.4, 0, .2, 1)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f0f2f5;color:var(--gray-800);line-height:1.6;-webkit-font-smoothing:antialiased}.app-layout{display:flex;min-height:100vh}.sidebar{width:260px;background:linear-gradient(180deg,#0f172a,#1e293b);color:#fff;padding:0;display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100;border-right:1px solid rgba(255,255,255,.05)}.sidebar-brand{padding:24px 24px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-brand h2{font-size:22px;font-weight:800;background:linear-gradient(135deg,#818cf8,#6366f1,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.sidebar-brand small{color:var(--gray-400);font-size:12px;display:block;margin-top:2px}.sidebar-nav{flex:1;list-style:none;padding:12px}.sidebar-nav li{margin-bottom:2px}.sidebar-nav a{display:flex;align-items:center;gap:12px;padding:11px 16px;color:var(--gray-400);text-decoration:none;font-size:14px;font-weight:500;border-radius:10px;transition:var(--transition)}.sidebar-nav a:hover{background:#ffffff0f;color:#e2e8f0}.sidebar-nav a.active{background:linear-gradient(135deg,#6366f133,#6366f11a);color:#a5b4fc;font-weight:600;box-shadow:inset 0 0 0 1px #6366f133}.sidebar-footer{padding:16px 20px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-footer button{width:100%;padding:9px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:var(--gray-400);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:500;transition:var(--transition)}.sidebar-footer button:hover{background:#ffffff1a;color:#fff}.main-content{flex:1;margin-left:260px;padding:28px 32px;min-height:100vh}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.page-header h1{font-size:26px;font-weight:800;color:var(--gray-900);letter-spacing:-.5px}.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin-bottom:20px;border:1px solid rgba(0,0,0,.04);transition:var(--transition)}.card:hover{box-shadow:var(--shadow-md)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px;border:1px solid rgba(0,0,0,.04);position:relative;overflow:hidden;transition:var(--transition)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),#a78bfa);opacity:0;transition:opacity .2s}.stat-card:hover:before{opacity:1}.stat-card .icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:12px}.stat-card .label{font-size:12px;color:var(--gray-500);text-transform:uppercase;letter-spacing:.8px;font-weight:600}.stat-card .value{font-size:28px;font-weight:800;color:var(--gray-900);margin-top:4px;letter-spacing:-.5px}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);text-decoration:none;letter-spacing:.01em}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 2px 4px #6366f14d}.btn-primary:hover{background:linear-gradient(135deg,var(--primary-dark),#4338ca);box-shadow:0 4px 12px #6366f166;transform:translateY(-1px)}.btn-success{background:linear-gradient(135deg,var(--success),#059669);color:#fff;box-shadow:0 2px 4px #10b9814d}.btn-success:hover{box-shadow:0 4px 12px #10b98166;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,var(--danger),#dc2626);color:#fff}.btn-danger:hover{box-shadow:0 4px 12px #ef44444d}.btn-outline{background:#fff;border:1px solid var(--gray-200);color:var(--gray-700);box-shadow:var(--shadow)}.btn-outline:hover{background:var(--gray-50);border-color:var(--gray-300);box-shadow:var(--shadow-md)}.btn-sm{padding:5px 12px;font-size:12px;border-radius:6px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:600;color:var(--gray-700);margin-bottom:5px;letter-spacing:.01em}.form-control{width:100%;padding:9px 14px;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:14px;transition:var(--transition);background:#fff}.form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.table-container{overflow-x:auto;border-radius:var(--radius-sm)}table{width:100%;border-collapse:collapse}table th,table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--gray-100);font-size:13px}table th{background:var(--gray-50);font-weight:700;color:var(--gray-500);text-transform:uppercase;font-size:11px;letter-spacing:.6px}table tr{transition:background .15s}table tbody tr:hover{background:#f8faff}.excel-grid{border:1px solid var(--gray-300);border-radius:var(--radius);overflow:hidden}.excel-grid table{margin:0}.excel-grid th{background:var(--gray-100);border-right:1px solid var(--gray-200);position:sticky;top:0;z-index:1}.excel-grid td{border-right:1px solid var(--gray-200);padding:0}.excel-grid td input,.excel-grid td select{width:100%;padding:8px 10px;border:none;background:transparent;font-size:13px;outline:none}.excel-grid td input:focus,.excel-grid td select:focus{background:var(--primary-light)}.excel-grid td.amount{background:var(--gray-50);padding:8px 10px;font-size:13px;font-weight:500;text-align:right}.excel-grid td .delete-row{background:none;border:none;color:var(--danger);cursor:pointer;padding:8px;font-size:16px}.section-header{background:var(--primary-light)!important;color:var(--primary-dark);font-weight:600;padding:10px 12px!important;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.tabs{display:flex;gap:4px;border-bottom:2px solid var(--gray-200);margin-bottom:20px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{padding:10px 20px;background:none;border:none;font-size:13px;font-weight:500;cursor:pointer;color:var(--gray-500);border-bottom:2.5px solid transparent;margin-bottom:-2px;transition:var(--transition);white-space:nowrap;border-radius:6px 6px 0 0}.tab:hover{color:var(--gray-700);background:var(--gray-50)}.tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:700;background:var(--primary-light)}.budget-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:16px;background:var(--gray-50);border-radius:var(--radius);margin-top:20px}.summary-item{text-align:center}.summary-item .label{font-size:11px;text-transform:uppercase;color:var(--gray-500);letter-spacing:.5px}.summary-item .value{font-size:18px;font-weight:700;color:var(--gray-900)}.summary-item .value.highlight{color:var(--primary)}.wo-details-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:1px solid #c7d2fe;border-radius:var(--radius);margin-top:10px;gap:12px}.wo-details-bar .wo-info{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;font-weight:600}.wo-details-bar .wo-tag{background:#fffc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;color:var(--gray-700);border:1px solid rgba(99,102,241,.15)}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f172a,#1e1b4b,#312e81)}.login-card{background:#fffffff7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:44px;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:420px;border:1px solid rgba(255,255,255,.2)}.login-card h1{font-size:26px;font-weight:800;margin-bottom:4px;color:var(--gray-900);letter-spacing:-.5px}.login-card p{color:var(--gray-500);margin-bottom:28px;font-size:14px}.login-card .btn{width:100%;justify-content:center;padding:12px;font-size:15px;border-radius:var(--radius-sm)}.error-message{background:#fef2f2;border:1px solid #fecaca;color:var(--danger);padding:10px 14px;border-radius:var(--radius);margin-bottom:16px;font-size:14px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal{background:#fff;border-radius:var(--radius-lg);padding:28px;width:90%;max-width:560px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideUp .25s ease}.modal h2{font-size:20px;font-weight:700;margin-bottom:20px;color:var(--gray-900)}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.badge-draft{background:var(--warning-light);color:#b45309}.badge-active{background:var(--success-light);color:#065f46}.badge-completed{background:var(--primary-light);color:var(--primary-dark)}.badge-cancelled{background:var(--danger-light);color:#b91c1c}.badge-admin{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.badge-user{background:var(--gray-100);color:var(--gray-600)}.export-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:100;min-width:180px;overflow:hidden;animation:slideUp .15s ease}.export-dropdown button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:11px 16px;border:none;background:none;font-size:13px;font-weight:500;cursor:pointer;color:var(--gray-700);transition:background .15s}.export-dropdown button:hover{background:var(--primary-light);color:var(--primary-dark)}.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.chart-card{padding:24px;border:1px solid rgba(0,0,0,.04)}.chart-card h3{margin:0 0 16px;font-size:15px;font-weight:700;color:var(--gray-800);letter-spacing:-.2px}@media (max-width: 768px){.charts-grid{grid-template-columns:1fr}}.type-breakdown-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.type-breakdown-item{padding:14px;background:#f8fafc;border-radius:var(--radius-sm);border:1px solid var(--gray-200);transition:var(--transition)}.type-breakdown-item:hover{background:#fff;box-shadow:var(--shadow);border-color:var(--gray-300)}.type-breakdown-item .type-name{font-weight:600;font-size:14px;color:#1e293b;margin-bottom:4px}.type-breakdown-item .type-stats{display:flex;justify-content:space-between;font-size:12px;color:#6b7280;margin-bottom:6px}.type-breakdown-item .type-amount{font-weight:600;color:#1e40af}.type-bar{height:4px;background:#e2e8f0;border-radius:2px;overflow:hidden}.type-bar-fill{height:100%;background:linear-gradient(90deg,#4f46e5,#818cf8);border-radius:2px;transition:width .3s}.rate-analysis-card{margin-top:16px;padding:0!important;overflow:hidden}.ra-header{padding:16px 20px;border-bottom:1px solid #e5e7eb}.ra-header h3{margin:0 0 8px;font-size:18px}.ra-meta{display:flex;gap:20px;font-size:13px;color:#6b7280}.ra-table-wrap{overflow-x:auto}.ra-table{width:100%;border-collapse:collapse;font-size:13px}.ra-table th{background:#f1f5f9;font-weight:600;text-align:left;padding:8px 10px;border-bottom:2px solid #cbd5e1;white-space:nowrap;font-size:12px;color:#475569}.ra-table td{padding:5px 8px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.ra-table input{width:100%;padding:4px 6px;border:1px solid #e2e8f0;border-radius:4px;font-size:13px;background:#fff}.ra-table input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #4f46e51a}.ra-table input[type=number]{text-align:right}.ra-section-header td{background:#e0e7ff;font-weight:700;color:#3730a3;padding:8px 10px;font-size:13px}.ra-item-row td{background:#fff}.ra-item-row:hover td{background:#f8fafc}.ra-calc-row td{background:#fafbfc;color:#374151}.ra-total-row td{background:#eff6ff;border-top:1px solid #bfdbfe;border-bottom:1px solid #bfdbfe}.ra-total-row.ra-highlight td{background:#dbeafe;border-top:2px solid #3b82f6;border-bottom:2px solid #3b82f6}.ra-info-row td{background:#f0fdf4;border-top:1px solid #bbf7d0;border-bottom:1px solid #bbf7d0}.ra-walkaway-row td{background:#fef3c7;border-top:2px solid #f59e0b;border-bottom:2px solid #f59e0b;font-size:14px}.ra-sr{text-align:center;color:#9ca3af;font-size:12px}.ra-pct-cell{text-align:center;color:#6b7280;font-size:12px}.ra-amount{text-align:right;font-variant-numeric:tabular-nums}.ra-pct-input{width:54px!important;display:inline-block;text-align:right;padding:3px 4px!important;font-size:12px!important}.ra-input{width:90px!important;text-align:right}.ra-add-btn{background:var(--primary);color:#fff;border:none;border-radius:4px;width:22px;height:22px;font-size:14px;cursor:pointer;line-height:1;display:inline-flex;align-items:center;justify-content:center}.ra-add-btn:hover{background:var(--primary-dark)}.gb-site{font-family:Segoe UI,system-ui,-apple-system,sans-serif;color:#2d3748;background:#fff;line-height:1.7}.gb-site a{text-decoration:none;color:inherit}.gb-site ul{list-style:none}.gb-container{max-width:1200px;margin:0 auto;padding:0 24px}.gb-navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fffffff7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #e2e8f0}.gb-navbar-inner{display:flex;align-items:center;justify-content:space-between;height:72px}.gb-logo{display:flex;align-items:center;gap:12px;font-size:1.1rem;color:#1a365d;text-decoration:none}.gb-logo-img{height:48px;width:48px;object-fit:contain;border-radius:10px;background:#fff;padding:2px;box-shadow:0 2px 8px #1a365d1f}.gb-logo-fallback{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;font-size:1.6rem;background:linear-gradient(135deg,#1a365d,#2b6cb0);color:#fff;box-shadow:0 2px 8px #1a365d2e}.gb-logo-text{display:flex;flex-direction:column;line-height:1.2}.gb-logo-text strong{font-size:1.25rem;font-weight:800;letter-spacing:-.3px}.gb-logo-text small{font-size:.7rem;text-transform:uppercase;letter-spacing:2px;color:#e53e3e;font-weight:600}.gb-nav-links{display:flex;align-items:center;gap:8px}.gb-nav-links a{padding:8px 16px;border-radius:8px;font-weight:500;font-size:.95rem;color:#2d3748;transition:.3s ease}.gb-nav-links a:hover{color:#1a365d;background:#f7fafc}.gb-nav-links a.active{color:#1a365d;background:#edf2f7;font-weight:600}.gb-nav-login{color:#1a365d!important;font-weight:600!important;font-size:.9rem!important}.gb-nav-cta{background:#e53e3e!important;color:#fff!important;padding:10px 24px!important;border-radius:50px!important;font-weight:600!important}.gb-nav-cta:hover{background:#c53030!important}.gb-menu-btn{display:none;background:none;border:none;cursor:pointer;width:32px;height:32px;position:relative}.gb-bar,.gb-bar:before,.gb-bar:after{display:block;width:24px;height:2px;background:#2d3748;border-radius:2px;transition:.3s ease}.gb-bar:before,.gb-bar:after{content:"";position:absolute}.gb-bar:before{top:8px}.gb-bar:after{bottom:8px}.gb-bar.open{background:transparent}.gb-bar.open:before{top:50%;transform:rotate(45deg)}.gb-bar.open:after{bottom:auto;top:50%;transform:rotate(-45deg)}.gb-hero{position:relative;min-height:90vh;display:flex;align-items:center;background:linear-gradient(135deg,#0f2440,#1a365d,#2b4c7e);overflow:hidden;margin-top:72px}.gb-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cpath d='M0 0h40v40H0zM40 40h40v40H40z' fill='rgba(255,255,255,0.02)'/%3E%3C/svg%3E")}.gb-hero-content{position:relative;z-index:2;max-width:700px;color:#fff;padding:60px 0}.gb-hero-badge{display:inline-block;background:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:50px;padding:6px 20px;font-size:.85rem;font-weight:500;margin-bottom:24px;letter-spacing:1px}.gb-hero-content h1{font-size:3.2rem;font-weight:800;line-height:1.15;margin-bottom:20px}.gb-highlight{color:#d69e2e}.gb-hero-content p{font-size:1.15rem;color:#ffffffd9;margin-bottom:36px;line-height:1.8}.gb-hero-btns{display:flex;gap:16px;flex-wrap:wrap}.gb-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;border-radius:50px;font-weight:600;font-size:1rem;cursor:pointer;border:2px solid transparent;transition:.3s ease;text-decoration:none;color:inherit}.gb-btn-primary,a.gb-btn-primary{background:#e53e3e;color:#fff;border-color:#e53e3e}.gb-btn-primary:hover,a.gb-btn-primary:hover{background:#c53030;border-color:#c53030;color:#fff;transform:translateY(-2px)}.gb-btn-outline,a.gb-btn-outline{background:transparent;color:#fff;border-color:#fff6}.gb-btn-outline:hover,a.gb-btn-outline:hover{background:#ffffff1a;border-color:#fff;color:#fff}.gb-btn-outline-dark{background:transparent;color:#1a365d;border-color:#1a365d}.gb-btn-outline-dark:hover{background:#1a365d;color:#fff}.gb-btn-lg{padding:16px 40px;font-size:1.05rem}.gb-full-width{width:100%;justify-content:center}.gb-stats-bar{background:#fff;padding:40px 0;border-bottom:1px solid #e2e8f0;margin-top:-40px;position:relative;z-index:5;border-radius:12px 12px 0 0}.gb-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center}.gb-stat-number{display:block;font-size:2.5rem;font-weight:800;color:#1a365d}.gb-stat-label{font-size:.9rem;color:#718096;font-weight:500}.gb-section{padding:80px 0}.gb-section-gray{background:#f7fafc}.gb-section-dark{background:#1a202c;color:#fff}.gb-section-header{text-align:center;margin-bottom:48px}.gb-section-header.light h2{color:#fff}.gb-section-header.light p{color:#ffffffb3}.gb-section-tag{display:inline-block;background:#e53e3e1a;color:#e53e3e;padding:4px 16px;border-radius:50px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px}.gb-section-header h2,.gb-section h2{font-size:2.2rem;font-weight:800;color:#1a365d;margin-bottom:12px}.gb-section-dark .gb-section-header h2{color:#fff}.gb-section-header p{font-size:1.1rem;color:#718096;max-width:600px;margin:0 auto}.gb-section-cta{text-align:center;margin-top:40px}.gb-page-header{background:linear-gradient(135deg,#0f2440,#1a365d);padding:140px 0 60px;color:#fff;text-align:center;margin-top:72px}.gb-page-header h1{font-size:2.8rem;font-weight:800;margin-bottom:12px}.gb-page-header p{font-size:1.1rem;color:#fffc;max-width:600px;margin:0 auto}.gb-about-preview{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.gb-about-text h2{margin-bottom:20px}.gb-about-text p{margin-bottom:16px;color:#718096}.gb-about-text .gb-btn{margin-top:16px}.gb-img-placeholder{background:linear-gradient(135deg,#edf2f7,#e2e8f0);border-radius:12px;height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:1rem;color:#718096;border:2px dashed #e2e8f0}.gb-img-placeholder span{font-size:4rem}.gb-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gb-service-card{background:#fff;border-radius:12px;padding:32px;border:1px solid #e2e8f0;transition:.3s ease}.gb-service-card:hover{box-shadow:0 12px 40px #0000001f;transform:translateY(-4px);border-color:#e53e3e}.gb-service-icon{font-size:2.5rem;display:block;margin-bottom:16px}.gb-service-card h3{font-size:1.2rem;color:#1a365d;margin-bottom:10px}.gb-service-card p{color:#718096;font-size:.95rem}.gb-service-detail{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding:48px 0;border-bottom:1px solid #e2e8f0}.gb-service-detail:last-child{border-bottom:none}.gb-service-detail.reverse{direction:rtl}.gb-service-detail.reverse>*{direction:ltr}.gb-service-icon-lg{font-size:3rem;display:block;margin-bottom:12px}.gb-service-detail-text h2{font-size:1.8rem;margin-bottom:16px}.gb-service-detail-text p{color:#718096;margin-bottom:20px}.gb-feature-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gb-feature-list li{font-size:.95rem;color:#2d3748;padding:4px 0}.gb-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gb-process-card{background:#fff;border-radius:12px;padding:32px;text-align:center;border:1px solid #e2e8f0}.gb-process-step{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#e53e3e;color:#fff;font-size:1.3rem;font-weight:800;margin-bottom:16px}.gb-process-card h3{color:#1a365d;margin-bottom:8px}.gb-process-card p{color:#718096;font-size:.95rem}.gb-projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gb-project-card{background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;transition:.3s ease}.gb-project-card:hover{box-shadow:0 12px 40px #0000001f;transform:translateY(-4px)}.gb-project-img{height:200px;background:linear-gradient(135deg,#1a365d,#2b4c7e);display:flex;align-items:center;justify-content:center;font-size:3rem}.gb-project-img.lg{height:220px}.gb-project-info{padding:20px}.gb-project-type{display:inline-block;background:#e53e3e1a;color:#e53e3e;padding:2px 12px;border-radius:50px;font-size:.8rem;font-weight:600}.gb-project-info h3{margin:10px 0 8px;font-size:1.1rem;color:#1a365d}.gb-project-status{display:inline-block;padding:2px 12px;border-radius:50px;font-size:.8rem;font-weight:600}.gb-project-status.completed{background:#c6f6d5;color:#22543d}.gb-project-status.progress{background:#fefcbf;color:#744210}.gb-filter-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:40px}.gb-filter-btn{padding:10px 24px;border:2px solid #e2e8f0;border-radius:50px;background:#fff;color:#2d3748;font-weight:500;cursor:pointer;transition:.3s ease}.gb-filter-btn:hover{border-color:#1a365d;color:#1a365d}.gb-filter-btn.active{background:#1a365d;color:#fff;border-color:#1a365d}.gb-projects-grid-full{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gb-project-card-full{background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;transition:.3s ease}.gb-project-card-full:hover{box-shadow:0 12px 40px #0000001f;transform:translateY(-4px)}.gb-project-details{padding:20px}.gb-project-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.gb-project-details h3{font-size:1.15rem;color:#1a365d;margin-bottom:8px}.gb-project-details p{font-size:.9rem;color:#718096;margin-bottom:12px}.gb-project-specs{display:flex;gap:16px;flex-wrap:wrap;font-size:.85rem;color:#718096}.gb-testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gb-testimonial-card{background:#ffffff14;border-radius:12px;padding:32px;border:1px solid rgba(255,255,255,.1)}.gb-testimonial-text{font-size:1rem;font-style:italic;color:#ffffffd9;margin-bottom:20px;line-height:1.7}.gb-testimonial-author{display:flex;align-items:center;gap:12px}.gb-author-avatar{width:44px;height:44px;border-radius:50%;background:#e53e3e;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem}.gb-testimonial-author strong{display:block;color:#fff}.gb-testimonial-author span{font-size:.85rem;color:#fff9}.gb-mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.gb-mission-card{background:#fff;border-radius:12px;padding:40px;border:1px solid #e2e8f0;box-shadow:0 4px 24px #00000014}.gb-mission-card h3{font-size:1.4rem;margin-bottom:16px;color:#1a365d}.gb-mission-card p{color:#718096;line-height:1.8}.gb-timeline{position:relative;max-width:700px;margin:0 auto;padding:20px 0}.gb-timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:3px;background:#e2e8f0;transform:translate(-50%)}.gb-timeline-item{position:relative;padding:16px 0;display:flex}.gb-timeline-item.left{justify-content:flex-start;padding-right:52%}.gb-timeline-item.right{justify-content:flex-end;padding-left:52%}.gb-timeline-dot{position:absolute;left:50%;top:24px;width:16px;height:16px;border-radius:50%;background:#e53e3e;border:3px solid #f7fafc;transform:translate(-50%);z-index:2}.gb-timeline-content{background:#fff;border-radius:8px;padding:16px 20px;border:1px solid #e2e8f0;box-shadow:0 4px 24px #00000014}.gb-timeline-year{display:inline-block;background:#1a365d;color:#fff;padding:2px 12px;border-radius:50px;font-size:.85rem;font-weight:700;margin-bottom:6px}.gb-timeline-content p{font-size:.95rem;color:#2d3748}.gb-team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.gb-team-card{text-align:center;padding:32px 20px;background:#fff;border-radius:12px;border:1px solid #e2e8f0;transition:.3s ease}.gb-team-card:hover{box-shadow:0 12px 40px #0000001f;transform:translateY(-4px)}.gb-team-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#1a365d,#2b4c7e);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:1.8rem;font-weight:700}.gb-team-card h3{font-size:1.1rem;color:#1a365d;margin-bottom:4px}.gb-team-card p{font-size:.9rem;color:#718096}.gb-contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:48px}.gb-contact-info h2{color:#1a365d;margin-bottom:12px}.gb-contact-info>p{color:#718096;margin-bottom:32px}.gb-contact-item{display:flex;gap:16px;margin-bottom:24px}.gb-contact-icon{font-size:1.5rem;flex-shrink:0}.gb-contact-item h4{color:#1a365d;margin-bottom:4px}.gb-contact-item p{font-size:.95rem;color:#718096}.gb-contact-form-wrapper{background:#fff;border-radius:12px;padding:40px;border:1px solid #e2e8f0;box-shadow:0 4px 24px #00000014}.gb-contact-form h2{color:#1a365d;margin-bottom:24px}.gb-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gb-form-group{margin-bottom:20px}.gb-form-group label{display:block;font-weight:600;margin-bottom:6px;font-size:.9rem;color:#2d3748}.gb-form-group input,.gb-form-group select,.gb-form-group textarea{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;font-family:inherit;transition:.3s ease;background:#fff;color:#2d3748}.gb-form-group input:focus,.gb-form-group select:focus,.gb-form-group textarea:focus{outline:none;border-color:#1a365d;box-shadow:0 0 0 3px #1a365d1a}.gb-form-success{text-align:center;padding:60px 20px}.gb-success-icon{font-size:3rem;display:block;margin-bottom:16px}.gb-form-success h3{color:#1a365d;margin-bottom:8px;font-size:1.5rem}.gb-form-success p{color:#718096;margin-bottom:24px}.gb-map-section{padding:0}.gb-map-placeholder{height:300px;background:#f7fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#718096;font-size:1rem;gap:8px;border-top:1px solid #e2e8f0}.gb-map-placeholder span{font-size:2.5rem}.gb-map-placeholder small{font-size:.85rem}.gb-cta-section{background:linear-gradient(135deg,#0f2440,#1a365d);text-align:center}.gb-cta-content{max-width:650px;margin:0 auto}.gb-cta-content h2{color:#fff;font-size:2.2rem;margin-bottom:16px}.gb-cta-content p{color:#fffc;font-size:1.1rem;margin-bottom:32px}.gb-footer{background:#1a202c;color:#a0aec0;padding:60px 0 0}.gb-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}.gb-footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:16px}.gb-footer-logo{width:44px;height:44px;object-fit:contain;border-radius:10px;background:#fff;padding:2px;box-shadow:0 2px 8px #0003}.gb-footer-logo-fallback{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;font-size:1.4rem;background:linear-gradient(135deg,#2b6cb0,#4299e1);flex-shrink:0}.gb-footer-brand h3{margin-bottom:0}.gb-footer-col h3{color:#fff;font-size:1.2rem;margin-bottom:12px}.gb-footer-col h4{color:#fff;font-size:1rem;margin-bottom:12px}.gb-footer-col p{font-size:.95rem;line-height:1.7;margin-bottom:6px}.gb-footer-col a{display:block;color:#a0aec0;font-size:.95rem;padding:4px 0;transition:.3s ease}.gb-footer-col a:hover{color:#fff}.gb-social-links{display:flex;gap:12px;margin-top:16px}.gb-social-links a{padding:8px 16px;border:1px solid #4a5568;border-radius:50px;font-size:.85rem}.gb-social-links a:hover{background:#e53e3e;border-color:#e53e3e;color:#fff}.gb-footer-bottom{border-top:1px solid #2d3748;padding:20px 0;text-align:center;font-size:.9rem}@media (max-width: 768px){.gb-menu-btn{display:block}.gb-nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;padding:20px;gap:4px;box-shadow:0 12px 40px #0000001f;border-top:1px solid #e2e8f0}.gb-nav-links.open{display:flex}.gb-nav-links a{width:100%}.gb-logo-img{width:40px;height:40px}.gb-logo-fallback{width:40px;height:40px;font-size:1.3rem}.gb-logo-text strong{font-size:1.1rem}.gb-hero-content h1{font-size:2.2rem}.gb-hero{min-height:70vh}.gb-stats-grid{grid-template-columns:repeat(2,1fr);gap:20px}.gb-stat-number{font-size:1.8rem}.gb-about-preview{grid-template-columns:1fr;gap:32px}.gb-services-grid,.gb-process-grid,.gb-projects-grid,.gb-testimonials-grid,.gb-projects-grid-full,.gb-mission-grid{grid-template-columns:1fr}.gb-team-grid{grid-template-columns:repeat(2,1fr)}.gb-service-detail{grid-template-columns:1fr}.gb-service-detail.reverse{direction:ltr}.gb-contact-grid,.gb-form-row{grid-template-columns:1fr}.gb-footer-grid{grid-template-columns:1fr 1fr}.gb-page-header h1{font-size:2rem}.gb-section-header h2,.gb-section h2,.gb-cta-content h2{font-size:1.6rem}}
