/* Services stay in normal flow, outside the scroll-driven character canvas. */
.services{position:relative;padding:70px 4vw 80px;background:var(--bg);border-bottom:1px solid var(--line)}
.services-lead{max-width:950px;font:600 clamp(30px,4.3vw,68px)/1.1 var(--display);letter-spacing:-.045em;margin:42px 0 22px}
.services-intro{max-width:740px;color:var(--muted);margin:0 0 42px;font-size:15px;line-height:1.8}
.service-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:28px;align-items:start;padding:28px 0;border-top:1px solid var(--line)}
.service-number{font:12px/2 var(--mono);color:var(--red)}
.service-row h3{font:500 clamp(20px,2.1vw,32px)/1.25 var(--display);margin:0 0 10px;letter-spacing:-.025em}
.service-row p{max-width:680px;color:var(--muted);margin:0;font-size:14px;line-height:1.7}
.service-price{font:500 clamp(19px,2vw,30px)/1.3 var(--mono);white-space:nowrap}
.services-terms{border-top:1px solid var(--line);padding-top:30px;margin-top:8px;max-width:900px}
.services-terms h3{font-size:17px;font-weight:500}.services-terms ul{padding-left:20px;color:var(--muted);font-size:14px;line-height:1.8}.services-terms li{margin:8px 0}
.services-link{display:inline-flex;gap:35px;margin-top:18px;padding-bottom:8px;border-bottom:2px solid var(--red)}
@media(max-width:700px){.services{padding:40px 20px 50px}.services-lead{margin-top:30px}.service-row{grid-template-columns:26px minmax(0,1fr);gap:12px;padding:24px 0}.service-price{grid-column:2}.services-intro,.service-row p{font-size:13px}.nav nav{gap:12px}.nav nav a{font-size:10px}.nav .brand{gap:10px}}
@media(max-width:420px){.nav{flex-wrap:wrap;height:auto;min-height:78px;gap:12px;padding-top:12px;padding-bottom:12px}.nav nav{order:3;width:100%;justify-content:space-between}.services .section-line h2{font-size:12px}}

.project-footer .case-link{white-space:nowrap}.project-footer:has(.case-link){flex-wrap:wrap}

