.portfolio-filters{display:flex;flex-wrap:wrap;gap:9px;margin:-28px 0 32px}
.portfolio-filters button{border:1px solid #323232;background:#0c0c0c;color:#aaa;padding:10px 14px;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700;cursor:pointer;transition:.22s}
.portfolio-filters button:hover,.portfolio-filters button.active{color:#fff;border-color:var(--red);background:rgba(242,13,25,.1)}
.portfolio-note{max-width:760px;margin:-14px 0 30px;color:#777;font-size:.82rem;line-height:1.5}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%;min-width:0}
.portfolio-card{position:relative;width:100%;max-width:100%;min-width:0;min-height:330px;padding:27px;border:1px solid var(--line);background:linear-gradient(145deg,#121212,#090909);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .3s,border-color .3s,opacity .22s}
.portfolio-card:before{content:"";position:absolute;inset:auto -70px -110px auto;width:210px;height:210px;border:1px solid rgba(242,13,25,.18);border-radius:50%;transition:.35s}
.portfolio-card:hover{transform:translateY(-5px);border-color:#64151a}
.portfolio-card:hover:before{transform:scale(1.18)}
.portfolio-card.featured{grid-column:span 2;background:radial-gradient(circle at 85% 10%,rgba(242,13,25,.3),transparent 36%),linear-gradient(145deg,#171717,#090909)}
.portfolio-card.is-hidden{display:none}
.case-kind{position:relative;z-index:1;color:#918d87;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:700;overflow-wrap:anywhere}
.portfolio-card>div{position:relative;z-index:1;margin-top:52px;max-width:600px}
.portfolio-card p{color:var(--red);font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:10px}
.portfolio-card h3{font-size:clamp(1.45rem,2.4vw,2.35rem);line-height:1.06;letter-spacing:-.045em;margin:0;overflow-wrap:anywhere}
.portfolio-card small{display:block;color:#999;font-size:.9rem;line-height:1.55;margin-top:16px;max-width:460px}
.portfolio-card ul{list-style:none;margin:18px 0 0;padding:0;color:#aaa;font-size:.88rem}
.portfolio-card li{padding:7px 0;border-top:1px solid #292929}
.case-link{position:absolute;z-index:3;right:22px;top:18px;display:inline-flex;align-items:center;gap:9px;border:1px solid #3b3b3b;padding:8px 11px;color:#fff;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:800;transition:.22s}
.case-link span{color:var(--red);font-size:1rem;line-height:1}
.case-link:hover,.case-link:focus-visible{border-color:var(--red);background:var(--red);outline:none}.case-link:hover span,.case-link:focus-visible span{color:#fff}
.services-intro{max-width:530px;margin:26px 0 0;color:#999;font-size:1rem}
.authority-panel{min-height:610px;border:1px solid var(--line);background:radial-gradient(circle at 70% 20%,rgba(242,13,25,.28),transparent 40%),linear-gradient(145deg,#151515,#090909);padding:45px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}
.authority-panel:after{content:"GIT";position:absolute;right:-28px;bottom:-48px;font-family:var(--display);font-size:15rem;line-height:1;color:rgba(255,255,255,.025);letter-spacing:-.1em}
.authority-panel>strong{font-family:var(--display);font-size:clamp(3rem,5vw,5.5rem);line-height:.88;letter-spacing:-.06em;text-transform:uppercase;position:relative;z-index:1}
.authority-panel>strong span{color:var(--red)}
.authority-list{display:grid;position:relative;z-index:1}
.authority-list span{padding:13px 0;border-top:1px solid #303030;color:#aaa;font-size:.88rem}
@media(max-width:980px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.authority-panel{min-height:520px}}
@media(max-width:760px){.portfolio-grid{grid-template-columns:minmax(0,1fr)}.portfolio-card,.portfolio-card.featured{grid-column:auto}}
@media(max-width:680px){.portfolio-filters{margin:-12px 0 26px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.portfolio-filters button{text-align:left;min-width:0;white-space:normal}.portfolio-note{margin-top:-10px}.portfolio-card,.portfolio-card.featured{min-height:300px;padding:23px}.portfolio-card>div{margin-top:26px}.case-link{position:static;align-self:flex-start;margin-top:16px}.authority-panel{min-height:470px;padding:28px}.authority-panel:after{font-size:10rem}}
@media(prefers-reduced-motion:reduce){.portfolio-card,.portfolio-filters button{transition:none}}
