@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Syne:wght@400;600;700;800&family=JetBrains+Mono:wght@300;400&display=swap";.hero{align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-bg{background:radial-gradient(ellipse 70% 70% at 15% 50%, color-mix(in srgb, var(--color-primary) 18%, transparent) 0%, transparent 70%), radial-gradient(ellipse 60% 60% at 85% 50%, color-mix(in srgb, var(--color-accent) 12%, transparent) 0%, transparent 65%), var(--color-bg);transition:background var(--tr);position:absolute;inset:0}.hero-grid{background-image:linear-gradient(color-mix(in srgb, var(--color-primary) 7%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--color-primary) 7%, transparent) 1px, transparent 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80%,#000 40%,#0000 100%);mask-image:radial-gradient(80% 80%,#000 40%,#0000 100%)}.hero-content{z-index:2;grid-template-columns:1fr 1fr;align-items:center;gap:4rem;width:100%;max-width:1320px;margin:0 auto;padding:7rem 2.5rem 4rem;display:grid;position:relative}.hero-left{flex-direction:column;gap:2rem;display:flex}.hero-tag{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 10%, transparent);border:1px solid color-mix(in srgb, var(--color-accent) 25%, transparent);border-radius:2px;align-items:center;gap:.5rem;width:fit-content;padding:.4rem .9rem;font-size:.7rem;display:inline-flex}.hero-tag:before{content:"";background:var(--color-accent);border-radius:50%;width:6px;height:6px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.hero-headline{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);transition:color var(--tr);font-size:clamp(3.5rem,7vw,6.5rem);line-height:.95}.hero-headline em{color:var(--color-primary);transition:color var(--tr);font-style:normal}.hero-headline .accent-word{color:var(--color-accent);display:inline-block;position:relative}.hero-headline .accent-word:after{content:"";background:var(--color-accent);opacity:.4;border-radius:2px;height:3px;position:absolute;bottom:4px;left:0;right:0}.hero-sub{color:var(--color-text-muted);max-width:440px;transition:color var(--tr);font-size:1.05rem;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:1rem;display:flex}.hero-stats{border-top:1px solid color-mix(in srgb, var(--color-text) 10%, transparent);gap:2.5rem;padding-top:1rem;display:flex}.stat{flex-direction:column;gap:.2rem;display:flex}.stat-num{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);transition:color var(--tr);font-size:2rem}.stat-num span{color:var(--color-accent)}.stat-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);font-size:.65rem}.hero-right{justify-content:center;align-items:center;height:480px;display:flex;position:relative}.hero-orb{background:conic-gradient(from 180deg, var(--color-primary), var(--color-accent), var(--color-primary));opacity:.12;filter:blur(60px);border-radius:50%;width:320px;height:320px;animation:12s linear infinite orb-rotate;position:absolute}@keyframes orb-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero-split-cards{z-index:1;flex-direction:column;gap:1rem;width:100%;max-width:360px;display:flex;position:relative}.split-card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);box-shadow:0 4px 24px color-mix(in srgb, var(--color-primary) 8%, transparent);transition:background var(--tr), border-color var(--tr), transform .4s;border-radius:4px;align-items:center;gap:1rem;padding:1.2rem 1.5rem;animation:6s ease-in-out infinite float-card;display:flex}.split-card:nth-child(2){margin-left:2rem;animation-delay:-3s}.split-card:nth-child(3){animation-delay:-1.5s}@keyframes float-card{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.split-card-icon{border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:flex}.split-card-icon.blue{background:color-mix(in srgb, var(--color-primary) 15%, transparent);color:var(--color-primary)}.split-card-icon.amber{background:color-mix(in srgb, var(--color-accent) 15%, transparent);color:var(--color-accent)}.split-card-text{flex:1}.split-card-title{color:var(--color-text);transition:color var(--tr);font-size:.8rem;font-weight:700}.split-card-sub{font-family:var(--font-mono);color:var(--color-text-muted);margin-top:.15rem;font-size:.65rem}.split-card-badge{font-family:var(--font-mono);background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success);border-radius:2px;padding:.2rem .5rem;font-size:.6rem}.dual-wrap{background:color-mix(in srgb, var(--color-primary) 3%, var(--color-bg));border-top:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);border-bottom:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);transition:background var(--tr);padding:6rem 0}.dual-grid{grid-template-columns:1fr 1fr;gap:2px;margin-top:3.5rem;display:grid}.industry-card{background:var(--color-surface);cursor:default;transition:background var(--tr), transform .4s cubic-bezier(.4, 0, .2, 1), box-shadow .4s;padding:3rem;position:relative;overflow:hidden}.industry-card:first-child{border-radius:4px 0 0 4px}.industry-card:last-child{border-radius:0 4px 4px 0}.industry-card:hover{box-shadow:0 24px 60px color-mix(in srgb, var(--color-primary) 12%, transparent);z-index:1;transform:translateY(-6px)}.industry-card:before{content:"";background:var(--color-primary);transform-origin:0;height:3px;transition:transform .45s cubic-bezier(.4,0,.2,1);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.industry-card.amber-accent:before{background:var(--color-accent)}.industry-card:hover:before{transform:scaleX(1)}.industry-card-bg-num{font-family:var(--font-display);color:color-mix(in srgb, var(--color-text) 4%, transparent);pointer-events:none;-webkit-user-select:none;user-select:none;transition:color var(--tr);font-size:7rem;line-height:1;position:absolute;top:1.5rem;right:2rem}.industry-icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:56px;height:56px;color:var(--color-primary);transition:background var(--tr), color var(--tr);border-radius:4px;justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:1.6rem;display:flex}.industry-card.amber-accent .industry-icon{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent)}.industry-card-title{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);transition:color var(--tr);margin-bottom:.5rem;font-size:2rem}.industry-card-desc{color:var(--color-text-muted);max-width:340px;transition:color var(--tr);margin-bottom:2rem;font-size:.9rem;line-height:1.6}.industry-services{flex-direction:column;gap:.6rem;display:flex}.service-item{color:var(--color-text);transition:color var(--tr);align-items:center;gap:.75rem;font-size:.85rem;font-weight:600;display:flex}.service-item:before{content:"";background:var(--color-primary);width:20px;height:1.5px;transition:background var(--tr)}.industry-card.amber-accent .service-item:before{background:var(--color-accent)}.why-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3.5rem;display:grid}.why-card{border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);transition:border-color var(--tr), box-shadow .35s, transform .35s;border-radius:4px;padding:2rem 1.5rem;position:relative;overflow:hidden}.why-card:hover{border-color:color-mix(in srgb, var(--color-primary) 40%, transparent);box-shadow:0 12px 40px color-mix(in srgb, var(--color-primary) 8%, transparent);transform:translateY(-4px)}.why-card-num{font-family:var(--font-display);color:color-mix(in srgb, var(--color-text) 6%, transparent);transition:color var(--tr);margin-bottom:1rem;font-size:4rem;line-height:1}.why-icon{margin-bottom:1rem;font-size:1.8rem}.why-title{font-family:var(--font-body);color:var(--color-text);transition:color var(--tr);margin-bottom:.5rem;font-size:1rem;font-weight:800}.why-desc{color:var(--color-text-muted);transition:color var(--tr);font-size:.82rem;line-height:1.65}.projects-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3.5rem;display:grid}.project-card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);cursor:pointer;transition:background var(--tr), border-color var(--tr), transform .4s, box-shadow .4s;border-radius:4px;position:relative;overflow:hidden}.project-card:hover{box-shadow:0 24px 50px color-mix(in srgb, var(--color-primary) 14%, transparent);border-color:color-mix(in srgb, var(--color-primary) 30%, transparent);transform:translateY(-8px)}.project-img{justify-content:center;align-items:center;height:200px;font-size:3rem;display:flex;position:relative;overflow:hidden}.project-img.software-bg{background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 25%, var(--color-bg)), color-mix(in srgb, var(--color-primary) 8%, var(--color-bg)))}.project-img.construction-bg{background:linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 25%, var(--color-bg)), color-mix(in srgb, var(--color-accent) 8%, var(--color-bg)))}.project-overlay{background:color-mix(in srgb, var(--color-primary) 85%, transparent);opacity:0;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;transition:opacity .35s;display:flex;position:absolute;inset:0}.project-card:hover .project-overlay{opacity:1}.project-overlay-text{color:#ffffffd9;font-size:.82rem;line-height:1.6}.project-overlay-btn{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#fff;cursor:pointer;background:0 0;border:1.5px solid #fff9;border-radius:2px;padding:.4rem 1rem;font-size:.7rem;transition:background .25s,border-color .25s}.project-overlay-btn:hover{background:#ffffff26}.project-body{padding:1.5rem}.project-tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border-radius:2px;margin-bottom:.75rem;padding:.2rem .6rem;font-size:.6rem;display:inline-block}.project-tag.software-tag{background:color-mix(in srgb, var(--color-primary) 12%, transparent);color:var(--color-primary)}.project-tag.construction-tag{background:color-mix(in srgb, var(--color-accent) 15%, transparent);color:var(--color-accent)}.project-title{font-family:var(--font-body);color:var(--color-text);transition:color var(--tr);margin-bottom:.4rem;font-size:1rem;font-weight:800}.project-desc{color:var(--color-text-muted);transition:color var(--tr);font-size:.8rem;line-height:1.6}.cta-wrap{background:var(--color-primary);text-align:center;transition:background var(--tr);padding:7rem 2.5rem;position:relative;overflow:hidden}.cta-wrap:before{content:"";background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.cta-bg-text{font-family:var(--font-display);color:#ffffff08;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:18vw;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cta-content{z-index:1;flex-direction:column;align-items:center;gap:1.5rem;max-width:700px;margin:0 auto;display:flex;position:relative}.cta-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:color-mix(in srgb, var(--color-accent) 80%, transparent);font-size:.7rem}.cta-headline{font-family:var(--font-display);letter-spacing:.03em;color:#fff;font-size:clamp(2.5rem,5vw,4.5rem);line-height:.95}.cta-headline em{color:var(--color-accent);font-style:normal}.cta-sub{color:#ffffffa6;max-width:480px;font-size:1rem;line-height:1.7}.btn-cta{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;background:var(--color-accent);color:var(--color-text);cursor:pointer;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);border:none;padding:1rem 2.5rem;font-size:.9rem;font-weight:700;transition:filter .25s,transform .25s;position:relative;overflow:hidden}@media (width<=1024px){.why-grid{grid-template-columns:repeat(2,1fr)}.hero-content{gap:2rem}}@media (width<=768px){.hero-content{text-align:center;grid-template-columns:1fr;gap:3rem;padding-top:6rem}.hero-left{align-items:center}.hero-sub{margin:0 auto}.hero-actions,.hero-stats{justify-content:center}.hero-right{height:320px}.dual-grid{grid-template-columns:1fr}.industry-card:first-child{border-radius:4px 4px 0 0}.industry-card:last-child{border-radius:0 0 4px 4px}.why-grid{grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:1fr}}@media (width<=480px){.why-grid{grid-template-columns:1fr}.hero-stats{flex-direction:column;align-items:center;gap:1.5rem}.hero-headline{font-size:3rem}.btn-cta{text-align:center;width:100%}}.ct-hero{align-items:center;min-height:55vh;display:flex;position:relative;overflow:hidden}.ct-hero-bg{background:radial-gradient(ellipse 60% 80% at 100% 50%, color-mix(in srgb, var(--color-accent) 12%, transparent), transparent 65%), radial-gradient(ellipse 50% 60% at 0% 20%, color-mix(in srgb, var(--color-primary) 14%, transparent), transparent 60%), var(--color-bg);transition:background var(--tr);position:absolute;inset:0}.ct-hero-grid{background-image:linear-gradient(color-mix(in srgb, var(--color-primary) 7%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--color-primary) 7%, transparent) 1px, transparent 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80%,#000 40%,#0000 100%);mask-image:radial-gradient(80% 80%,#000 40%,#0000 100%)}.ct-hero-content{z-index:2;grid-template-columns:1.2fr 1fr;align-items:center;gap:4rem;width:100%;max-width:1320px;margin:0 auto;padding:9rem 2.5rem 5rem;display:grid;position:relative}.ct-hero-h1{font-family:var(--font-display);color:var(--color-text);font-size:clamp(3.6rem,7vw,6.8rem);line-height:.92}.ct-hero-h1 .stroke{-webkit-text-stroke:2px var(--color-primary);color:#0000}.ct-hero-h1 .amber{color:var(--color-accent)}.ct-section{grid-template-columns:1fr 1.5fr;gap:6rem;max-width:1320px;margin:0 auto;padding:4rem 2.5rem 8rem;display:grid}.form-card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);border-radius:4px;padding:3.5rem;box-shadow:0 15px 40px #0000000d}.form-h3{font-family:var(--font-display);color:var(--color-text);margin-bottom:2rem;font-size:2.22rem}.form-row{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.form-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);font-size:.68rem}.form-input,.form-select,.form-textarea{border:1.5px solid color-mix(in srgb, var(--color-text) 12%, transparent);background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);border-radius:2px;padding:.85rem 1rem;font-size:.95rem;transition:border-color .3s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);outline:none}.btn-submit{background:var(--color-primary);color:#fff;width:100%;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.15em;cursor:pointer;border:none;padding:1.2rem;font-weight:700;transition:filter .3s}.btn-submit:hover{filter:brightness(1.1)}.ct-rings{justify-content:center;align-items:center;width:100%;height:400px;display:flex;position:relative}.ct-ring{border:1.5px solid color-mix(in srgb, var(--color-primary) 25%, transparent);border-radius:50%;animation:3s ease-out infinite ring-pulse;position:absolute}@keyframes ring-pulse{0%{opacity:.8;transform:scale(.95)}to{opacity:0;transform:scale(1.05)}}.success-card{text-align:center;padding:4rem 2rem}.success-icon{color:var(--color-success);margin-bottom:1.5rem;font-size:4rem}.ct-channels-wrap{background:color-mix(in srgb, var(--color-primary) 3%, var(--color-bg));border-top:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);transition:background var(--tr);padding:6rem 2.5rem}.ct-channels-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;max-width:1320px;margin:0 auto;display:grid}.ct-channel-card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);transition:transform .38s, box-shadow .38s, border-color var(--tr);cursor:default;border-radius:4px;padding:2.5rem 2rem}.ct-channel-card:hover{box-shadow:0 20px 45px color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:color-mix(in srgb, var(--color-primary) 25%, transparent);transform:translateY(-6px)}.chan-icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:48px;height:48px;color:var(--color-primary);border-radius:4px;justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:1.4rem;display:flex}.chan-title{font-family:var(--font-body);color:var(--color-text);transition:color var(--tr);margin-bottom:.75rem;font-size:1.1rem;font-weight:800}.chan-desc{color:var(--color-text-muted);transition:color var(--tr);margin-bottom:1.5rem;font-size:.85rem;line-height:1.6}.chan-link{font-family:var(--font-mono);color:var(--color-primary);font-size:.75rem;font-weight:600}@media (width<=1024px){.ct-hero-content{text-align:center;grid-template-columns:1fr}.ct-section{grid-template-columns:1fr;gap:4rem}.ct-channels-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.form-card{padding:2rem 1.5rem}.form-row{grid-template-columns:1fr}.ct-hero{min-height:40vh}.ct-hero-content{padding:7rem 1.5rem 3rem}.ct-rings{height:300px}.ct-channels-grid{grid-template-columns:1fr}.ct-channels-wrap{padding:4rem 1.5rem}}@media (width<=480px){.ct-hero-h1{font-size:2.8rem}.form-h3{font-size:1.8rem}}.about-page-wrapper{width:100%;overflow-x:hidden}.ab-hero{align-items:center;min-height:80vh;display:flex;position:relative;overflow:hidden}.ab-hero-bg{background:radial-gradient(ellipse 55% 70% at 5% 50%, color-mix(in srgb, var(--color-primary) 14%, transparent), transparent 65%), radial-gradient(ellipse 45% 55% at 95% 20%, color-mix(in srgb, var(--color-accent) 10%, transparent), transparent 60%), var(--color-bg);transition:background var(--tr);position:absolute;inset:0}.ab-hero-grid{background-image:linear-gradient(color-mix(in srgb, var(--color-primary) 6%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--color-primary) 6%, transparent) 1px, transparent 1px);background-size:70px 70px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 80%,#000 30%,#0000 100%);mask-image:radial-gradient(80% 80%,#000 30%,#0000 100%)}.ab-hero-wheel-wrap{pointer-events:none;opacity:.8;width:560px;height:560px;position:absolute;top:50%;right:-80px;transform:translateY(-50%)}.ab-hero-wheel{border:1px solid color-mix(in srgb, var(--color-primary) 10%, transparent);border-radius:50%;width:100%;height:100%;animation:60s linear infinite ab-wheel-spin;position:relative}.ab-hero-wheel:before{content:"";border:1px dashed color-mix(in srgb, var(--color-accent) 14%, transparent);border-radius:50%;animation:36s linear infinite reverse ab-wheel-spin;position:absolute;inset:60px}.ab-hero-wheel:after{content:"";border:1px solid color-mix(in srgb, var(--color-primary) 18%, transparent);border-radius:50%;position:absolute;inset:130px}@keyframes ab-wheel-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.wheel-tick{font-family:var(--font-mono);letter-spacing:.08em;color:color-mix(in srgb, var(--color-text-muted) 45%, transparent);white-space:nowrap;font-size:.55rem;position:absolute;top:50%;left:50%}.ab-hero-content{z-index:2;flex-direction:column;gap:2rem;width:100%;max-width:1320px;margin:0 auto;padding:9rem 2.5rem 5rem;display:flex;position:relative}.ab-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:.75rem;font-size:.7rem;display:flex}.ab-eyebrow:before{content:"";background:var(--color-accent);width:24px;height:1.5px;display:block}.ab-hero-h1{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);transition:color var(--tr);font-size:clamp(3.6rem,7vw,6.8rem);line-height:.92}.ab-hero-h1 .stroke{-webkit-text-stroke:2px var(--color-primary);color:#0000;transition:-webkit-text-stroke-color var(--tr)}.ab-hero-h1 .amber{color:var(--color-accent)}.ab-hero-text-col{z-index:5;flex-direction:column;gap:2rem;max-width:680px;display:flex;position:relative}.ab-hero-lead{color:var(--color-text-muted);max-width:480px;transition:color var(--tr);font-size:1.05rem;line-height:1.75}.ab-hero-divider{background:linear-gradient(90deg, var(--color-primary), var(--color-accent));width:60px;height:2px}.manifesto-wrap{background:var(--color-primary);transition:background var(--tr);padding:5rem 0;position:relative;overflow:hidden}.manifesto-wrap:before{content:"";background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.manifesto-inner{z-index:1;max-width:1320px;margin:0 auto;padding:0 2.5rem;position:relative}.manifesto-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:color-mix(in srgb, var(--color-accent) 75%, transparent);align-items:center;gap:.6rem;margin-bottom:1.5rem;font-size:.68rem;display:flex}.manifesto-label:before{content:"";background:var(--color-accent);width:20px;height:1.5px;display:block}.manifesto-text{font-family:var(--font-display);letter-spacing:.02em;color:#fff;max-width:900px;font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.15}.manifesto-text em{color:var(--color-accent);font-style:normal}.ab-section{max-width:1320px;margin:0 auto;padding:6rem 2.5rem}.ab-eyebrow-sm{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:.6rem;margin-bottom:.8rem;font-size:.7rem;display:flex}.ab-eyebrow-sm:before{content:"";background:var(--color-accent);width:24px;height:1.5px;display:block}.ab-h2{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);transition:color var(--tr);font-size:clamp(2.2rem,4vw,3.5rem);line-height:1}.ab-sub{color:var(--color-text-muted);max-width:540px;transition:color var(--tr);margin-top:1rem;font-size:.95rem;line-height:1.7}.story-wrap{background:color-mix(in srgb, var(--color-primary) 3%, var(--color-bg));border-top:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);border-bottom:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);transition:background var(--tr)}.timeline{margin-top:4rem;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, transparent, var(--color-primary) 8%, var(--color-primary) 92%, transparent);width:1.5px;position:absolute;top:0;bottom:0;left:90px}.tl-item{grid-template-columns:90px 1fr;padding-bottom:3.5rem;display:grid;position:relative}.tl-item:last-child{padding-bottom:0}.tl-year-col{flex-direction:column;align-items:flex-end;padding-top:.15rem;padding-right:2rem;display:flex;position:relative}.tl-year{font-family:var(--font-display);letter-spacing:.06em;color:var(--color-primary);transition:color var(--tr);font-size:1.3rem}.tl-dot{background:var(--color-primary);border:3px solid var(--color-bg);width:13px;height:13px;transition:background var(--tr), border-color var(--tr);z-index:1;border-radius:50%;position:absolute;top:.45rem;right:-6.75px}.tl-dot.amber{background:var(--color-accent)}.tl-body{padding-left:2.5rem}.tl-title{font-family:var(--font-body);color:var(--color-text);transition:color var(--tr);margin-bottom:.4rem;font-size:1rem;font-weight:800}.tl-desc{color:var(--color-text-muted);max-width:560px;transition:color var(--tr);font-size:.83rem;line-height:1.7}.tl-tags{flex-wrap:wrap;gap:.4rem;margin-top:.6rem;display:flex}.tl-tag{font-family:var(--font-mono);letter-spacing:.08em;background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary);transition:background var(--tr), color var(--tr);border-radius:2px;padding:.18rem .5rem;font-size:.58rem}.tl-tag.amber-tag{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent)}.values-section-wrap{background:var(--color-bg);transition:background var(--tr)}.values-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3.5rem;display:grid}.value-card{border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);background:var(--color-surface);cursor:default;transition:background var(--tr), border-color var(--tr), transform .38s, box-shadow .38s;border-radius:4px;padding:2.5rem 2rem;position:relative;overflow:hidden}.value-card:hover{box-shadow:0 20px 48px color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:color-mix(in srgb, var(--color-primary) 25%, transparent);transform:translateY(-6px)}.value-card:after{content:"";background:linear-gradient(90deg, var(--color-primary), var(--color-accent));transform-origin:0;height:2px;transition:transform .4s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.value-card:hover:after{transform:scaleX(1)}.value-num{font-family:var(--font-display);color:color-mix(in srgb, var(--color-text) 5%, transparent);transition:color var(--tr);margin-bottom:1rem;font-size:4.5rem;line-height:1}.value-icon{margin-bottom:.75rem;font-size:1.6rem}.value-title{font-family:var(--font-body);color:var(--color-text);transition:color var(--tr);margin-bottom:.5rem;font-size:1rem;font-weight:800}.value-desc{color:var(--color-text-muted);transition:color var(--tr);font-size:.8rem;line-height:1.65}.numbers-wrap{background:color-mix(in srgb, var(--color-primary) 3%, var(--color-bg));border-top:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);border-bottom:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);transition:background var(--tr)}.numbers-grid{border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);border-radius:4px;grid-template-columns:repeat(4,1fr);gap:0;margin-top:3.5rem;display:grid;overflow:hidden}.number-item{border-right:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);transition:background var(--tr), border-color var(--tr);padding:2.5rem 2rem;position:relative;overflow:hidden}.number-item:last-child{border-right:none}.number-item:before{content:"";background:var(--color-primary);transform-origin:0;height:2px;transition:transform .5s cubic-bezier(.4,0,.2,1);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.number-item:hover:before{transform:scaleX(1)}.number-item.amber-num:before{background:var(--color-accent)}.number-val{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-primary);transition:color var(--tr);font-size:3.5rem;line-height:1}.amber-num .number-val{color:var(--color-accent)}.number-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--tr);margin-top:.4rem;font-size:.65rem}.number-desc{color:var(--color-text-muted);max-width:180px;transition:color var(--tr);margin-top:.5rem;font-size:.78rem;line-height:1.55}.team-wrap{background:color-mix(in srgb, var(--color-primary) 3%, var(--color-bg));border-top:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);border-bottom:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);transition:background var(--tr)}.team-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3.5rem;display:grid}.team-card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);cursor:default;transition:background var(--tr), border-color var(--tr), transform .38s, box-shadow .38s;border-radius:4px;overflow:hidden}.team-card:hover{box-shadow:0 20px 44px color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:color-mix(in srgb, var(--color-primary) 22%, transparent);transform:translateY(-6px)}.team-avatar{justify-content:center;align-items:center;height:180px;display:flex;position:relative;overflow:hidden}.team-avatar:before{content:"";background-image:linear-gradient(color-mix(in srgb, var(--color-text) 4%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--color-text) 4%, transparent) 1px, transparent 1px);background-size:24px 24px;position:absolute;inset:0}.av1{background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 25%, var(--color-bg)), color-mix(in srgb, var(--color-primary) 8%, var(--color-bg)))}.av2{background:linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 22%, var(--color-bg)), color-mix(in srgb, var(--color-accent) 7%, var(--color-bg)))}.av3{background:linear-gradient(135deg, color-mix(in srgb, var(--color-success) 20%, var(--color-bg)), color-mix(in srgb, var(--color-primary) 10%, var(--color-bg)))}.av4{background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 20%, var(--color-bg)), color-mix(in srgb, var(--color-accent) 12%, var(--color-bg)))}.team-avatar-icon{z-index:1;opacity:.5;font-size:3.5rem;position:relative}.team-body{padding:1.5rem}.team-name{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);transition:color var(--tr);font-size:1.5rem}.team-role{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);margin-top:.2rem;margin-bottom:.75rem;font-size:.65rem}.team-bio{color:var(--color-text-muted);transition:color var(--tr);font-size:.78rem;line-height:1.65}.team-div{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;transition:background var(--tr), color var(--tr);border-radius:2px;margin-top:.75rem;padding:.2rem .55rem;font-size:.58rem;display:inline-block}.team-div.blue{background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary)}.team-div.amber{background:color-mix(in srgb, var(--color-accent) 14%, transparent);color:var(--color-accent)}.team-div.both{background:color-mix(in srgb, var(--color-text) 6%, transparent);color:var(--color-text-muted)}.partners-wrap{background:var(--color-bg);border-top:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);transition:background var(--tr)}.partners-row{flex-wrap:wrap;gap:1.5rem;margin-top:3rem;display:flex}.partner-badge{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);cursor:default;min-width:200px;transition:background var(--tr), border-color var(--tr), transform .3s;border-radius:4px;flex:1;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.partner-badge:hover{border-color:color-mix(in srgb, var(--color-primary) 30%, transparent);transform:translateY(-2px)}.partner-icon{flex-shrink:0;font-size:1.4rem}.partner-name{font-family:var(--font-mono);letter-spacing:.08em;color:var(--color-text);transition:color var(--tr);font-size:.72rem;font-weight:500}.partner-type{font-family:var(--font-mono);letter-spacing:.08em;color:var(--color-text-muted);transition:color var(--tr);font-size:.58rem}.ab-cta{background:var(--color-primary);text-align:center;transition:background var(--tr);padding:7rem 2.5rem;position:relative;overflow:hidden}.ab-cta:before{content:"";background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.ab-cta-ghost{font-family:var(--font-display);color:#ffffff08;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:18vw;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ab-cta-inner{z-index:1;flex-direction:column;align-items:center;gap:1.5rem;max-width:680px;margin:0 auto;display:flex;position:relative}.ab-cta-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:color-mix(in srgb, var(--color-accent) 75%, transparent);font-size:.7rem}.ab-cta-h2{font-family:var(--font-display);letter-spacing:.03em;color:#fff;font-size:clamp(2.5rem,5vw,4.5rem);line-height:.95}.ab-cta-h2 em{color:var(--color-accent);font-style:normal}.ab-cta-sub{color:#ffffffa6;max-width:460px;font-size:1rem;line-height:1.7}.btn-cta{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;background:var(--color-accent);color:var(--color-text);cursor:pointer;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);border:none;padding:1rem 2.5rem;font-size:.9rem;font-weight:700;transition:filter .25s,transform .25s}.btn-cta:hover{filter:brightness(1.1);transform:translateY(-3px)}@media (width<=1024px){.team-grid,.values-grid,.numbers-grid{grid-template-columns:repeat(2,1fr)}.number-item:nth-child(2){border-right:none}.number-item:nth-child(3){border-top:1px solid color-mix(in srgb, var(--color-text) 8%, transparent)}.ab-hero-wheel-wrap{display:none}}@media (width<=768px){.team-grid{grid-template-columns:1fr 1fr}.values-grid{grid-template-columns:1fr}.numbers-grid{grid-template-columns:1fr 1fr}.timeline:before{left:60px}.tl-item{grid-template-columns:60px 1fr}.ab-hero{min-height:auto}.ab-hero-content{padding:7rem 1.5rem 3rem}.manifesto-text{font-size:clamp(1.5rem,5vw,2.2rem)}.partners-row .partner-badge{min-width:160px}}@media (width<=480px){.team-grid,.numbers-grid{grid-template-columns:1fr}.number-item{border-right:none;border-bottom:1px solid color-mix(in srgb, var(--color-text) 8%, transparent)}.number-item:last-child{border-bottom:none}.ab-hero-h1{font-size:2.8rem}.ab-cta-h2{font-size:2.2rem}.values-grid{grid-template-columns:1fr}}.proj-hero{align-items:flex-end;min-height:55vh;padding-bottom:0;display:flex;position:relative;overflow:hidden}.proj-hero-bg{background:radial-gradient(ellipse 60% 90% at 80% 20%, color-mix(in srgb,var(--color-primary) 14%,transparent),transparent 65%), radial-gradient(ellipse 40% 60% at 10% 80%, color-mix(in srgb,var(--color-accent) 8%,transparent),transparent 60%), var(--color-bg);transition:background var(--tr);position:absolute;inset:0}.proj-hero-grid{background-image:linear-gradient(color-mix(in srgb,var(--color-primary) 6%,transparent) 1px,transparent 1px), linear-gradient(90deg,color-mix(in srgb,var(--color-primary) 6%,transparent) 1px,transparent 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0%,#000 30% 80%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 30% 80%,#0000 100%)}.proj-hero-floats{pointer-events:none;z-index:10;flex-direction:column;gap:.8rem;display:flex;position:absolute;top:50%;right:2.5rem;transform:translateY(-50%)}.proj-float{background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);box-shadow:0 8px 24px color-mix(in srgb,var(--color-primary) 8%,transparent);transition:background var(--tr),border-color var(--tr);border-radius:4px;align-items:center;gap:.7rem;padding:.75rem 1.1rem;animation:5s ease-in-out infinite float-bob;display:flex}.proj-float:nth-child(2){animation-delay:-2.5s}.proj-float:nth-child(3){animation-delay:-1s}@keyframes float-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.proj-float-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.proj-float-dot.blue{background:var(--color-primary)}.proj-float-dot.amber{background:var(--color-accent)}.proj-float-dot.green{background:var(--color-success)}.proj-float-text{flex-direction:column;gap:.05rem;display:flex}.proj-float-num{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);transition:color var(--tr);font-size:1.2rem;line-height:1}.proj-float-lbl{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--tr);font-size:.58rem}.proj-hero-content{z-index:2;width:100%;max-width:1320px;margin:0 auto;padding:8rem 2.5rem 4rem;position:relative}.proj-hero-text-col{max-width:800px}.proj-hero-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:.75rem;margin-bottom:1rem;font-size:.7rem;display:flex}.proj-hero-eyebrow:before{content:"";background:var(--color-accent);width:24px;height:1.5px;display:block}.proj-hero-h1{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);transition:color var(--tr);max-width:800px;font-size:clamp(3.5rem,7vw,7rem);line-height:.92}.proj-hero-h1 .stroke{-webkit-text-stroke:2px var(--color-primary);color:#0000;transition:-webkit-text-stroke var(--tr)}.proj-hero-h1 .amber{color:var(--color-accent)}.proj-hero-sub{color:var(--color-text-muted);max-width:520px;transition:color var(--tr);margin-top:1.5rem;font-size:1rem;line-height:1.7}.filter-bar-wrap{z-index:100;background:color-mix(in srgb,var(--color-bg) 95%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);transition:background var(--tr),border-color var(--tr);position:sticky;top:68px}.filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;max-width:1320px;margin:0 auto;padding:1rem 2.5rem;display:flex}.filter-tabs{gap:.25rem;display:flex}.filter-tab{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border:1.5px solid color-mix(in srgb,var(--color-text) 15%,transparent);color:var(--color-text-muted);cursor:pointer;transition:background var(--tr),border-color var(--tr),color var(--tr);background:0 0;border-radius:2px;align-items:center;gap:.4rem;padding:.5rem 1.1rem;font-size:.7rem;display:flex}.filter-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.filter-tab.active.amber-tab{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text)}.filter-tab:hover:not(.active){border-color:color-mix(in srgb,var(--color-text) 35%,transparent);color:var(--color-text)}.filter-tab-count{opacity:.7;font-size:.6rem}.filter-right{align-items:center;gap:1rem;display:flex}.filter-status{gap:.25rem;display:flex}.status-pill{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border:1.5px solid color-mix(in srgb,var(--color-text) 12%,transparent);color:var(--color-text-muted);cursor:pointer;transition:background var(--tr),border-color var(--tr),color var(--tr);background:0 0;border-radius:100px;padding:.35rem .75rem;font-size:.62rem}.status-pill.active-completed{background:color-mix(in srgb,var(--color-success) 15%,transparent);border-color:var(--color-success);color:var(--color-success)}.status-pill.active-progress{background:color-mix(in srgb,var(--color-primary) 12%,transparent);border-color:var(--color-primary);color:var(--color-primary)}.status-pill.active-awarded{background:color-mix(in srgb,var(--color-accent) 15%,transparent);border-color:var(--color-accent);color:var(--color-accent)}.results-count{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap;font-size:.65rem}.projects-section{max-width:1320px;margin:0 auto;padding:3.5rem 2.5rem 7rem}.featured-row{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}.featured-row.single{grid-template-columns:1fr}.normal-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.proj-card{background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);cursor:pointer;transition:background var(--tr),border-color var(--tr),transform .4s cubic-bezier(.4,0,.2,1),box-shadow .4s;border-radius:4px;flex-direction:column;display:flex;position:relative;overflow:hidden}.proj-card:hover{box-shadow:0 28px 56px color-mix(in srgb,var(--color-primary) 12%,transparent);border-color:color-mix(in srgb,var(--color-primary) 25%,transparent);transform:translateY(-8px)}.proj-card.amber-card:hover{box-shadow:0 28px 56px color-mix(in srgb,var(--color-accent) 12%,transparent);border-color:color-mix(in srgb,var(--color-accent) 25%,transparent)}.proj-card.is-featured{flex-direction:row;min-height:280px}.proj-card.is-featured .proj-card-img{flex-shrink:0;width:42%;height:auto}.proj-card-progress{background:color-mix(in srgb,var(--color-text) 6%,transparent);height:2px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.proj-card-progress-fill{height:100%;transition:width 1s cubic-bezier(.4,0,.2,1)}.proj-card-progress-fill.blue{background:linear-gradient(90deg,var(--color-primary),color-mix(in srgb,var(--color-primary) 60%,var(--color-accent)))}.proj-card-progress-fill.amber{background:linear-gradient(90deg,var(--color-accent),color-mix(in srgb,var(--color-accent) 60%,var(--color-primary)))}.proj-card-img{flex-shrink:0;justify-content:center;align-items:center;height:200px;display:flex;position:relative;overflow:hidden}.proj-card-img.blue-grad{background:linear-gradient(135deg, color-mix(in srgb,var(--color-primary) 28%,var(--color-bg)), color-mix(in srgb,var(--color-primary) 9%,var(--color-bg)))}.proj-card-img.amber-grad{background:linear-gradient(135deg, color-mix(in srgb,var(--color-accent) 28%,var(--color-bg)), color-mix(in srgb,var(--color-accent) 9%,var(--color-bg)))}.proj-card-img:before{content:"";background-image:linear-gradient(color-mix(in srgb,var(--color-text) 4%,transparent) 1px,transparent 1px), linear-gradient(90deg,color-mix(in srgb,var(--color-text) 4%,transparent) 1px,transparent 1px);opacity:.6;background-size:30px 30px;position:absolute;inset:0}.proj-card-icon{z-index:1;opacity:.45;font-size:3rem;position:relative}.proj-card-overlay{text-align:center;opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1.5rem;transition:opacity .35s;display:flex;position:absolute;inset:0}.proj-card-overlay.blue-ov{background:color-mix(in srgb,var(--color-primary) 88%,transparent)}.proj-card-overlay.amber-ov{background:color-mix(in srgb,var(--color-accent) 92%,transparent)}.proj-card:hover .proj-card-overlay{opacity:1}.overlay-detail{color:#ffffffd9;font-size:.78rem;line-height:1.6}.amber-ov .overlay-detail{color:#0f172acc}.overlay-btn{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;color:#fff;background:0 0;border:1.5px solid #ffffff8c;border-radius:2px;padding:.4rem 1rem;font-size:.65rem;transition:background .25s}.amber-ov .overlay-btn{color:var(--color-text);border-color:#0f172a66}.overlay-btn:hover{background:#ffffff26}.proj-card-body{flex-direction:column;flex:1;gap:.5rem;padding:1.5rem;display:flex}.proj-card-top{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.proj-ind-tag{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:2px;padding:.2rem .55rem;font-size:.58rem}.proj-ind-tag.blue-tag{background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary)}.proj-ind-tag.amber-tag{background:color-mix(in srgb,var(--color-accent) 14%,transparent);color:var(--color-accent)}.proj-status{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:100px;align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:.58rem;display:flex}.proj-status:before{content:"";border-radius:50%;width:5px;height:5px}.proj-status.completed{background:color-mix(in srgb,var(--color-success) 12%,transparent);color:var(--color-success)}.proj-status.completed:before{background:var(--color-success)}.proj-status.inprogress{background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary)}.proj-status.inprogress:before{background:var(--color-primary);animation:1.5s infinite blink}.proj-status.awarded{background:color-mix(in srgb,var(--color-accent) 14%,transparent);color:var(--color-accent)}.proj-status.awarded:before{background:var(--color-accent)}.proj-card-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);transition:color var(--tr);font-size:1.6rem;line-height:1}.proj-card-sub{font-family:var(--font-mono);letter-spacing:.08em;color:var(--color-text-muted);transition:color var(--tr);font-size:.65rem}.proj-card-desc{color:var(--color-text-muted);transition:color var(--tr);flex:1;margin-top:.25rem;font-size:.8rem;line-height:1.65}.proj-card-meta{border-top:1px solid color-mix(in srgb,var(--color-text) 7%,transparent);flex-wrap:wrap;gap:1.5rem;margin-top:.5rem;padding-top:1rem;display:flex}.proj-meta-item{flex-direction:column;gap:.1rem;display:flex}.proj-meta-val{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-text);transition:color var(--tr);font-size:1.1rem}.proj-meta-lbl{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--tr);font-size:.58rem}.proj-card-tags{flex-wrap:wrap;gap:.35rem;margin-top:.25rem;display:flex}.proj-card-tag{font-family:var(--font-mono);letter-spacing:.08em;background:color-mix(in srgb,var(--color-text) 5%,transparent);color:var(--color-text-muted);transition:background var(--tr),color var(--tr);border-radius:2px;padding:.18rem .5rem;font-size:.57rem}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:6rem 2.5rem;display:flex}.empty-icon{opacity:.3;font-size:3rem}.empty-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);transition:color var(--tr);font-size:2rem}.empty-sub{color:var(--color-text-muted);transition:color var(--tr);font-size:.85rem}.modal-backdrop{z-index:2000;background:color-mix(in srgb,var(--color-text) 70%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:center;align-items:center;padding:2rem;animation:.25s backdrop-in;display:flex;position:fixed;inset:0}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--color-bg);border:1px solid color-mix(in srgb,var(--color-text) 10%,transparent);width:100%;max-width:820px;max-height:90vh;transition:background var(--tr);border-radius:6px;animation:.3s cubic-bezier(.4,0,.2,1) modal-slide;position:relative;overflow-y:auto}@keyframes modal-slide{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.modal-close{background:var(--color-bg);z-index:10;transition:background var(--tr);justify-content:flex-end;padding:1.25rem 1.5rem 0;display:flex;position:sticky;top:0;right:0}.modal-close-btn{border:1.5px solid color-mix(in srgb,var(--color-text) 15%,transparent);cursor:pointer;width:36px;height:36px;color:var(--color-text-muted);transition:border-color var(--tr),color var(--tr);background:0 0;border-radius:4px;justify-content:center;align-items:center;font-size:1rem;display:flex}.modal-close-btn:hover{border-color:var(--color-danger);color:var(--color-danger)}.modal-hero{border-radius:4px;justify-content:center;align-items:center;height:240px;margin:0 1.5rem;display:flex;position:relative;overflow:hidden}.modal-hero.blue-grad{background:linear-gradient(135deg, color-mix(in srgb,var(--color-primary) 30%,var(--color-bg)), color-mix(in srgb,var(--color-primary) 8%,var(--color-bg)))}.modal-hero.amber-grad{background:linear-gradient(135deg, color-mix(in srgb,var(--color-accent) 30%,var(--color-bg)), color-mix(in srgb,var(--color-accent) 8%,var(--color-bg)))}.modal-hero:before{content:"";background-image:linear-gradient(color-mix(in srgb,var(--color-text) 5%,transparent) 1px,transparent 1px), linear-gradient(90deg,color-mix(in srgb,var(--color-text) 5%,transparent) 1px,transparent 1px);background-size:40px 40px;position:absolute;inset:0}.modal-hero-icon{z-index:1;opacity:.35;font-size:5rem;position:relative}.modal-hero-badge{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--color-surface);color:var(--color-text);border:1px solid color-mix(in srgb,var(--color-text) 10%,transparent);transition:background var(--tr),color var(--tr);border-radius:2px;padding:.35rem .8rem;font-size:.65rem;position:absolute;top:1rem;right:1rem}.modal-body{padding:2rem 2rem 2.5rem}.modal-meta-row{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.modal-ind-tag{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:2px;padding:.25rem .6rem;font-size:.6rem}.modal-ind-tag.blue{background:color-mix(in srgb,var(--color-primary) 10%,transparent);color:var(--color-primary)}.modal-ind-tag.amber{background:color-mix(in srgb,var(--color-accent) 14%,transparent);color:var(--color-accent)}.modal-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);transition:color var(--tr);margin-bottom:.4rem;font-size:2.6rem;line-height:1}.modal-subtitle{font-family:var(--font-mono);letter-spacing:.1em;color:var(--color-text-muted);transition:color var(--tr);margin-bottom:1.5rem;font-size:.7rem}.modal-stats{background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);transition:background var(--tr),border-color var(--tr);border-radius:4px;grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:2rem;display:grid;overflow:hidden}.modal-stat{border-right:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);transition:border-color var(--tr);padding:1.25rem}.modal-stat:last-child{border-right:none}.modal-stat-val{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-primary);transition:color var(--tr);font-size:1.6rem}.amber .modal-stat-val{color:var(--color-accent)}.modal-stat-lbl{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--tr);margin-top:.15rem;font-size:.58rem}.modal-section-title{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:.5rem;margin-bottom:.6rem;font-size:.65rem;display:flex}.modal-section-title:before{content:"";background:var(--color-accent);width:16px;height:1.5px;display:block}.modal-text{color:var(--color-text-muted);transition:color var(--tr);margin-bottom:1.5rem;font-size:.88rem;line-height:1.75}.modal-grid2{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem;display:grid}.modal-block{background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);transition:background var(--tr),border-color var(--tr);border-radius:4px;padding:1.5rem}.modal-tags{flex-wrap:wrap;gap:.45rem;display:flex}.modal-tag{font-family:var(--font-mono);letter-spacing:.08em;background:color-mix(in srgb,var(--color-text) 5%,transparent);color:var(--color-text-muted);border:1px solid color-mix(in srgb,var(--color-text) 10%,transparent);transition:background var(--tr),color var(--tr);border-radius:2px;padding:.28rem .65rem;font-size:.62rem}.modal-meta-details{background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);transition:background var(--tr),border-color var(--tr);border-radius:4px;flex-wrap:wrap;gap:1.5rem;padding:1.25rem;display:flex}.modal-detail{flex-direction:column;gap:.15rem;display:flex}.modal-detail-lbl{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);font-size:.58rem}.modal-detail-val{color:var(--color-text);transition:color var(--tr);font-size:.82rem;font-weight:700}@media (width<=1024px){.featured-row{grid-template-columns:1fr}.proj-card.is-featured{flex-direction:column}.proj-card.is-featured .proj-card-img{width:100%;height:200px}.normal-grid,.modal-stats{grid-template-columns:repeat(2,1fr)}.modal-grid2{grid-template-columns:1fr}}@media (width<=768px){.normal-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column;align-items:flex-start;padding:1rem 1.5rem}.proj-hero-floats{display:none}.proj-hero{min-height:auto;padding-top:5rem}.proj-hero-content{padding:6rem 1.5rem 3rem}.modal-hero{height:180px;margin:0 1rem}.modal-title{font-size:2rem}}@media (width<=480px){.filter-tabs{flex-wrap:wrap}.modal-stats{grid-template-columns:1fr}.proj-hero-h1{font-size:2.8rem}}.sw-hero{align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.sw-hero-bg{background:radial-gradient(ellipse 80% 60% at 0% 40%, color-mix(in srgb, var(--color-primary) 20%, transparent), transparent 60%), radial-gradient(ellipse 50% 50% at 100% 80%, color-mix(in srgb, var(--color-primary) 10%, transparent), transparent 60%), var(--color-bg);transition:background var(--tr);position:absolute;inset:0}.sw-hero-grid{background-image:linear-gradient(color-mix(in srgb, var(--color-primary) 8%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--color-primary) 8%, transparent) 1px, transparent 1px);background-size:50px 50px;animation:20s linear infinite grid-pan;position:absolute;inset:0}@keyframes grid-pan{0%{background-position:0 0}to{background-position:50px 50px}}.sw-hero-code-strip{pointer-events:none;flex-direction:column;justify-content:center;gap:0;width:100%;height:100%;display:flex;position:relative;overflow:hidden;-webkit-mask-image:radial-gradient(60% 60%,#000 30%,#0000 100%);mask-image:radial-gradient(60% 60%,#000 30%,#0000 100%)}.code-line{font-family:var(--font-mono);color:color-mix(in srgb, var(--color-primary) 25%, transparent);white-space:nowrap;padding:.22rem 0;font-size:.72rem;animation:18s linear infinite code-scroll}.code-line:nth-child(odd){animation-duration:22s;animation-delay:-6s}.code-line:nth-child(3n){color:color-mix(in srgb, var(--color-accent) 20%, transparent)}@keyframes code-scroll{0%{opacity:0;transform:translate(40px)}5%{opacity:1}95%{opacity:1}to{opacity:0;transform:translate(-20px)}}.sw-hero-content{z-index:2;grid-template-columns:1.2fr 1fr;align-items:center;gap:4rem;width:100%;max-width:1320px;margin:0 auto;padding:9rem 2.5rem 5rem;display:grid;position:relative}.sw-hero-left{flex-direction:column;gap:2rem;display:flex}.sw-hero-right{justify-content:center;align-items:center;height:460px;display:flex;position:relative}.sw-hero-eyebrow{align-items:center;gap:.75rem;display:flex}.eyebrow-line{background:linear-gradient(90deg, var(--color-primary), var(--color-accent));width:40px;height:2px}.eyebrow-text{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-primary);font-size:.7rem}.sw-hero-h1{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);transition:color var(--tr);font-size:clamp(3.8rem,7.5vw,7rem);line-height:.92}.sw-hero-h1 .stroke-text{-webkit-text-stroke:2px var(--color-primary);color:#0000;transition:-webkit-text-stroke var(--tr)}.dark .sw-hero-h1 .stroke-text{-webkit-text-stroke-color:var(--color-primary)}.sw-hero-h1 .accent-fill{color:var(--color-accent)}.sw-hero-desc{color:var(--color-text-muted);max-width:500px;transition:color var(--tr);font-size:1rem;line-height:1.75}.sw-hero-chips{flex-wrap:wrap;gap:.6rem;display:flex}.chip{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary);border:1px solid color-mix(in srgb, var(--color-primary) 20%, transparent);transition:background var(--tr), color var(--tr);border-radius:2px;padding:.35rem .8rem;font-size:.65rem}.sw-hero-actions{flex-wrap:wrap;gap:1rem;padding-top:.5rem;display:flex}.btn-prim{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;background:var(--color-primary);color:#fff;cursor:pointer;clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);transition:transform .2s, background var(--tr);border:none;padding:.9rem 2rem;font-size:.85rem;font-weight:700;position:relative;overflow:hidden}.btn-prim:before{content:"";background:#ffffff2e;transition:transform .4s;position:absolute;inset:0;transform:translate(-100%)}.btn-prim:hover:before{transform:translate(0)}.btn-prim:hover{transform:translateY(-2px)}.btn-ghost{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text);cursor:pointer;border:1.5px solid color-mix(in srgb, var(--color-text) 25%, transparent);clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);transition:border-color var(--tr), color var(--tr), transform .2s;background:0 0;padding:.85rem 2rem;font-size:.85rem;font-weight:700}.btn-ghost:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}.metrics-bar{background:var(--color-primary);padding:1.5rem 0;position:relative;overflow:hidden}.metrics-bar:before{content:"";background:repeating-linear-gradient(90deg,#ffffff0a 0 1px,#0000 1px 80px);position:absolute;inset:0}.metrics-inner{z-index:1;grid-template-columns:repeat(4,1fr);gap:0;max-width:1320px;margin:0 auto;padding:0 2.5rem;display:grid;position:relative}.metric-item{border-right:1px solid #ffffff26;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem 1rem;display:flex}.metric-item:last-child{border-right:none}.metric-val{font-family:var(--font-display);letter-spacing:.05em;color:#fff;font-size:2.2rem}.metric-val span{color:var(--color-accent)}.metric-lbl{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#ffffff8c;font-size:.62rem}.sw-section{max-width:1320px;margin:0 auto;padding:6rem 2.5rem}.section-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:.6rem;margin-bottom:.8rem;font-size:.7rem;display:flex}.section-eyebrow:before{content:"";background:var(--color-accent);width:24px;height:1.5px;display:block}.section-h2{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);transition:color var(--tr);font-size:clamp(2.2rem,4vw,3.5rem);line-height:1}.section-sub{color:var(--color-text-muted);max-width:540px;transition:color var(--tr);margin-top:1rem;font-size:.95rem;line-height:1.7}.sw-services-wrap{background:color-mix(in srgb, var(--color-primary) 3%, var(--color-bg));border-top:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);border-bottom:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);transition:background var(--tr)}.services-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3.5rem;display:grid}.service-card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);cursor:default;transition:background var(--tr), border-color var(--tr), transform .38s, box-shadow .38s;border-radius:4px;padding:2rem 1.75rem;position:relative;overflow:hidden}.service-card:hover{box-shadow:0 20px 50px color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:color-mix(in srgb, var(--color-primary) 30%, transparent);transform:translateY(-6px)}.service-card:after{content:"";background:linear-gradient(90deg, var(--color-primary), var(--color-accent));transform-origin:0;height:2px;transition:transform .4s cubic-bezier(.4,0,.2,1);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.service-card:hover:after{transform:scaleX(1)}.svc-icon{background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:48px;height:48px;color:var(--color-primary);transition:background var(--tr), color var(--tr);border-radius:4px;justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:1.4rem;display:flex}.svc-title{font-family:var(--font-body);color:var(--color-text);transition:color var(--tr);margin-bottom:.6rem;font-size:1rem;font-weight:800}.svc-desc{color:var(--color-text-muted);transition:color var(--tr);margin-bottom:1.2rem;font-size:.8rem;line-height:1.65}.svc-tags{flex-wrap:wrap;gap:.4rem;display:flex}.svc-tag{font-family:var(--font-mono);letter-spacing:.08em;background:color-mix(in srgb, var(--color-text) 6%, transparent);color:var(--color-text-muted);transition:background var(--tr), color var(--tr);border-radius:2px;padding:.2rem .5rem;font-size:.58rem}.process-list{flex-direction:column;gap:0;margin-top:3.5rem;display:flex}.process-item{border-bottom:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);cursor:default;transition:background var(--tr);grid-template-columns:80px 1fr;gap:2rem;padding:2.5rem 0;display:grid;position:relative}.process-item:first-child{border-top:1px solid color-mix(in srgb, var(--color-text) 8%, transparent)}.process-item:before{content:"";background:color-mix(in srgb, var(--color-primary) 4%, transparent);width:0;transition:width .4s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:0;left:0}.process-item:hover:before{width:100%}.process-num{font-family:var(--font-display);letter-spacing:.04em;color:color-mix(in srgb, var(--color-primary) 20%, transparent);transition:color var(--tr);padding-top:.2rem;font-size:3rem;line-height:1}.process-item:hover .process-num{color:var(--color-primary)}.process-body{z-index:1;flex-direction:column;gap:.5rem;display:flex;position:relative}.process-title{font-family:var(--font-body);color:var(--color-text);transition:color var(--tr);font-size:1.1rem;font-weight:800}.process-desc{color:var(--color-text-muted);transition:color var(--tr);font-size:.85rem;line-height:1.7}.process-tags{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.p-tag{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary);transition:background var(--tr), color var(--tr);border-radius:2px;padding:.2rem .6rem;font-size:.6rem}.tech-wrap{background:color-mix(in srgb, var(--color-primary) 3%, var(--color-bg));border-top:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);border-bottom:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);transition:background var(--tr)}.tech-categories{flex-direction:column;gap:3rem;margin-top:3.5rem;display:flex}.tech-cat-title{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--tr);margin-bottom:1rem;font-size:.65rem}.tech-items{flex-wrap:wrap;gap:.75rem;display:flex}.tech-item{font-family:var(--font-mono);background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 10%, transparent);color:var(--color-text);transition:background var(--tr), border-color var(--tr), color var(--tr), transform .25s;cursor:default;border-radius:2px;align-items:center;gap:.6rem;padding:.55rem 1rem;font-size:.75rem;font-weight:500;display:flex}.tech-item:hover{border-color:color-mix(in srgb, var(--color-primary) 40%, transparent);transform:translateY(-2px)}.tech-dot{background:var(--color-primary);border-radius:50%;flex-shrink:0;width:6px;height:6px}.cases-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3.5rem;display:grid}.case-card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);cursor:pointer;transition:background var(--tr), border-color var(--tr), transform .4s, box-shadow .4s;border-radius:4px;flex-direction:column;display:flex;overflow:hidden}.case-card:hover{box-shadow:0 24px 50px color-mix(in srgb, var(--color-primary) 12%, transparent);border-color:color-mix(in srgb, var(--color-primary) 25%, transparent);transform:translateY(-8px)}.case-img{justify-content:center;align-items:center;height:180px;display:flex;position:relative;overflow:hidden}.case-img-1{background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 30%, var(--color-bg)), color-mix(in srgb, var(--color-primary) 10%, var(--color-bg)))}.case-img-2{background:linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 20%, var(--color-bg)), color-mix(in srgb, var(--color-primary) 15%, var(--color-bg)))}.case-img-3{background:linear-gradient(135deg, color-mix(in srgb, var(--color-success) 20%, var(--color-bg)), color-mix(in srgb, var(--color-primary) 10%, var(--color-bg)))}.case-img-icon{opacity:.6;font-size:2.5rem}.case-img-overlay{background:color-mix(in srgb, var(--color-primary) 90%, transparent);opacity:0;text-align:center;justify-content:center;align-items:center;padding:1.5rem;transition:opacity .35s;display:flex;position:absolute;inset:0}.case-card:hover .case-img-overlay{opacity:1}.case-img-overlay-text{color:#ffffffd9;font-size:.78rem;line-height:1.6}.case-body{flex-direction:column;flex:1;gap:.5rem;padding:1.5rem;display:flex}.case-tag{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:color-mix(in srgb, var(--color-primary) 10%, transparent);color:var(--color-primary);transition:background var(--tr), color var(--tr);border-radius:2px;width:fit-content;padding:.2rem .6rem;font-size:.6rem;display:inline-block}.case-title{font-family:var(--font-body);color:var(--color-text);transition:color var(--tr);font-size:1rem;font-weight:800}.case-desc{color:var(--color-text-muted);transition:color var(--tr);flex:1;font-size:.8rem;line-height:1.6}.case-footer{border-top:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;display:flex}.case-result{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-primary);transition:color var(--tr);font-size:1.4rem}.case-result-lbl{font-family:var(--font-mono);color:var(--color-text-muted);transition:color var(--tr);font-size:.6rem}.sw-cta{background:var(--color-primary);text-align:center;transition:background var(--tr);padding:7rem 2.5rem;position:relative;overflow:hidden}.sw-cta:before{content:"";background-image:linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.sw-cta-ghost{font-family:var(--font-display);color:#ffffff08;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:20vw;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sw-cta-inner{z-index:1;flex-direction:column;align-items:center;gap:1.5rem;max-width:680px;margin:0 auto;display:flex;position:relative}.sw-cta-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:color-mix(in srgb, var(--color-accent) 80%, transparent);font-size:.7rem}.sw-cta-h2{font-family:var(--font-display);letter-spacing:.03em;color:#fff;font-size:clamp(2.5rem,5vw,4.5rem);line-height:.95}.sw-cta-h2 em{color:var(--color-accent);font-style:normal}.sw-cta-sub{color:#ffffffa6;max-width:460px;font-size:1rem;line-height:1.7}.btn-cta-accent{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;background:var(--color-accent);color:var(--color-text);cursor:pointer;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);border:none;padding:1rem 2.5rem;font-size:.9rem;font-weight:700;transition:filter .25s,transform .25s}.btn-cta-accent:hover{filter:brightness(1.1);transform:translateY(-3px)}.d4{transition-delay:.4s}@media (width<=1024px){.sw-hero-content{text-align:center;grid-template-columns:1fr;gap:3rem}.sw-hero-left{align-items:center}.sw-hero-right{height:320px}.sw-hero-eyebrow{justify-content:center}.sw-hero-desc{margin:0 auto}.sw-hero-chips,.sw-hero-actions{justify-content:center}.services-grid,.cases-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.sw-hero{min-height:auto;padding-top:4rem}.sw-hero-content{padding:6rem 1.5rem 4rem}.sw-hero-right{display:none}.services-grid{grid-template-columns:1fr}.metrics-inner{grid-template-columns:repeat(2,1fr);gap:1rem}.process-item{text-align:left;grid-template-columns:1fr;gap:.5rem}.process-num{font-size:2.5rem}.cases-grid{grid-template-columns:1fr}.sw-section{padding:4rem 1.5rem}}@media (width<=480px){.metrics-inner{grid-template-columns:1fr}.sw-hero-h1{font-size:3rem}.sw-hero-actions{flex-direction:column;width:100%}.btn-prim,.btn-ghost{text-align:center;width:100%}}.cn-hero{background:#000;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.cn-hero-img{opacity:.45;background:url(https://images.unsplash.com/photo-1486406146926-c627a92ad1ab?auto=format&fit=crop&q=80) 50%/cover;animation:20s ease-out infinite alternate hero-scale;position:absolute;inset:0;scale:1.05}@keyframes hero-scale{to{scale:1.15}}.cn-hero-overlay{background:linear-gradient(90deg,#000000d9,#0006,#0000);position:absolute;inset:0}.cn-hero-content{z-index:2;width:100%;max-width:1320px;margin:0 auto;padding:9rem 2.5rem 5rem;position:relative}.cn-hero-inner{max-width:720px}.cn-hero-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:.8rem;margin-bottom:1.5rem;font-size:.72rem;display:flex}.cn-hero-label:before{content:"";background:var(--color-accent);width:32px;height:2px}.cn-hero-h1{font-family:var(--font-display);letter-spacing:.02em;color:#fff;font-size:clamp(4rem,8vw,7.5rem);line-height:.9}.cn-hero-h1 span{color:var(--color-accent)}.cn-hero-p{color:#ffffffb3;max-width:520px;margin-top:2rem;font-size:1.1rem;line-height:1.7}.cn-hero-stats{border-top:1px solid #ffffff26;gap:3rem;margin-top:3.5rem;padding-top:2rem;display:flex}.cn-stat-item{flex-direction:column;gap:.3rem;display:flex}.cn-stat-val{font-family:var(--font-display);color:#fff;font-size:2.22rem}.cn-stat-lbl{font-family:var(--font-mono);color:#ffffff73;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem}.cn-section{max-width:1320px;margin:0 auto;padding:7rem 2.5rem}.section-label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--color-primary);width:fit-content;margin-bottom:.8rem;font-size:.75rem;display:block}.dark .section-label{color:var(--color-accent)}.section-h2{font-family:var(--font-display);letter-spacing:.02em;color:var(--color-text);font-size:clamp(2.5rem,5vw,4.5rem);line-height:1}.section-sub{color:var(--color-text-muted);max-width:600px;margin-top:1.5rem;font-size:1rem;line-height:1.75}.cn-services-grid{grid-template-rows:repeat(2,320px);grid-template-columns:repeat(12,1fr);gap:1.5rem;margin-top:4rem;display:grid}.cn-bento-card{background:var(--color-surface);border:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);border-radius:4px;transition:transform .4s,box-shadow .4s;position:relative;overflow:hidden}.cn-bento-card:hover{transform:translateY(-8px);box-shadow:0 25px 50px #00000026}.bento-1{grid-column:span 8}.bento-2,.bento-3{grid-column:span 4}.bento-4{grid-column:span 8}.bento-img{background-position:50%;background-size:cover;transition:transform .8s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.cn-bento-card:hover .bento-img{scale:1.1}.bento-overlay{background:linear-gradient(#0000001a,#00006433 50%,#000c 90%);flex-direction:column;justify-content:flex-end;padding:2.5rem;display:flex;position:absolute;inset:0}.bento-title{font-family:var(--font-display);color:#fff;font-size:2.5rem;line-height:.95}.bento-p{color:#fff9;max-width:320px;margin-top:.75rem;font-size:.85rem;line-height:1.6}.cn-pillars-wrap{color:#fff;transition:background var(--tr);background:#0a0a0a}.cn-pillars-grid{grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:4rem;display:grid}.pillar-item{flex-direction:column;gap:1.25rem;display:flex}.pillar-icon{width:56px;height:56px;color:var(--color-accent);background:#ffffff0d;border-radius:2px;justify-content:center;align-items:center;font-size:1.8rem;display:flex}.pillar-title{font-family:var(--font-display);letter-spacing:.04em;font-size:1.8rem}.pillar-p{color:#ffffff73;font-size:.9rem;line-height:1.7}.cn-projects-wrap{background:color-mix(in srgb, var(--color-primary) 3%, var(--color-bg));transition:background var(--tr)}.cn-proj-list{background:color-mix(in srgb, var(--color-text) 8%, transparent);flex-direction:column;gap:2px;margin-top:4rem;display:flex}.proj-row{background:var(--color-surface);transition:background var(--tr), transform .3s;cursor:pointer;grid-template-columns:140px 1fr 200px 120px;align-items:center;padding:2.5rem;display:grid}.proj-row:hover{background:color-mix(in srgb, var(--color-primary) 3%, var(--color-surface));z-index:1;transform:scale(1.01)}.proj-year{font-family:var(--font-mono);color:var(--color-text-muted);font-size:.75rem}.proj-main{flex-direction:column;gap:.3rem;display:flex}.proj-name{font-family:var(--font-body);color:var(--color-text);font-size:1.25rem;font-weight:800}.proj-loc{color:var(--color-text-muted);font-size:.85rem}.proj-cat{font-family:var(--font-mono);border:1px solid color-mix(in srgb, var(--color-text) 12%, transparent);text-transform:uppercase;border-radius:40px;width:fit-content;padding:.3rem .8rem;font-size:.65rem}.proj-arrow{color:var(--color-primary);justify-self:flex-end;font-size:1.5rem;transition:transform .3s}.proj-row:hover .proj-arrow{transform:translate(5px)}.cn-guide-grid{grid-template-columns:1fr 1fr;align-items:center;gap:5rem;display:grid}.guide-img-box{border-radius:4px;height:500px;position:relative;overflow:hidden}.guide-img-box img{object-fit:cover;width:100%;height:100%}.guide-overlay{background:color-mix(in srgb, var(--color-primary) 20%, transparent);mix-blend-mode:overlay;position:absolute;inset:0}.guide-list{flex-direction:column;gap:2rem;margin-top:2.5rem;display:flex}.guide-item{grid-template-columns:32px 1fr;gap:1.2rem;display:grid}.guide-bullet{border:1px solid var(--color-accent);width:32px;height:32px;font-family:var(--font-mono);color:var(--color-accent);border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;display:flex}.guide-item-h{font-family:var(--font-display);color:var(--color-text);font-size:1.5rem}.guide-item-p{color:var(--color-text-muted);margin-top:.4rem;font-size:.85rem;line-height:1.6}.cn-cta{background:var(--color-primary);text-align:center;padding:8rem 2.5rem;position:relative;overflow:hidden}.cn-cta-ghost{font-family:var(--font-display);color:#ffffff08;white-space:nowrap;pointer-events:none;font-size:22vw;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cn-cta-inner{z-index:2;flex-direction:column;align-items:center;gap:1.5rem;max-width:720px;margin:0 auto;display:flex;position:relative}.cn-cta-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);font-size:.7rem}.cn-cta-h2{font-family:var(--font-display);color:#fff;font-size:clamp(2.5rem,5.5vw,4.5rem);line-height:.95}.cn-cta-sub{color:#fff9;max-width:500px;font-size:1rem;line-height:1.7}.btn-cta-dark{font-family:var(--font-body);background:var(--color-accent);color:var(--color-text);cursor:pointer;clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);border:none;padding:1rem 2.5rem;font-size:.9rem;font-weight:700;transition:filter .25s,transform .25s}.btn-cta-dark:hover{filter:brightness(1.1);transform:translateY(-3px)}.d-1{transition-delay:.1s}.d-2{transition-delay:.2s}.d-3{transition-delay:.3s}@media (width<=1024px){.cn-services-grid{grid-template-rows:repeat(4,280px)}.bento-1,.bento-4{grid-column:span 12}.bento-2,.bento-3{grid-column:span 6}.cn-pillars-grid,.cn-guide-grid{grid-template-columns:1fr;gap:3rem}.guide-img-box{height:360px}}@media (width<=768px){.cn-hero-content{padding-top:7rem}.cn-hero-stats{flex-direction:column;gap:1.5rem}.proj-row{grid-template-columns:1fr 1fr;gap:1rem;padding:1.5rem}.proj-cat,.proj-arrow{display:none}.proj-year{border-bottom:1px solid #0000000d;padding-bottom:.5rem}}.nf-page{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;padding:2.5rem;display:flex;position:relative;overflow:hidden}.nf-bg{background:radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--color-primary) 15%, transparent), transparent 70%), radial-gradient(circle at 20% 80%, color-mix(in srgb, var(--color-accent) 10%, transparent), transparent 50%);z-index:1;position:absolute;inset:0}.nf-grid{background-image:linear-gradient(color-mix(in srgb, var(--color-text) 5%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--color-text) 5%, transparent) 1px, transparent 1px);z-index:2;background-size:50px 50px;animation:8s ease-in-out infinite grid-pulse;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 80%);mask-image:radial-gradient(circle,#000,#0000 80%)}@keyframes grid-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.05)}}.nf-content{z-index:10;text-align:center;max-width:600px;position:relative}.nf-glitch-wrap{margin-bottom:2rem;display:inline-block;position:relative}.nf-404{font-family:var(--font-display);color:var(--color-text);letter-spacing:-.05em;z-index:2;text-shadow:0 0 30px color-mix(in srgb, var(--color-primary) 30%, transparent);font-size:clamp(8rem,20vw,15rem);line-height:.8;position:relative}.nf-404-stroke{width:100%;height:100%;font-family:var(--font-display);letter-spacing:-.05em;-webkit-text-stroke:1px var(--color-primary);color:#0000;z-index:1;opacity:.3;font-size:clamp(8rem,20vw,15rem);line-height:.8;position:absolute;top:0;left:0;transform:translate(10px,10px)}.nf-h2{font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text);margin-bottom:1rem;font-size:2.5rem}.nf-h2 span{color:var(--color-accent)}.nf-p{color:var(--color-text-muted);margin-bottom:2.5rem;font-size:1.1rem;line-height:1.6}.nf-actions{justify-content:center;gap:1rem;display:flex}.nf-btn{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;border-radius:4px;padding:1rem 2rem;font-size:.75rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.nf-btn-primary{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary);box-shadow:0 10px 30px color-mix(in srgb, var(--color-primary) 30%, transparent)}.nf-btn-primary:hover{box-shadow:0 15px 40px color-mix(in srgb, var(--color-primary) 50%, transparent);background:color-mix(in srgb, var(--color-primary) 80%, black);transform:translateY(-4px)}.nf-btn-ghost{color:var(--color-text);border:1px solid color-mix(in srgb, var(--color-text) 20%, transparent);background:0 0}.nf-btn-ghost:hover{background:color-mix(in srgb, var(--color-text) 5%, transparent);border-color:var(--color-text)}.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}@media (width<=768px){.nf-h2{font-size:1.8rem}.nf-p{font-size:1rem}.nf-actions{flex-direction:column;align-items:stretch}}.nav{z-index:1000;transition:background var(--transition,.35s), backdrop-filter var(--transition,.35s), box-shadow var(--transition,.35s);padding:0;position:fixed;top:0;left:0;right:0}.nav-container{justify-content:space-between;align-items:center;width:100%;max-width:1320px;margin:0 auto;padding:1.25rem 2.5rem;display:flex}.nav.scrolled{background:color-mix(in srgb, var(--color-surface) 88%, transparent);-webkit-backdrop-filter:blur(20px);box-shadow:0 1px 0 color-mix(in srgb, var(--color-text) 8%, transparent)}.nav-logo{cursor:pointer;z-index:1001;align-items:center;gap:.6rem;text-decoration:none;display:flex}.nav-links{align-items:center;gap:2rem;list-style:none;display:flex}.nav-links a{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--transition,.35s);font-size:.8rem;font-weight:600;text-decoration:none;position:relative}.nav-links a:after{content:"";background:var(--color-accent);width:0;height:1.5px;transition:width var(--transition,.35s);position:absolute;bottom:-4px;left:0}.nav-links a:hover{color:var(--color-text)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-links a.active{color:var(--color-primary)}.nav-right{z-index:1001;align-items:center;gap:1rem;display:flex}.theme-toggle{background:color-mix(in srgb, var(--color-primary) 20%, var(--color-bg));border:1.5px solid color-mix(in srgb, var(--color-primary) 30%, transparent);cursor:pointer;width:44px;height:24px;transition:background var(--transition,.35s);border-radius:12px;position:relative}.theme-toggle:after{content:"";background:var(--color-primary);width:18px;height:18px;transition:transform var(--transition,.35s);border-radius:50%;position:absolute;top:2px;left:2px}.dark .theme-toggle:after{transform:translate(20px)}.nav-mobile-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:space-between;width:24px;height:18px;padding:0;display:none}.nav-mobile-toggle span{background:var(--color-text);border-radius:2px;width:100%;height:2px;transition:transform .3s,opacity .3s}@media (width<=768px){.nav{padding:1rem 1.5rem}.nav-mobile-toggle{display:flex}.nav-links{background:var(--color-surface);z-index:1000;flex-direction:column;justify-content:center;gap:2.5rem;width:280px;padding:2rem;transition:transform .4s cubic-bezier(.16,1,.3,1);position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-10px 0 30px #0000001a}.nav-links.open{transform:translate(0)}.nav-links a{font-size:1.2rem}.nav-mobile-toggle.open span:first-child{transform:translateY(8px)rotate(45deg)}.nav-mobile-toggle.open span:nth-child(2){opacity:0}.nav-mobile-toggle.open span:nth-child(3){transform:translateY(-8px)rotate(-45deg)}}.footer{background:var(--color-surface);border-top:1px solid color-mix(in srgb, var(--color-text) 8%, transparent);transition:background var(--transition,.35s);padding:5rem 2.5rem 2.5rem}.footer-grid{grid-template-columns:2fr 1fr 1fr 1.5fr;gap:3rem;max-width:1320px;margin:0 auto;display:grid}.footer-brand{flex-direction:column;gap:1.5rem;display:flex}.footer-logo-row{align-items:center;gap:.6rem;display:flex}.footer-desc{color:var(--color-text-muted);max-width:300px;font-size:.85rem;line-height:1.7}.footer-socials{gap:1rem;display:flex}.social-icon{border:1px solid color-mix(in srgb, var(--color-text) 15%, transparent);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;transition:border-color var(--transition,.35s), color var(--transition,.35s);border-radius:4px;justify-content:center;align-items:center;font-size:.9rem;display:flex}.social-icon:hover{border-color:var(--color-primary);color:var(--color-primary)}.footer-col-title{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text);margin-bottom:1.5rem;font-size:.75rem;font-weight:700}.footer-links{flex-direction:column;gap:.75rem;list-style:none;display:flex}.footer-links a{color:var(--color-text-muted);transition:color var(--transition,.35s);font-size:.85rem;text-decoration:none}.footer-links a:hover{color:var(--color-primary)}.footer-contact{flex-direction:column;gap:1rem;display:flex}.contact-item{color:var(--color-text-muted);gap:.75rem;font-size:.85rem;display:flex}.contact-item-icon{color:var(--color-primary)}.footer-bottom{border-top:1px solid color-mix(in srgb, var(--color-text) 6%, transparent);justify-content:space-between;align-items:center;max-width:1320px;margin:4rem auto 0;padding-top:1.5rem;display:flex}.footer-bottom-text{font-family:var(--font-mono);letter-spacing:.1em;color:var(--color-text-muted);font-size:.65rem}@media (width<=768px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{text-align:center;flex-direction:column;gap:1rem}}@media (width<=480px){.footer-grid{grid-template-columns:1fr}}.app-container{background:var(--color-bg);min-height:100vh;transition:background var(--transition,.35s);flex-direction:column;display:flex}.main-content{flex:1}:root{--color-primary:#1e3a8a;--color-secondary:#475569;--color-accent:#f59e0b;--color-bg:#f8fafc;--color-surface:#fff;--color-text:#0f172a;--color-text-muted:#64748b;--color-success:#16a34a;--color-danger:#dc2626;--font-display:"Bebas Neue", sans-serif;--font-body:"Syne", sans-serif;--font-mono:"JetBrains Mono", monospace;--transition:.35s cubic-bezier(.4, 0, .2, 1);--tr:var(--transition)}.dark{--color-primary:#3b82f6;--color-secondary:#94a3b8;--color-accent:#fbbf24;--color-bg:#020617;--color-surface:#0f172a;--color-text:#e2e8f0;--color-text-muted:#94a3b8;--color-success:#22c55e;--color-danger:#f87171}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);transition:background var(--tr), color var(--tr);overflow-x:hidden}.section{max-width:1320px;margin:0 auto;padding:6rem 2.5rem}.section-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);align-items:center;gap:.6rem;margin-bottom:.75rem;font-size:.7rem;display:flex}.section-label:before{content:"";background:var(--color-accent);width:24px;height:1.5px;display:block}.section-title{font-family:var(--font-display);letter-spacing:.03em;color:var(--color-text);transition:color var(--tr);font-size:clamp(2.2rem,4vw,3.5rem);line-height:1}.btn-primary{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;background:var(--color-primary);color:#fff;cursor:pointer;clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);transition:background var(--tr), transform .2s;border:none;padding:.9rem 2rem;font-size:.85rem;font-weight:700;position:relative;overflow:hidden}.btn-primary:before{content:"";background:#ffffff26;transition:transform .4s;position:absolute;inset:0;transform:translate(-100%)}.btn-primary:hover:before{transform:translate(0)}.btn-primary:hover{transform:translateY(-2px)}.btn-outline{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text);border:1.5px solid color-mix(in srgb, var(--color-text) 30%, transparent);cursor:pointer;clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);transition:border-color var(--tr), color var(--tr), transform .2s;background:0 0;padding:.85rem 2rem;font-size:.85rem;font-weight:700}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}.fade-up{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(28px)}.fade-up.visible{opacity:1;transform:translateY(0)}.fade-up-delay-1{transition-delay:.1s}.fade-up-delay-2{transition-delay:.2s}.fade-up-delay-3{transition-delay:.3s}.fade-up-delay-4{transition-delay:.4s}.nav-logo-mark{background:var(--color-primary);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);width:36px;height:36px;font-family:var(--font-display);color:#fff;transition:background var(--tr);justify-content:center;align-items:center;font-size:.9rem;display:flex}.nav-logo-text{font-family:var(--font-display);letter-spacing:.12em;color:var(--color-text);transition:color var(--tr);font-size:1.35rem}.nav-logo-text span{color:var(--color-accent)}
