.projects-page{--projects-bg: #07181c;--projects-band: #092126;--projects-surface: #0d282c;--projects-surface-strong: #081b1f;--projects-line: rgba(var(--green-rgb), .26);--projects-line-soft: rgba(201, 224, 221, .13);background:linear-gradient(rgba(var(--green-rgb),.028) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--green-rgb),.028) 1px,transparent 1px),var(--projects-bg);background-size:64px 64px}.projects-page main{position:relative;z-index:1}.projects-page main>section{position:relative;isolation:isolate;overflow:clip}.projects-page main>section:before{position:absolute;z-index:-1;inset:0;pointer-events:none;content:""}.projects-page .section-code-label{position:absolute;z-index:2;inset:24px max(20px,calc((100% - 1160px)/2)) auto auto;color:rgba(var(--green-rgb),.42);font-family:Consolas,Courier New,monospace;font-size:.62rem;direction:ltr}.projects-page .mesh-layer{opacity:.42}.projects-page .code-rain{opacity:.19}.projects-backdrop{position:absolute;inset:0;overflow:hidden;pointer-events:none}.projects-backdrop:before,.projects-backdrop:after{position:absolute;border:1px solid rgba(var(--green-rgb),.1);content:""}.projects-backdrop:before{inset:120px 7vw auto auto;width:min(26vw,360px);aspect-ratio:1;transform:rotate(45deg)}.projects-backdrop:after{inset:auto auto 10% 6%;width:150px;aspect-ratio:1;transform:rotate(15deg)}.project-coordinate,.project-axis,.project-corner,.project-focus-mark,.project-scan,.project-code-field,.data-packet{display:none}.projects-stage{padding:clamp(24px,3vw,38px) 0 clamp(58px,6vw,82px)}.projects-stage:before{background:radial-gradient(circle at 78% 42%,rgba(var(--green-rgb),.1),transparent 28%),linear-gradient(120deg,transparent 0 68%,rgba(var(--green-rgb),.09) 68.1% 68.22%,transparent 68.35%),linear-gradient(180deg,#0d2a2ec7,#07181cf5)}.projects-page .page-breadcrumb{display:inline-flex;min-height:38px;align-items:center;gap:10px;margin-bottom:clamp(30px,4vw,46px);padding:7px 11px;border:1px solid rgba(255,255,255,.1);border-radius:5px;background:#0514178f;color:#e8f5f29e;font-size:.72rem;font-weight:800;backdrop-filter:blur(8px)}.projects-page .page-breadcrumb a,.projects-page .page-breadcrumb>span{display:inline-flex;align-items:center;gap:7px}.projects-page .page-breadcrumb a{color:#fff;transition:color .18s ease}.projects-page .page-breadcrumb a:hover,.projects-page .page-breadcrumb a:focus-visible{color:var(--green)}.projects-page .page-breadcrumb svg{width:14px;height:14px;flex:0 0 auto;color:var(--green)}.projects-page .page-breadcrumb .breadcrumb-separator{color:#e8f5f25c}.projects-page .page-breadcrumb .breadcrumb-separator svg{color:currentColor}.projects-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.5fr);align-items:center;gap:clamp(38px,6vw,78px)}.projects-heading>div,.portfolio-heading>div{min-width:0}.projects-kicker{display:inline-flex;min-height:34px;align-items:center;gap:8px;padding:6px 13px;border:1px solid var(--projects-line);border-radius:6px;background:rgba(var(--green-rgb),.07);color:var(--green);font-size:.77rem;font-weight:900}.projects-kicker svg{width:16px;height:16px;flex:0 0 auto}.projects-heading h1{max-width:720px;margin:16px 0 0;color:#fff;font-size:clamp(2.35rem,4.1vw,3.65rem);font-weight:900;line-height:1.2}.projects-heading h1 span{display:inline;color:var(--green)}.projects-heading>p{position:relative;max-width:460px;margin:0;padding:3px 20px 3px 0;color:#eff6f2bd;font-size:.92rem;line-height:1.95}.projects-heading>p:before{position:absolute;inset:8px 0 8px auto;width:2px;background:linear-gradient(var(--green),transparent);content:""}.projects-overview{display:grid;width:min(100%,900px);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(36px,5vw,52px);overflow:hidden;border:1px solid var(--projects-line-soft);border-radius:6px;background:#0514177a}.projects-overview>div{display:flex;min-width:0;min-height:84px;align-items:center;gap:13px;padding:15px 18px}.projects-overview>div+div{border-inline-start:1px solid var(--projects-line-soft)}.overview-icon{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid var(--projects-line);border-radius:4px;background:rgba(var(--green-rgb),.07);color:var(--green)}.overview-icon svg{width:20px;height:20px}.projects-overview p{display:grid;min-width:0;gap:2px;margin:0}.projects-overview b{overflow:hidden;color:#fff;font-family:Consolas,Courier New,monospace;font-size:.95rem;text-overflow:ellipsis;white-space:nowrap}.projects-overview small{color:#dfeeeb9e;font-size:.72rem}.portfolio-section{padding:clamp(64px,7vw,94px) 0;border-block:1px solid rgba(255,255,255,.07)}.portfolio-section:before{background:radial-gradient(circle,rgba(var(--green-rgb),.11) 0 1px,transparent 1.5px) 16px 16px / 112px 112px,linear-gradient(180deg,#092328,#081b1f)}.portfolio-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.46fr);align-items:end;gap:clamp(30px,5vw,58px);margin-bottom:clamp(34px,5vw,48px)}.portfolio-heading h2,.standards-heading h2{max-width:720px;margin:17px 0 0;color:#fff;font-size:clamp(2rem,3.5vw,3.1rem);font-weight:900;line-height:1.26}.portfolio-heading h2 span{display:inline-block;margin-inline-start:.16em;color:var(--green)}.portfolio-heading>p,.standards-heading>p{margin:0;color:#dfeeebb8;line-height:1.95}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(16px,1.8vw,22px)}.project-showcase-card{position:relative;display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--projects-line-soft);border-radius:6px;background:var(--projects-surface-strong);box-shadow:inset 0 1px #ffffff09,0 18px 44px #0000002e;opacity:0;transform:translateY(22px);transition:border-color .22s ease,box-shadow .22s ease,transform .52s cubic-bezier(.22,1,.36,1),opacity .52s ease}.project-showcase-card.is-visible{opacity:1;transform:translateY(0)}.project-showcase-card:hover{border-color:rgba(var(--green-rgb),.52);box-shadow:inset 0 1px #ffffff0b,0 24px 52px #00000038;transform:translateY(-4px)}.project-showcase-card:before{position:absolute;z-index:2;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--green),rgba(12,217,196,.52),transparent 74%);content:""}.project-showcase-card>header{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;border-bottom:1px solid var(--projects-line-soft);background:#ffffff05}.project-card-number{color:var(--green);font-family:Consolas,Courier New,monospace;font-size:.7rem;font-weight:800}.project-card-state{display:inline-flex;align-items:center;gap:7px;color:#dfeeebb8;font-size:.68rem;font-weight:800}.project-card-state i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 10px rgba(var(--green-rgb),.68)}.project-card-body{display:flex;min-width:0;flex:1;flex-direction:column}.project-card-visual{position:relative;display:grid;width:100%;aspect-ratio:16 / 9;min-height:188px;place-items:center;overflow:hidden;padding:22px;border-bottom:1px solid var(--projects-line-soft);background:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(var(--green-rgb),.12),transparent 48%),#18363a;background-size:24px 24px,24px 24px,auto,auto}.project-card-visual:before,.project-card-visual:after{position:absolute;width:28px;height:28px;border-color:rgba(var(--green-rgb),.65);border-style:solid;content:""}.project-card-visual:before{inset:14px auto auto 14px;border-width:1px 0 0 1px}.project-card-visual:after{inset:auto 14px 14px auto;border-width:0 1px 1px 0}.project-logo-link{position:relative;z-index:1;display:grid;width:min(100%,250px);justify-items:center;gap:10px}.project-logo-frame{position:relative;display:grid;width:min(100%,220px);height:118px;place-items:center;padding:15px;overflow:hidden;border:1px solid rgba(255,255,255,.17);border-radius:5px;background:#051417d6;box-shadow:0 14px 32px #0003;color:var(--green);font-family:Consolas,Courier New,monospace;font-size:1.8rem;font-weight:900;transition:border-color .18s ease,transform .18s ease}.project-logo-frame img{position:absolute;inset:15px;display:block;width:calc(100% - 30px);height:calc(100% - 30px);object-fit:contain}.project-logo-frame.has-fallback{background:#11353a}.project-logo-visit{display:inline-flex;min-height:30px;align-items:center;gap:6px;color:#fff;font-size:.7rem;font-weight:900}.project-logo-visit svg{width:14px;height:14px;color:var(--green)}.project-logo-link:hover .project-logo-frame,.project-logo-link:focus-visible .project-logo-frame{border-color:rgba(var(--green-rgb),.86);transform:translateY(-2px)}.project-card-content{display:flex;min-width:0;flex:1;flex-direction:column;align-items:flex-start;padding:21px}.project-card-category{display:inline-flex;min-height:27px;align-items:center;padding:4px 9px;border:1px solid var(--projects-line);border-radius:4px;background:rgba(var(--green-rgb),.065);color:var(--green);font-size:.65rem;font-weight:900}.project-card-content h3{width:100%;margin:13px 0 8px;overflow-wrap:anywhere;color:#fff;font-size:clamp(1.12rem,1.65vw,1.36rem);font-weight:900;line-height:1.45}.project-card-content>p{min-height:4.9em;margin:0;color:#dfeeebb8;font-size:.82rem;line-height:1.85}.project-card-meta{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;padding-block:13px;border-block:1px solid var(--projects-line-soft)}.project-card-meta>span{display:flex;min-width:0;align-items:center;gap:9px}.project-card-meta svg{width:17px;height:17px;flex:0 0 auto;color:var(--green)}.project-card-meta>span>span{display:grid;min-width:0;gap:2px}.project-card-meta small{color:#dfeeeb73;font-size:.59rem}.project-card-meta b{overflow:hidden;color:#ffffffe0;font-family:Consolas,Courier New,monospace;font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}.project-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0 17px}.project-card-tags span{padding:4px 8px;border:1px solid rgba(223,238,235,.14);color:#dfeeeb99;font-family:Consolas,Courier New,monospace;font-size:.59rem}.project-card-action{display:inline-flex;width:100%;min-height:46px;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding:10px 14px;border:1px solid rgba(var(--green-rgb),.44);border-radius:5px;background:rgba(var(--green-rgb),.075);color:#fff;font-size:.78rem;font-weight:900;transition:color .18s ease,background-color .18s ease}.project-card-action svg{width:17px;height:17px;color:var(--green)}.project-card-action:hover,.project-card-action:focus-visible{background:var(--green);color:var(--on-green)}.project-card-action:hover svg,.project-card-action:focus-visible svg{color:currentColor}.projects-empty-state{display:grid;min-height:300px;place-items:center;align-content:center;gap:11px;padding:36px 22px;border:1px dashed var(--projects-line);border-radius:7px;background:#081b1fad;text-align:center}.projects-empty-state[hidden]{display:none}.projects-empty-icon{display:grid;width:58px;height:58px;place-items:center;border:1px solid var(--projects-line);border-radius:5px;background:rgba(var(--green-rgb),.07);color:var(--green)}.projects-empty-state h3,.projects-empty-state p{margin:0}.projects-empty-state h3{color:#fff;font-size:1.25rem}.projects-empty-state p{max-width:590px;color:#dfeeebad;line-height:1.85}.projects-empty-state .btn{margin-top:8px}.portfolio-note{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;padding-top:17px;border-top:1px solid var(--projects-line-soft);color:#dfeeeb94;font-size:.7rem}.portfolio-note[hidden]{display:none}.portfolio-note span{display:inline-flex;align-items:center;gap:7px}.portfolio-note svg{width:15px;height:15px;color:var(--green)}.project-standards{padding:clamp(64px,7vw,92px) 0;border-bottom:1px solid var(--projects-line-soft)}.project-standards:before{background:linear-gradient(rgba(var(--green-rgb),.03) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--green-rgb),.03) 1px,transparent 1px),linear-gradient(180deg,#091d21,#0a2226);background-size:54px 54px,54px 54px,auto}.standards-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.46fr);align-items:end;gap:clamp(30px,5vw,58px);margin-bottom:clamp(34px,5vw,46px)}.standards-heading-copy{min-width:0}.standards-heading h2{margin-top:17px}.standards-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid var(--projects-line-soft);border-radius:6px;background:#05141761}.standards-list article{position:relative;display:grid;min-width:0;min-height:214px;align-content:start;gap:15px;padding:24px 21px;transition:background-color .18s ease}.standards-list article:hover{background:rgba(var(--green-rgb),.055)}.standards-list article+article{border-inline-start:1px solid var(--projects-line-soft)}.standards-list article>span{color:rgba(var(--green-rgb),.62);font-family:Consolas,Courier New,monospace;font-size:.68rem}.standards-list article>svg{width:30px;height:30px;color:var(--green)}.standards-list article>div{display:grid;gap:8px}.standards-list b{color:#fff;font-size:.96rem}.standards-list small{color:#dfeeeba8;font-size:.76rem;line-height:1.75}.standards-list em{margin-top:auto;color:#dfeeeb57;font-family:Consolas,Courier New,monospace;font-size:.59rem;font-style:normal}.projects-contact{padding:clamp(62px,7vw,88px) 0}.projects-contact:before{background:radial-gradient(circle at 78% 42%,rgba(var(--green-rgb),.12),transparent 27%),linear-gradient(125deg,rgba(var(--green-rgb),.075),transparent 48%),#0a2226}.projects-contact-grid{display:grid;grid-template-columns:88px minmax(0,1fr) minmax(250px,.34fr);align-items:center;gap:clamp(28px,5vw,56px);padding-block:6px}.projects-contact-marker{display:grid;width:86px;height:86px;place-items:center;border:1px solid var(--projects-line);border-radius:5px;background:linear-gradient(rgba(var(--green-rgb),.065) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--green-rgb),.065) 1px,transparent 1px);background-size:16px 16px;color:var(--green)}.projects-contact-marker>*{grid-area:1 / 1}.projects-contact-marker>span,.projects-contact-marker>small{display:none}.projects-contact-marker svg{width:31px;height:31px}.projects-contact-copy h2{max-width:680px;margin:17px 0 0;color:#fff;font-size:clamp(2rem,3.5vw,3.1rem);font-weight:900;line-height:1.22}.projects-contact-copy h2 span{color:var(--green)}.projects-contact-copy>p{max-width:690px;margin:14px 0 0;color:#dfeeebb8;line-height:1.9}.projects-contact-actions{display:grid;gap:10px;padding:12px;border:1px solid var(--projects-line-soft);border-radius:6px;background:#05141775}.projects-contact-actions .btn{width:100%;min-height:48px;justify-content:center;gap:10px}@media(max-width:1180px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-showcase-card:last-child:nth-child(odd){width:min(100%,560px);grid-column:1 / -1;justify-self:center}.projects-contact-grid{grid-template-columns:72px minmax(0,1fr)}.projects-contact-marker{width:72px;height:72px}.projects-contact-actions{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,560px)}}@media(max-width:1024px){.projects-heading,.portfolio-heading,.standards-heading{grid-template-columns:1fr;align-items:start;gap:20px}.projects-heading>p,.portfolio-heading>p,.standards-heading>p{max-width:720px}.projects-heading h1{max-width:760px;font-size:clamp(2.35rem,6.2vw,3.45rem)}.standards-list{grid-template-columns:repeat(2,minmax(0,1fr))}.standards-list article:nth-child(3){border-inline-start:0;border-top:1px solid var(--projects-line-soft)}.standards-list article:nth-child(4){border-top:1px solid var(--projects-line-soft)}}@media(max-width:700px){.projects-page .section-code-label{display:none}.projects-stage{padding:16px 0 52px}.projects-page .page-breadcrumb{max-width:100%;margin-bottom:26px;white-space:nowrap}.projects-heading{gap:17px}.projects-heading h1{margin-top:14px;font-size:clamp(2rem,9.2vw,2.55rem);line-height:1.24}.projects-heading>p{padding-inline-start:16px;font-size:.86rem;line-height:1.85}.projects-overview{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:30px}.projects-overview>div{min-height:102px;align-items:center;flex-direction:column;justify-content:center;gap:8px;padding:12px 6px;text-align:center}.projects-overview>div+div{border-top:0;border-inline-start:1px solid var(--projects-line-soft)}.overview-icon{width:36px;height:36px}.overview-icon svg{width:17px;height:17px}.projects-overview b{font-size:.72rem}.projects-overview small{font-size:.58rem}.portfolio-heading h2,.standards-heading h2,.projects-contact-copy h2{font-size:clamp(1.7rem,8vw,2.15rem);line-height:1.34}.portfolio-heading>p,.standards-heading>p,.projects-contact-copy>p{font-size:.84rem}.portfolio-section,.project-standards,.projects-contact{padding-block:58px}.portfolio-grid{grid-template-columns:1fr}.project-showcase-card:last-child:nth-child(odd){width:100%;grid-column:auto}.project-card-visual{min-height:176px}.project-card-content{padding:20px 18px}.project-card-content h3{font-size:1.24rem}.project-card-content>p{min-height:0}.portfolio-note{align-items:flex-start;flex-direction:column}.standards-list{grid-template-columns:1fr}.standards-list article{min-height:118px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px}.standards-list article>span{grid-area:1 / 3}.standards-list article>svg{grid-area:1 / 1}.standards-list article>div{grid-area:1 / 2}.standards-list article>em{display:none}.standards-list article+article,.standards-list article:nth-child(3){border-top:1px solid var(--projects-line-soft);border-inline-start:0}.projects-contact-grid{grid-template-columns:1fr;gap:22px}.projects-contact-marker{display:none}.projects-contact-actions{grid-column:auto;grid-template-columns:1fr;width:100%;padding:10px}}@media(max-width:430px){.projects-kicker{max-width:100%;min-height:31px;padding:5px 10px;font-size:.68rem}.project-card-visual{aspect-ratio:16 / 10;padding:16px}.project-logo-frame{width:min(100%,190px);height:112px}.project-card-meta{grid-template-columns:1fr}.project-card-tags{margin-bottom:16px}.projects-empty-state{min-height:280px;padding-inline:17px}}@media(prefers-reduced-motion:reduce){.project-showcase-card,.project-logo-frame{transition:none}}
