/* Digital services: an editorial split composition in the Esen palette. */
.digital-services { background: var(--bg); }
.digital-topline { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 25px; border-top: 1px solid var(--line); margin-bottom: 42px; }
.digital-topline .eyebrow { margin: 0; font-size: 10px; }
.digital-topline > span { color: var(--subtle); font: 400 9px/1.6 var(--mono); letter-spacing: .12em; }
.digital-editorial { display: grid; grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr); grid-template-areas: "heading artwork" "services artwork"; column-gap: clamp(40px,6vw,96px); row-gap: 38px; align-items: start; padding-bottom: 38px; border-bottom: 1px solid var(--line); }
.digital-heading { grid-area: heading; align-self: end; padding-top: 38px; }
.digital-heading h2 { font-size: clamp(48px,5.35vw,80px); line-height: 1.06; letter-spacing: -.055em; }
.digital-heading h2 span { color: var(--subtle); }
.digital-heading > p { max-width: 450px; margin-top: 27px; color: var(--muted); font-size: 16px; line-height: 1.85; }
.digital-artwork { grid-area: artwork; min-width: 0; width: 100%; max-width: min(520px, calc(100svh - var(--header-height) - 100px)); align-self: center; justify-self: center; }
.digital-artwork picture { overflow: hidden; background: #060d16; border-radius: 2px; }
.digital-artwork img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; transition: transform 1.2s var(--ease); }
.digital-artwork figcaption { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-top: 20px; color: var(--subtle); font: 400 8px/1.6 var(--mono); letter-spacing: .12em; }
.digital-artwork figcaption span:first-child { color: #a7b6c9; }
.digital-service-list { grid-area: services; align-self: start; min-width: 0; }
.digital-service-card { display: grid; grid-template-columns: 22px minmax(0,1fr) 42px; align-items: start; column-gap: 17px; padding: 28px 0; border-top: 1px solid var(--line); transition: border-color .3s ease; }
.digital-service-number { padding-top: 7px; color: var(--subtle); font: 400 10px/1.5 var(--mono); }
.digital-service-copy h3 { font-size: clamp(21px,1.85vw,27px); line-height: 1.3; letter-spacing: -.035em; }
.digital-service-copy > p { max-width: 380px; margin-top: 12px; color: var(--muted); font-size: 13px; line-height: 1.85; }
.digital-service-cta { display: inline-block; margin-top: 15px; color: #c4d4eb; font-size: 11px; line-height: 1.6; }
.digital-service-arrow { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid #ffffff30; border-radius: 50%; color: var(--text); transition: background .3s ease, border-color .3s ease; }
.digital-service-arrow .arrow { width: 18px; height: 18px; }
.digital-service-card:focus-visible { outline: 2px solid var(--blue); outline-offset: 5px; }
.digital-service-card:focus-visible .digital-service-arrow { background: #19283d; border-color: var(--blue); }
@media (hover:hover) and (pointer:fine) {
  .digital-artwork:hover img { transform: scale(1.018); }
  .digital-service-card:hover { border-color: #93b0d280; }
  .digital-service-card:hover .digital-service-arrow { background: #19283d; border-color: #93b0d2; }
  .digital-service-card:hover .arrow { transform: translate(2px,-2px); }
}
@media (max-width:1100px) and (min-width:821px) {
  .digital-editorial { column-gap: 32px; row-gap: 28px; }
  .digital-heading { padding-top: 0; }
  .digital-heading > p { font-size: 14px; margin-top: 22px; }
  .digital-service-card { grid-template-columns: 18px minmax(0,1fr) 32px; gap: 12px; padding-block: 24px; }
  .digital-service-arrow { width: 32px; height: 32px; }
  .digital-service-copy > p { font-size: 12px; }
}
@media (max-width:820px) {
  .digital-editorial { grid-template-columns: minmax(0,1fr); grid-template-areas: "heading" "artwork" "services"; row-gap: 32px; padding-bottom: 12px; }
  .digital-heading { padding-top: 0; }
  .digital-heading h2 { font-size: clamp(48px,9vw,72px); }
  .digital-heading > p { max-width: 520px; font-size: 15px; margin-top: 23px; }
  .digital-topline { margin-bottom: 30px; }
  .digital-artwork { width: 100%; max-width: min(360px, calc(100svh - var(--header-height) - 100px)); justify-self: center; }
  .digital-artwork figcaption { padding-top: 16px; font-size: 7px; }
  .digital-service-copy h3 { font-size: 24px; }
}
@media (max-width:480px) {
  .digital-topline > span { font-size: 7px; letter-spacing: .05em; }
  .digital-topline .eyebrow { font-size: 9px; }
  .digital-service-card { grid-template-columns: 17px minmax(0,1fr) 32px; column-gap: 10px; padding-block: 24px; }
  .digital-service-arrow { width: 32px; height: 32px; }
  .digital-service-copy h3 { font-size: 21px; }
  .digital-service-copy > p { font-size: 13px; }
  .digital-service-cta { font-size: 10px; }
}
@media (prefers-reduced-motion:reduce) {
  .digital-artwork img,.digital-service-card,.digital-service-arrow { transition: none; }
  .digital-artwork:hover img,.digital-service-card:hover .arrow { transform: none; }
}