/* Labelled actions replace repeated arrow ornaments. */
.project-footer>a{display:flex!important;align-items:center;justify-content:space-between;gap:20px;background:transparent!important;border:1px solid #555!important;border-left:3px solid var(--red)!important;padding:14px 18px!important;transition:background .2s,border-color .2s}
.project-footer>a::after{content:'LIVE';font:9px var(--mono);color:#b6b6b6;letter-spacing:.08em}
.project-footer>a.case-link::after{content:'CASE'}
.project-footer>a:hover,.project-footer>a:focus-visible{background:#242020!important;border-color:var(--red)!important}
.project-footer>a::before{content:none!important}
.project-title{padding-right:0}
.text-link span:empty,.hero-right>a span:empty,.street-contact span:empty,.services-link span:empty,.glitch span:empty{display:none}
.glitch::before,.glitch::after{content:none!important}
.services-link,.text-link{transition:border-color .2s}.services-link:hover,.text-link:hover{border-bottom-color:#fff}

/* Quiet the repeated decoration while preserving all text and the character motion. */
.project-footer>a::after{content:none!important}
.project-footer>a{border:0!important;border-bottom:1px solid #555!important;padding:12px 0!important;justify-content:flex-start;background:transparent!important}
.project-footer>a:hover,.project-footer>a:focus-visible{background:transparent!important;border-bottom-color:var(--red)!important}
.project-footer>a.case-link{color:#fff!important}.project-footer>a:not(.case-link){color:#b6b6b6!important}
.project-visual,.js .project-visual{border:0!important}
.project{border-left:0!important;border-right:0!important}
.person-label{border:0;background:transparent;padding-left:0}
.selection{border-color:transparent!important}.corner{display:none}
.hero-intro .bracket{font-size:30px;opacity:.45}
.street-stamp{box-shadow:none!important;border:0!important}
.project-meta{border-bottom:0}.project-title>a{border:0!important}

/* Restore the original contact hover and give project actions a clear target. */
.contact .glitch::before,.contact .glitch::after{content:attr(data-text)!important}
.project .project-footer,.js .project .project-footer{display:flex!important;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;flex-wrap:wrap!important;gap:14px!important}
.project .project-footer>span{flex-basis:100%;margin-bottom:8px}
.project .project-footer>a,.js .project .project-footer>a{display:inline-flex!important;justify-content:center!important;align-items:center!important;min-height:54px!important;padding:15px 25px!important;font:500 15px/1.35 Inter,Arial,sans-serif!important;border:1px solid #777!important;color:#fff!important;background:#181818!important;margin:0!important;min-width:175px!important;transition:background .2s,border-color .2s,color .2s!important}
.project .project-footer>a.case-link,.js .project .project-footer>a.case-link{background:var(--red)!important;border-color:var(--red)!important;color:#fff!important}
.project .project-footer>a:hover,.project .project-footer>a:focus-visible{border-color:#fff!important;background:#303030!important}
.project .project-footer>a.case-link:hover,.project .project-footer>a.case-link:focus-visible{background:#a9344c!important;border-color:#a9344c!important}
@media(max-width:600px){.project .project-footer>a{flex:1 1 170px!important;min-width:0!important;font-size:14px!important}}
@media(max-width:700px){
 .project .project-footer,.js .project .project-footer{gap:10px!important}
 .project .project-footer>a,.js .project .project-footer>a{flex:1 1 100%!important;min-width:0!important;min-height:50px!important;font-size:15px!important;padding:14px 18px!important;text-align:center;white-space:normal}
 .project-description h4{overflow-wrap:break-word}
 .case-facts>div{grid-template-columns:85px minmax(0,1fr)}
 .case-facts dd{overflow-wrap:break-word}
 .services .section-line{flex-wrap:wrap}
 .service-price{white-space:normal}
 .contact .glitch{min-height:58px}
 .nav nav a{display:inline-flex;align-items:center;min-height:44px}
 .nav{height:auto;min-height:78px;flex-wrap:wrap;gap:8px;padding-top:10px;padding-bottom:10px}
 .nav nav{order:3;width:100%;justify-content:space-between;gap:8px}
 .nav nav a{font-size:12px}
 .nav .language-switch button{min-width:40px;min-height:40px}
}

.brand-mark{display:block;width:48px;height:48px;flex-shrink:0}.nav .brand{gap:16px}@media(max-width:700px){.brand-mark{width:40px;height:40px}}

/* Shallower covers keep the description within reach. */
.project-visual,.js .project-visual{position:relative!important;aspect-ratio:16/8!important;height:auto!important;max-height:360px;overflow:hidden;display:block}
.project-visual img,.js .project-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:none!important;transition:filter .25s ease!important}
.project-visual::after{content:attr(data-case-label);position:absolute;left:20px;bottom:18px;background:#121212ed;color:#fff;border-bottom:2px solid var(--red);padding:10px 14px;font:500 14px/1.4 Inter,Arial,sans-serif;opacity:0;transition:opacity .2s ease;pointer-events:none}
@media(hover:hover){.project-visual:hover img{filter:brightness(1.12)}.project-visual:hover::after{opacity:1}}
.project-visual:focus-visible::after{opacity:1}
html[lang=en] .project-visual::after{content:'Explore the project'}
@media(max-width:700px){.project-visual,.js .project-visual{aspect-ratio:16/10!important;max-height:280px}.project-visual::after{left:12px;bottom:12px;font-size:12px;padding:8px 10px}}
@media(hover:none){.project-visual::after{opacity:1}}
@media(prefers-reduced-motion:reduce){.project-visual img,.project-visual::after{transition:none!important}}

/* Pricing is a compact reading section rather than another hero. */
.services{padding-top:48px;padding-bottom:50px}
.services-lead{font-size:clamp(28px,3vw,44px);line-height:1.18;max-width:850px;margin:28px 0 18px;letter-spacing:-.035em}
.services-intro{margin-bottom:28px;font-size:14px;max-width:740px}
.service-row{padding:22px 0;gap:22px}
.service-row h3{font-size:clamp(20px,1.65vw,26px);line-height:1.3;margin-bottom:8px}
.service-price{font-size:clamp(19px,1.65vw,25px);line-height:1.4}
.service-row p{font-size:14px;max-width:680px}
@media(max-width:700px){.services{padding:32px 20px 38px}.services-lead{font-size:28px;margin-top:24px}.service-row{padding:20px 0;gap:10px 12px}.service-row h3{font-size:20px}.service-price{font-size:21px}.service-row p,.services-intro{font-size:14px}}
