.fieldwork { --ink:#f5f4f0; --red:#ad2c21; }
.fieldwork .actual-sign { display:block; width:100%; height:auto; }
.work-editorial { background:#111a23; color:#fbfaf7; }
.work-pipe { position:relative; isolation:isolate; display:grid; align-items:end; min-height:clamp(510px,56vw,790px); }
.work-image { position:relative; margin:0; min-width:0; background:#17232e; }
.work-image img { display:block; width:100%; height:100%; object-fit:cover; }
.work-image figcaption {
  position:absolute; right:18px; bottom:14px; z-index:2; padding:5px 8px;
  background:#10161ee0; color:#f4f4f1; font-size:11px; letter-spacing:.03em;
}
.work-pipe .work-image { position:absolute; inset:0 0 0 19%; background:none; }
.work-pipe .work-image img { position:absolute; inset:0; z-index:-2; object-position:72% 48%; }
.work-pipe::after {
  content:""; position:absolute; z-index:-1; inset:0; pointer-events:none;
  background:linear-gradient(90deg,#111a23 2%,#111a23e8 23%,#111a2330 61%,transparent 83%),
             linear-gradient(0deg,#111a23b5,transparent 40%);
}
.work-pipe-copy { padding:clamp(38px,8vw,120px) max(24px,7vw); width:min(100%,650px); }
.work-index { display:flex; align-items:center; gap:13px; margin-bottom:22px; color:#d1dbe5; font-size:11px; letter-spacing:.12em; font-weight:700; }
.work-index>span { display:inline-block; font-variant-numeric:tabular-nums; color:#f98372; }
.work-editorial h2 { font:700 clamp(40px,6.7vw,100px)/.98 Manrope,sans-serif; letter-spacing:-.063em; margin:0 0 28px; }
.work-link { display:inline-flex; gap:24px; align-items:center; justify-content:space-between; border-bottom:1px solid currentColor; padding:9px 0; font-size:clamp(14px,1.35vw,17px); font-weight:700; }
.work-link span { display:inline-block; transition:transform .16s ease-out; }
.work-link:hover span, .work-link:focus-visible span { transform:translate(3px,-3px); }
.work-gate { display:grid; grid-template-columns:minmax(250px,2fr) minmax(0,3fr); background:#eae5db; color:#19232b; }
.work-gate-copy { align-self:center; padding:clamp(38px,6vw,92px) 24px clamp(38px,6vw,92px) max(24px,7vw); }
.work-gate-copy .work-index { color:#46515a; }
.work-gate-copy .work-index>span { color:#9a3023; }
.work-gate-copy p { margin:-10px 0 18px; font-size:clamp(15px,1.5vw,20px); }
.work-gate .work-image { min-height:clamp(340px,46vw,610px); }
.work-gate .work-image img { position:absolute; inset:0; object-position:60% center; }
.work-next {
  display:flex; justify-content:space-between; align-items:center; gap:22px; flex-wrap:wrap;
  padding:clamp(32px,5vw,76px) max(24px,7vw); border-bottom:1px solid #42505b; background:#18232c;
}
.work-next .button { font-size:15px; }
.fieldwork .fieldwork-footer { padding:0 max(24px,7vw); background:#151e25; }
.fieldwork-footer .footer-base { border-top:0; margin:0; align-items:center; font-size:12px; color:#d2dbe1; }
.footer-contact, .footer-legal { display:flex; flex-wrap:wrap; gap:12px 20px; }
.fieldwork-footer a:hover { text-decoration:underline; }
.service-index { list-style:none; margin:0; padding:20px 7vw 55px; }
.service-index li { border-bottom:1px solid #4a5861; }
.service-index a {
  display:grid; grid-template-columns:3ch minmax(0,2fr) minmax(0,1fr) auto; align-items:center;
  gap:clamp(10px,2.7vw,40px); padding:clamp(15px,2.5vw,34px) 0; color:#f4f4f0;
}
.service-index a:hover, .service-index a:focus-visible { color:#ffc0b6; }
.service-number { font-size:12px; color:#ff9788; }
.service-name { font:650 clamp(18px,2.8vw,38px)/1.1 Manrope,sans-serif; letter-spacing:-.04em; }
.service-tag { font-size:11px; color:#c9d3da; letter-spacing:.055em; }
.service-brief {
  display:grid; grid-template-columns:1fr 1fr; gap:25px clamp(25px,6vw,90px); padding:clamp(26px,5vw,72px) 7vw;
}
.service-brief h2 { font:650 clamp(22px,3vw,38px)/1.1 Manrope,sans-serif; letter-spacing:-.035em; }
.service-brief ul { padding-left:1.2em; margin-top:16px; color:#d4dde3; }
.service-brief li { margin:.55em 0; }
.service-brief .brief-next { grid-column:1/-1; border-top:1px solid #4a5861; padding-top:22px; }
.brief-next p { max-width:58ch; margin-bottom:20px; color:#d4dde3; }
@media (max-width:650px) {
  .work-pipe { min-height:545px; }
  .work-pipe .work-image { inset:0 0 14%; }
  .work-pipe .work-image img { object-position:67% 45%; }
  .work-pipe::after { background:linear-gradient(0deg,#111a23 6%,#111a23e8 30%,transparent 73%); }
  .work-pipe .work-image figcaption { top:12px; bottom:auto; }
  .work-pipe-copy { padding-bottom:40px; }
  .work-index { margin-bottom:16px; }
  .work-editorial h2 { margin-bottom:22px; }
  .work-gate { grid-template-columns:minmax(0,1fr); }
  .work-gate .work-image { min-height:270px; height:clamp(270px,66vw,420px); }
  .work-gate-copy h2 br { display:none; }
  .work-next { gap:18px 30px; }
  .service-index { padding-inline:24px; }
  .service-index a { grid-template-columns:3ch minmax(0,1fr) auto; }
  .service-tag { display:none; }
  .service-brief { grid-template-columns:minmax(0,1fr); padding-inline:24px; }
}
@media (prefers-reduced-motion:reduce) {
  .work-link span { transition:none; }
}

.work-repair { padding:clamp(35px,6.5vw,95px) max(24px,7vw); background:#202b34; }
.work-editorial .work-repair h2 { font-size:clamp(39px,5vw,76px); margin-bottom:clamp(24px,3.6vw,48px); }
.repair-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(20px,4vw,60px); }
.repair-grid article { min-width:0; border-bottom:1px solid #566570; padding-bottom:22px; }
.repair-grid .work-image { aspect-ratio:1.65; }
.repair-grid .work-image img { position:absolute; inset:0; object-position:50% 52%; }
.repair-grid h3 { margin:19px 0 6px; font:650 clamp(21px,2.5vw,34px)/1.16 Manrope,sans-serif; letter-spacing:-.04em; }
.repair-grid p { color:#d2dde4; margin:0 0 11px; }
.reference-credits { margin-top:24px; font-size:12px; color:#d2dde4; }
.reference-credits summary { cursor:pointer; width:fit-content; }
.reference-credits ul { margin:12px 0 8px; padding-left:18px; }
.reference-credits li { margin:.55em 0; }
.reference-credits a { text-decoration:underline; text-underline-offset:2px; }
@media(max-width:650px) {
  .repair-grid { grid-template-columns:1fr; gap:28px; }
  .repair-grid .work-image { aspect-ratio:1.5; }
}
