@charset "UTF-8";.portfolio-hero{background:var(--color-primary-dark);padding:80px 0 60px;color:#fff}.portfolio-hero h1{color:#fff;font-size:max(2rem, min(4vw, 2.75rem));margin-bottom:16px}.portfolio-hero p{color:rgba(255,255,255,.8);font-size:1.05rem;max-width:640px}.portfolio-filter-bar{background:var(--color-bg-alt);border-bottom:1px solid var(--color-border);padding:16px 0;position:sticky;top:80px;z-index:100}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.filter-tab{padding:8px 20px;border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);transition:var(--transition)}.filter-tab.active,.filter-tab:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.portfolio-grid-section{padding:64px 0 96px}.portfolio-item{position:relative;border-radius:var(--border-radius-lg);overflow:hidden;cursor:pointer;display:block}.portfolio-item.large{height:480px}.portfolio-item.medium{height:300px}.portfolio-item.small{height:220px}.portfolio-item ai-img,.portfolio-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .6s;position:absolute;top:0;left:0}.portfolio-item:hover ai-img,.portfolio-item:hover img{transform:scale(1.08)}.portfolio-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(7,35,46,.92));padding:60px 28px 28px;color:#fff;transform:translateY(8px);transition:var(--transition)}.portfolio-item:hover .portfolio-overlay{transform:translateY(0)}.portfolio-sector{font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--color-secondary);margin-bottom:8px;display:block}.portfolio-overlay h3{color:#fff;font-size:1.1rem;margin-bottom:4px}.portfolio-overlay .project-meta{font-size:.8rem;color:rgba(255,255,255,.65)}.featured-project{padding:80px 0;background:var(--color-bg-alt)}.featured-project .project-image-large{border-radius:var(--border-radius-lg);overflow:hidden;height:500px}.featured-project .project-image-large ai-img,.featured-project .project-image-large img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.project-detail-label{font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--color-secondary);display:block;margin-bottom:12px}.project-specs{list-style:none;padding:0;margin:24px 0}.project-specs li{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--color-border);font-size:.875rem}.project-specs li span:first-child{color:var(--color-text-muted);font-weight:500}.project-specs li span:last-child{color:var(--color-primary);font-weight:600}.comparison-section{padding:80px 0;background:var(--color-bg-alt)}.comparison-table{font-size:.875rem;border-color:var(--color-border)}.comparison-table thead th{background:var(--color-primary);color:#fff;font-weight:700;font-size:.8rem;letter-spacing:.03em;border-color:var(--color-primary-dark);padding:14px 16px;vertical-align:middle}.comparison-table thead th:first-child{background:var(--color-primary-dark)}.comparison-table tbody td{vertical-align:top;padding:14px 16px;line-height:1.5;border-color:var(--color-border)}.comparison-table tbody td:first-child{background:var(--color-bg-alt);font-weight:600;color:var(--color-primary);width:18%}.comparison-table tbody tr:hover td{background-color:rgba(200,169,110,.05)}.comparison-table tbody tr:hover td:first-child{background-color:var(--color-bg-alt)}.considerations-section{padding:80px 0;background:#fff}.limitation-item{background:var(--color-bg-alt);border-radius:var(--border-radius-lg);padding:28px;height:100%;border-top:3px solid var(--color-secondary)}.limitation-icon{width:40px;height:40px;color:var(--color-secondary);margin-bottom:16px}.limitation-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.limitation-item h4{font-size:1rem;font-weight:700;color:var(--color-primary);margin-bottom:12px}.limitation-item p{font-size:.875rem;color:var(--color-text-muted);line-height:1.7;margin:0}