/* Services: one compact capability workbench, then working model, evidence, action. */
.services-page{background:#080808;color:#f4f3ec}.services-workbench-section{width:100%;padding:calc(var(--header) + 42px) var(--pad) clamp(62px,6vw,86px)}.services-workbench-shell{width:min(100%,1320px);margin:0 auto}.services-workbench-intro{display:grid;grid-template-columns:minmax(0,.82fr) minmax(280px,.42fr);column-gap:clamp(48px,7vw,110px);align-items:end;margin-bottom:clamp(42px,5vw,66px)}.services-workbench-intro .section-index{grid-column:1/-1}.services-workbench-intro h1{margin:0;max-width:11ch;font-size:var(--morphd-title-page,clamp(45px,5vw,72px));font-weight:400;line-height:.98;letter-spacing:-.045em}.services-workbench-intro>p:last-child{margin:0 0 2px;max-width:46ch;color:#aaa9a4;font-size:14px;line-height:1.65}.services-workbench{display:grid;grid-template-columns:minmax(190px,.56fr) minmax(300px,.92fr) minmax(360px,1fr);gap:clamp(30px,4.5vw,64px);align-items:center;padding-top:22px;border-top:1px solid rgba(255,255,255,.16)}.services-workbench__nav{border-top:1px solid rgba(255,255,255,.14)}.services-workbench__tab{display:flex;align-items:center;width:100%;min-height:58px;padding:0;border:0;border-bottom:1px solid rgba(255,255,255,.14);background:transparent;color:rgba(255,255,255,.42);font:inherit;font-size:clamp(17px,1.45vw,21px);font-weight:400;line-height:1.1;letter-spacing:-.02em;text-align:left;cursor:pointer;transition:color 320ms var(--ease)}.services-workbench__tab:is(:hover,:focus-visible,.is-active){color:#f4f3ec}.services-workbench__tab:focus-visible{outline:1px solid currentColor;outline-offset:4px}.services-workbench__detail{min-width:0}.services-workbench__panel[hidden]{display:none!important}.services-workbench__panel{animation:service-panel-in 320ms cubic-bezier(.2,.72,.2,1) both}.services-workbench__panel h2{margin:0 0 18px;font-size:var(--morphd-title-component,clamp(23px,2.1vw,30px));font-weight:400;line-height:1.08;letter-spacing:-.03em}.services-workbench__panel>p{margin:0 0 24px;max-width:44ch;color:#b3b2ad;font-size:14px;line-height:1.65}.services-workbench__panel ul{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.14)}.services-workbench__panel li{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.11);color:#d4d3ce;font-size:11px;line-height:1.4}.services-workbench__visual{width:100%;aspect-ratio:1/1;margin:0;overflow:hidden;background:#f4f3ec}.services-workbench__visual img{display:block;width:100%;height:100%;object-fit:contain;background:#f4f3ec;opacity:1;transition:opacity 320ms cubic-bezier(.2,.72,.2,1)}.services-workbench__visual img.is-switching{opacity:.12}@keyframes service-panel-in{from{opacity:0}to{opacity:1}}
.services-working-model{background:#f4f3ec;color:#11110f;padding:clamp(62px,6vw,86px) var(--pad)}.services-working-model__inner{width:min(100%,1320px);margin:0 auto}.services-working-model header{max-width:760px;margin-bottom:36px}.services-working-model header h2,.services-evidence header h2{margin:0;max-width:17ch;font-size:var(--morphd-title-section,clamp(35px,3.75vw,54px));font-weight:400;line-height:1.06;letter-spacing:-.04em}.services-working-model__engagements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(17,17,15,.18)}.services-working-model__engagements article{min-height:178px;padding:22px clamp(20px,2.4vw,34px) 22px 0;border-right:1px solid rgba(17,17,15,.16)}.services-working-model__engagements article+article{padding-left:clamp(20px,2.4vw,34px)}.services-working-model__engagements article:last-child{border-right:0}.services-working-model__engagements h3{margin:0 0 48px;font-size:20px;font-weight:400}.services-working-model__engagements p{margin:0;color:#65625b;font-size:12px;line-height:1.62}.services-working-model__boundary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(30px,6vw,90px);margin-top:34px;padding-top:22px;border-top:1px solid rgba(17,17,15,.18)}.services-working-model__boundary p{margin:0;color:#5e5b54;font-size:12px;line-height:1.65}.services-working-model__boundary strong{color:#11110f;font-weight:600}
.services-evidence{padding:clamp(66px,6.5vw,94px) var(--pad);background:#080808;color:#f4f3ec}.services-evidence__inner{width:min(100%,1320px);margin:0 auto}.services-evidence header{margin-bottom:38px}.services-evidence__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.13)}.services-evidence__grid a{display:block;min-width:0;background:#080808;color:inherit}.services-evidence__grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:opacity 220ms ease}.services-evidence__grid a:hover img{opacity:.82}.services-evidence__grid span{display:block;min-height:76px;padding:14px 14px 16px}.services-evidence__grid small{display:block;margin-bottom:8px;color:#8f8e89;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.services-evidence__grid strong{display:block;font-size:15px;font-weight:400;line-height:1.25}
@media(max-width:980px){.services-workbench-intro{grid-template-columns:1fr;gap:20px}.services-workbench{grid-template-columns:minmax(160px,.48fr) minmax(0,1fr);align-items:start}.services-workbench__visual{grid-column:1/-1;grid-row:2;width:min(100%,520px);justify-self:center}.services-workbench__detail{grid-column:2;grid-row:1}.services-workbench__nav{grid-column:1;grid-row:1}}
@media(max-width:680px){.services-workbench-section{padding-top:calc(var(--header) + 26px);padding-bottom:56px}.services-workbench-intro{margin-bottom:32px}.services-workbench-intro>p:last-child{font-size:13px}.services-workbench{display:flex;flex-direction:column;gap:24px}.services-workbench__nav{width:100%;order:1}.services-workbench__tab{min-height:50px;font-size:17px}.services-workbench__visual{width:100%;max-width:420px;order:2;align-self:center}.services-workbench__detail{width:100%;order:3}.services-workbench__panel>p{font-size:13px}.services-working-model__engagements{grid-template-columns:1fr}.services-working-model__engagements article,.services-working-model__engagements article+article{min-height:0;padding:20px 0;border-right:0;border-bottom:1px solid rgba(17,17,15,.16)}.services-working-model__engagements h3{margin-bottom:14px}.services-working-model__boundary{grid-template-columns:1fr;gap:18px}.services-evidence__grid{grid-template-columns:1fr;gap:1px}}
@media(prefers-reduced-motion:reduce){.services-workbench__tab,.services-workbench__visual img,.services-evidence__grid img{transition:none!important}.services-workbench__panel{animation:none!important}}

/* Selected applications are project evidence, not decorative cards. Keep the
   resting state quiet and let colour return deliberately on interaction. */
.services-evidence__grid img {
  opacity: .86;
  filter: saturate(.28) contrast(.96) brightness(.86);
  transition: filter 480ms cubic-bezier(.2,.72,.2,1), opacity 480ms cubic-bezier(.2,.72,.2,1) !important;
}
.services-evidence__grid a:is(:hover,:focus-visible) img {
  opacity: 1;
  filter: saturate(.94) contrast(1) brightness(.98);
}
@media (hover:none), (pointer:coarse) {
  .services-evidence__grid img {
    opacity: .94;
    filter: saturate(.72) contrast(.98) brightness(.94);
  }
}


/* v206 mobile service selector */
@media (max-width: 680px) {
  .services-workbench { gap: 18px !important; }
  .services-workbench__nav {
    order: 1 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    width: calc(100% + var(--pad)) !important;
    margin-right: calc(var(--pad) * -1) !important;
    padding: 0 var(--pad) 8px 0 !important;
    gap: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    border-top: 1px solid rgba(255,255,255,.18) !important;
    border-bottom: 1px solid rgba(255,255,255,.18) !important;
    scrollbar-width: none !important;
    scroll-snap-type: x proximity !important;
  }
  .services-workbench__nav::-webkit-scrollbar { display:none !important; }
  .services-workbench__tab {
    flex: 0 0 auto !important;
    width: auto !important;
    min-height: 50px !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-right: 1px solid rgba(255,255,255,.18) !important;
    font-size: 15px !important;
    white-space: nowrap !important;
    scroll-snap-align: center !important;
  }
  .services-workbench__tab:first-child { padding-left: 0 !important; }
  .services-workbench__visual {
    order: 2 !important;
    width: min(100%, 420px) !important;
    margin-inline: auto !important;
  }
  .services-workbench__detail { order: 3 !important; }
  .services-workbench__panel h2 { font-size: 25px !important; }
  .services-workbench__panel > p { margin-bottom: 18px !important; }
}
