/* Portfolio filters and image-led project cards — v2.9.20 */
.post-type-archive-project .tv-section{padding-top:58px}
.tv-portfolio-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 auto 38px;max-width:1120px}
.tv-portfolio-tabs a{display:inline-flex;align-items:center;gap:9px;padding:12px 18px;border:1px solid #d7e4ef;border-radius:999px;background:#fff;color:#173553;font-size:14px;font-weight:800;box-shadow:0 8px 24px rgba(5,37,75,.06);transition:transform .25s,border-color .25s,background .25s,color .25s}
.tv-portfolio-tabs a:hover,.tv-portfolio-tabs a:focus-visible{transform:translateY(-2px);border-color:#17bddc;color:#0867d9;outline:0}
.tv-portfolio-tabs a.is-active{border-color:transparent;background:linear-gradient(115deg,#0867d9,#793cff);color:#fff;box-shadow:0 12px 30px rgba(55,76,232,.24)}
.tv-portfolio-tabs span{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:rgba(8,103,217,.09);font-size:11px}
.tv-portfolio-tabs a.is-active span{background:rgba(255,255,255,.18)}
#portfolio-grid{scroll-margin-top:190px}
.post-type-archive-project .tv-portfolio-grid,.tv-service-projects .tv-portfolio-grid{align-items:stretch!important}
.post-type-archive-project .tv-work-card,.tv-service-projects .tv-work-card{height:auto!important;min-height:0!important;aspect-ratio:16/11;margin-top:0!important;border-radius:24px;background:#061b32}
.post-type-archive-project .tv-work-card img,.tv-service-projects .tv-work-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.post-type-archive-project .tv-work-card:after,.tv-service-projects .tv-work-card:after{background:linear-gradient(180deg,rgba(3,18,36,.03) 24%,rgba(3,18,36,.93) 100%)}
.post-type-archive-project .tv-work-content,.tv-service-projects .tv-work-content{padding:24px}
.post-type-archive-project .tv-work-content p,.tv-service-projects .tv-work-content p{display:none}
.post-type-archive-project .tv-plus,.tv-service-projects .tv-plus{margin-bottom:14px}
.tv-portfolio-empty{text-align:center;padding:50px;border:1px dashed #b9cce0;border-radius:20px;color:#607086}
.tv-service-projects .tv-section-action{margin-top:34px}
@media(max-width:900px){#portfolio-grid{scroll-margin-top:150px}.tv-portfolio-tabs{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding:0 2px 10px;scrollbar-width:thin}.tv-portfolio-tabs a{flex:0 0 auto}.post-type-archive-project .tv-work-card,.tv-service-projects .tv-work-card{aspect-ratio:16/12}}
@media(max-width:620px){.post-type-archive-project .tv-section{padding-top:42px}.tv-portfolio-tabs{margin-bottom:26px}.tv-portfolio-tabs a{padding:10px 15px}.post-type-archive-project .tv-work-card,.tv-service-projects .tv-work-card{aspect-ratio:16/11}.post-type-archive-project .tv-work-content,.tv-service-projects .tv-work-content{padding:20px}}
