/* Portfolio: original client artwork, clear categories, accessible static pages. */
.portfolio-all{display:inline-flex;gap:30px;align-items:center;margin-top:20px;font-size:1rem;color:#fff;border-bottom:1px solid #73777c;padding-bottom:7px}.portfolio-all:hover{color:#ff5962;border-color:#ff5962}.projects .section-heading>div>p{color:#b2b6bd;margin:0;line-height:1.8}.projects .section-heading .eyebrow{margin-bottom:27px}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 28px}.portfolio-card{min-width:0}.portfolio-card[hidden]{display:none}.portfolio-card>a{display:block;height:100%;border-bottom:1px solid #34383d}.portfolio-image{aspect-ratio:1752/1080;background:#fff;overflow:hidden;border-radius:3px}.portfolio-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .35s ease}.portfolio-card a:hover img{transform:scale(1.035)}.portfolio-copy{padding:21px 0 25px}.portfolio-category{font-size:.8125rem;color:#b2b6bd;margin:0 0 9px}.portfolio-copy h3{font:500 clamp(1.125rem,1.6vw,1.5rem)/1.5 var(--latin);letter-spacing:-.02em;margin:0;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.portfolio-copy h3>span{font-size:1.3rem;color:#ff5962;flex-shrink:0}.portfolio-systems{color:#b2b6bd;font-size:.875rem;margin:12px 0 0;line-height:1.8}.portfolio-systems:empty{display:none}.portfolio-page{background:#101214;color:#fff}.portfolio-page .header{position:relative}.portfolio-page .header-inner{border-bottom:1px solid #35383c}.portfolio-page nav a[aria-current="page"]{color:#ff5962}.portfolio-intro{padding-block:52px 54px}.breadcrumb{display:inline-block;color:#b2b6bd;font-size:.875rem;margin-bottom:42px}.breadcrumb:hover{color:white}.portfolio-intro .eyebrow,.project-detail .eyebrow{color:#b2b6bd;margin-bottom:20px}.portfolio-title{display:flex;justify-content:space-between;align-items:flex-end;gap:35px}.portfolio-title h1{font:500 clamp(2.6rem,5vw,5rem)/1.5 var(--font);letter-spacing:0;margin:0}.portfolio-title h1>span{color:#ff4f5a}.portfolio-title>p{margin:0 0 17px;display:flex;flex-direction:column;align-items:flex-end;color:#b2b6bd}.portfolio-title strong{font:400 clamp(4rem,8vw,8rem)/1 var(--latin);color:#fff;letter-spacing:-.07em}.portfolio-title>p>span{font-size:.875rem;margin-top:9px}.portfolio-lead{color:#b2b6bd;font-size:1.0625rem;line-height:1.9;margin:22px 0 0}.portfolio-catalog{padding-bottom:110px}.portfolio-filters{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid #35383c;padding-top:28px}.portfolio-filters[hidden]{display:none}.portfolio-filters button{color:#bfc3c8;font-size:.875rem;background:transparent;border:1px solid #3d4146;border-radius:3px;padding:10px 15px;cursor:pointer;display:flex;gap:12px;align-items:center;transition:background .2s,color .2s}.portfolio-filters button span{font:400 .75rem var(--latin);opacity:.8}.portfolio-filters button:hover{color:white;background:#23272c}.portfolio-filters button[aria-pressed="true"]{color:white;background:#ed1722;border-color:#ed1722}.portfolio-result{font-size:.875rem;color:#b2b6bd;margin:26px 0}.project-detail{padding-block:52px 110px}.project-detail h1{font:500 clamp(2.25rem,4.8vw,4.8rem)/1.2 var(--latin);letter-spacing:-.045em;max-width:1100px;margin:0 0 45px;overflow-wrap:anywhere}.project-detail-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:65px;align-items:start}.project-detail-image{background:white;margin:0;border-radius:3px;overflow:hidden}.project-detail-image img{width:100%;height:auto;display:block}.project-fact{border-top:1px solid #35383c;padding-block:22px}.project-fact h2{font:500 .875rem/1.8 var(--font);color:#b2b6bd;margin:0 0 12px}.project-fact p{font-size:1.125rem;margin:0}.project-fact ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.project-fact li{font-size:1rem}.project-facts .button{margin-top:17px;width:100%;max-width:350px}.detail-back{display:block;color:#b2b6bd;font-size:.875rem;margin-top:23px}.detail-back:hover{color:white}
@media(max-width:1050px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-detail-layout{gap:35px;grid-template-columns:1.15fr 1fr}}
@media(max-width:700px){.portfolio-grid{gap:30px 20px}.portfolio-title{align-items:flex-start}.portfolio-title h1{font-size:2.3rem}.portfolio-title strong{font-size:4rem}.portfolio-title>p{margin-top:8px}.portfolio-title>p>span{font-size:.75rem}.portfolio-intro{padding-block:30px 38px}.breadcrumb{margin-bottom:32px}.portfolio-lead{font-size:1rem}.project-detail{padding-block:30px 65px}.project-detail h1{font-size:2.5rem;margin-bottom:30px}.project-detail-layout{grid-template-columns:1fr;gap:30px}.portfolio-catalog{padding-bottom:65px}.portfolio-copy h3{font-size:1.2rem}.portfolio-filters{gap:8px}.portfolio-filters button{padding:9px 12px}}
@media(max-width:480px){.portfolio-grid{grid-template-columns:1fr}.portfolio-copy h3{font-size:1.4rem}.portfolio-title{gap:20px}.portfolio-title h1{font-size:1.85rem}.portfolio-title strong{font-size:3.5rem}.portfolio-title>p{flex-shrink:0}.portfolio-title>p>span{font-size:.75rem}.portfolio-copy{padding-top:18px}.portfolio-image{border-radius:2px}.portfolio-filters button{font-size:.875rem}.project-detail h1{font-size:2.2rem}.project-facts .button{max-width:100%}}
@media(prefers-reduced-motion:reduce){.portfolio-image img{transition:none}}
/* Original customer logos: unaltered color, protected proportions. */
.client-trust{background:#fff;color:var(--ink);padding-block:58px 62px;border-bottom:1px solid #e6e8e9}.client-trust-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:34px}.client-trust-heading .eyebrow{margin:0;color:var(--muted)}.client-trust-heading h2{font-size:1.375rem;font-weight:500;line-height:1.6}.client-logo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px 28px;align-items:center}.client-logo{display:flex;align-items:center;justify-content:center;min-width:0;min-height:105px;padding:12px 16px}.client-logo img{display:block;width:100%;max-width:155px;height:78px;object-fit:contain;object-position:center}.project-title-row{display:flex;align-items:center;gap:30px;margin-bottom:45px}.project-detail .project-title-row h1{margin:0;min-width:0}.project-client-logo{display:flex;align-items:center;justify-content:center;width:180px;min-width:180px;height:112px;padding:18px;background:white;border-radius:3px}.project-client-logo img{display:block;width:100%;height:100%;object-fit:contain}.project-title-row:has(.project-client-logo) h1{font-size:clamp(2rem,4vw,4rem)}
@media(max-width:1050px){.client-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 22px}.project-title-row{gap:25px}}
@media(max-width:700px){.client-trust{padding-block:40px}.client-trust-heading{display:block;margin-bottom:23px}.client-trust-heading .eyebrow{margin-bottom:9px}.client-trust-heading h2{font-size:1.25rem}.client-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 12px}.client-logo{min-height:90px;padding:8px 5px}.client-logo img{height:64px;max-width:125px}.project-title-row{align-items:flex-start;flex-direction:column;gap:22px;margin-bottom:30px}.project-client-logo{width:150px;min-width:150px;height:96px;padding:15px}.project-title-row:has(.project-client-logo) h1{font-size:2.5rem}}
@media(max-width:380px){.client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-title-row:has(.project-client-logo) h1{font-size:2.2rem}}
/* Give original 200 × 150 logo panels enough room to remain readable. */
.client-logo{min-height:132px;padding:6px 10px}.client-logo img{height:120px;max-width:180px}.project-client-logo{width:200px;min-width:200px;height:130px;padding:8px}
@media(max-width:700px){.client-logo{min-height:101px;padding:8px 5px}.client-logo img{height:85px;max-width:125px}.project-client-logo{width:170px;min-width:170px;height:112px;padding:5px}}

.client-logo-captioned{flex-direction:column;gap:10px}.client-logo-captioned img{height:85px;max-width:160px}.client-caption{font-size:.875rem;line-height:1.6;text-align:center;color:#4f565d}.client-logo-captioned{align-self:stretch;justify-content:flex-start}@media(max-width:700px){.client-logo-captioned img{height:66px}.client-logo-captioned{gap:8px}.client-caption{font-size:.875rem}}

.client-logo-dark img{background:#18212b;border-radius:3px;padding:10px}

.client-logo-slate img{background:#839298;border-radius:3px;padding:8px}
