/* Work With Digby: page composition only. The shared Command Room layer owns
   typography, chrome, material-heading texture, cursor, footer, and motion. */

.work-with-digby-command {
  background:
    radial-gradient(circle at 85% 5%, rgba(145, 165, 188, .06), transparent 27rem),
    radial-gradient(circle at 12% 53%, rgba(255, 255, 255, .025), transparent 34rem),
    var(--cr-ink);
}

.work-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: min(47rem, 88svh);
  padding-top: 5.1rem;
  border-bottom: 1px solid var(--cr-line);
  background:
    radial-gradient(circle at 78% 38%, rgba(211, 220, 232, .17), transparent 0 10rem),
    radial-gradient(circle at 80% 39%, rgba(118, 191, 255, .08), transparent 0 25rem),
    radial-gradient(circle at 9% 91%, rgba(208, 178, 126, .045), transparent 25rem),
    #050505;
}

.work-hero::before,
.work-hero::after {
  position: absolute;
  z-index: -2;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 50%;
  content: '';
  pointer-events: none;
}

.work-hero::before {
  top: -35rem;
  right: -10rem;
  width: min(69rem, 74vw);
  aspect-ratio: 1;
  box-shadow: inset 0 0 10rem rgba(255, 255, 255, .032), 0 0 7rem rgba(118, 191, 255, .045);
}

.work-hero::after {
  top: -15rem;
  right: 17vw;
  width: min(40rem, 50vw);
  aspect-ratio: 1;
}

.work-hero__seal {
  position: absolute;
  z-index: -1;
  right: clamp(-8rem, 3vw, 3rem);
  bottom: clamp(-17rem, -16vw, -9rem);
  width: min(48vw, 38rem);
  opacity: .19;
  filter: grayscale(1) contrast(1.16) brightness(1.3);
  mix-blend-mode: screen;
  pointer-events: none;
  transform: rotate(-11deg);
}

.work-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(19rem, .58fr);
  gap: clamp(2.5rem, 8vw, 9.5rem);
  align-items: end;
  min-height: inherit;
  padding-block: clamp(7.4rem, 15vh, 11.5rem) clamp(4.25rem, 8vh, 6.25rem);
}

.work-hero__copy { max-width: 45rem; }

.work-hero h1 {
  max-width: 7.6ch;
  margin: 1rem 0 1.45rem;
  font-family: var(--cr-display);
  font-size: clamp(4rem, 8.8vw, 9.25rem);
  font-weight: 500;
  letter-spacing: -.082em;
  line-height: .85;
}

.work-hero__lede {
  max-width: 41rem;
  margin: 0;
  color: var(--cr-silver);
  font-size: clamp(1rem, 1.45vw, 1.2rem);
  line-height: 1.76;
}

.work-hero__actions,
.work-close__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 2rem;
}

.work-hero__note {
  max-width: 38rem;
  margin: 1rem 0 0;
  color: var(--cr-quiet);
  font-size: .74rem;
  line-height: 1.65;
}

.work-hero__route {
  display: grid;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .19);
  background: linear-gradient(140deg, rgba(255, 255, 255, .115), rgba(7, 8, 10, .52));
  box-shadow: 0 1.8rem 4rem rgba(0, 0, 0, .36), inset 0 1px rgba(255, 255, 255, .15);
  backdrop-filter: blur(19px) saturate(140%);
}

.work-hero__route > .cr-overline { margin: 0; padding: 1.3rem 1.4rem; border-bottom: 1px solid rgba(255, 255, 255, .14); }
.work-hero__route ol { display: grid; margin: 0; padding: 0; list-style: none; }
.work-hero__route li { display: grid; grid-template-columns: 1.9rem minmax(0, 1fr); gap: .85rem; padding: 1.05rem 1.4rem; border-bottom: 1px solid rgba(255, 255, 255, .12); }
.work-hero__route li:last-child { border-bottom: 0; }
.work-hero__route li > span { color: var(--cr-quiet); font-family: var(--cr-display); font-size: 1.1rem; line-height: 1; }
.work-hero__route strong { display: block; color: var(--cr-silver); font-size: .78rem; font-weight: 700; letter-spacing: .025em; }
.work-hero__route p { margin: .32rem 0 0; color: var(--cr-quiet); font-size: .72rem; line-height: 1.55; }

.work-intro {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  gap: clamp(2.25rem, 8vw, 10rem);
  align-items: start;
  padding-block: clamp(5.25rem, 10vw, 10rem);
  border-bottom: 1px solid var(--cr-line);
}

.work-intro h2,
.work-section-head h2 {
  max-width: 10.4ch;
  margin: .95rem 0 0;
  font-family: var(--cr-display);
  font-size: clamp(2.55rem, 5vw, 5.8rem);
  font-weight: 500;
  letter-spacing: -.07em;
  line-height: .92;
}

.work-intro__copy { display: grid; gap: 1.3rem; padding-top: .3rem; }
.work-intro__copy > p { max-width: 45rem; margin: 0; color: var(--cr-muted); font-size: clamp(1rem, 1.36vw, 1.18rem); line-height: 1.78; }
.work-intro__signals { display: flex; flex-wrap: wrap; gap: .55rem; }
.work-intro__signals span { display: inline-flex; align-items: center; min-height: 2.2rem; padding: .48rem .75rem; border: 1px solid rgba(255, 255, 255, .13); border-radius: 999px; color: var(--cr-silver); background: rgba(255, 255, 255, .035); font-size: .64rem; font-weight: 700; letter-spacing: .075em; text-transform: uppercase; }

.work-profiles,
.work-companies,
.work-reviews { padding-block: clamp(5rem, 9vw, 9rem); border-bottom: 1px solid var(--cr-line); }
.work-profiles { background: linear-gradient(145deg, rgba(255, 255, 255, .035), transparent 52%); }
.work-companies { background: var(--cr-ink-raised); }
.work-reviews { background: linear-gradient(145deg, rgba(255, 255, 255, .04), transparent 48%); }

.work-section-head {
  display: flex;
  justify-content: space-between;
  gap: 2.5rem;
  align-items: end;
  margin-bottom: clamp(2.7rem, 5vw, 4.15rem);
}

.work-section-head > p {
  max-width: 31rem;
  margin: 0;
  color: var(--cr-muted);
  font-size: .98rem;
  line-height: 1.72;
}

.work-profile-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid var(--cr-line);
}

.work-profile-card,
.work-review-card {
  position: relative;
  display: flex;
  min-height: 22rem;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(1.5rem, 3.25vw, 3rem);
  background: linear-gradient(140deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .008) 66%, transparent);
}

.work-profile-card + .work-profile-card { border-left: 1px solid var(--cr-line); }
.work-profile-card::before,
.work-review-card::before {
  position: absolute;
  right: -7rem;
  bottom: -7rem;
  width: 15rem;
  aspect-ratio: 1;
  border: 1px solid rgba(255, 255, 255, .15);
  border-radius: 50%;
  box-shadow: inset 0 0 3rem rgba(255, 255, 255, .025);
  content: '';
  transition: border-color 200ms ease, transform 500ms cubic-bezier(.16, 1, .3, 1);
}

.work-profile-card:hover::before,
.work-review-card:hover::before { border-color: rgba(118, 191, 255, .58); transform: translate(-.7rem, -.7rem) scale(1.08); }
.work-card__eyebrow { margin: 0 0 1.2rem; color: var(--cr-quiet); font-size: .63rem; font-weight: 700; letter-spacing: .14em; line-height: 1.45; text-transform: uppercase; }
.work-profile-card h3,
.work-review-card h3 { position: relative; z-index: 1; max-width: 10ch; margin: 0; font-family: var(--cr-display); font-size: clamp(2.15rem, 4vw, 4.15rem); font-weight: 500; letter-spacing: -.065em; line-height: .9; }
.work-profile-card > p:not(.work-card__eyebrow),
.work-review-card > p:not(.work-card__eyebrow):not(.work-google) { position: relative; z-index: 1; max-width: 29rem; margin: 1.1rem 0 1.75rem; color: var(--cr-muted); font-size: .92rem; line-height: 1.7; }
.work-profile-card > a,
.work-review-card:not(.work-review-card--google) > a { position: relative; z-index: 1; display: inline-flex; gap: .65rem; align-items: center; margin-top: auto; padding-bottom: .25rem; border-bottom: 1px solid rgba(255, 255, 255, .42); color: var(--cr-white); font-size: .75rem; font-weight: 700; letter-spacing: .025em; line-height: 1.35; transition: border-color 160ms ease, color 160ms ease; }
.work-profile-card > a:hover,
.work-profile-card > a:focus-visible,
.work-review-card:not(.work-review-card--google) > a:hover,
.work-review-card:not(.work-review-card--google) > a:focus-visible { border-color: rgba(118, 191, 255, .8); color: #dceeff; }
.work-profile-card > a b,
.work-review-card > a b { font-size: 1rem; font-weight: 500; }

.work-company-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--cr-line); }
.work-company { position: relative; display: grid; grid-template-columns: 1.9rem minmax(0, 1fr) auto; gap: .8rem; min-height: 13rem; align-items: start; padding: 1.55rem; background: linear-gradient(145deg, rgba(255, 255, 255, .04), transparent 68%); transition: background-color 200ms ease; }
.work-company:nth-child(n + 4) { border-top: 1px solid var(--cr-line); }
.work-company:not(:nth-child(3n + 1)) { border-left: 1px solid var(--cr-line); }
.work-company:hover,
.work-company:focus-visible { background-color: rgba(118, 191, 255, .07); }
.work-company__number { color: var(--cr-quiet); font-family: var(--cr-display); font-size: 1.1rem; line-height: 1; }
.work-company h3 { max-width: 9.5ch; margin: 0; font-family: var(--cr-display); font-size: clamp(1.7rem, 2.85vw, 2.8rem); font-weight: 500; letter-spacing: -.058em; line-height: .93; }
.work-company h3 sup { position: relative; top: -.52em; margin-left: .1em; color: var(--cr-silver); font-family: var(--cr-sans); font-size: .33em; font-weight: 700; letter-spacing: 0; }
.work-company p { margin: .8rem 0 0; color: var(--cr-quiet); font-size: .77rem; line-height: 1.58; }
.work-company > b { display: grid; width: 1.8rem; height: 1.8rem; place-items: center; border: 1px solid rgba(255, 255, 255, .2); border-radius: 50%; color: var(--cr-silver); font-size: .75rem; font-weight: 500; transition: border-color 160ms ease, color 160ms ease, transform 160ms ease; }
.work-company:hover > b,
.work-company:focus-visible > b { border-color: rgba(118, 191, 255, .8); color: #dceeff; transform: translate(.12rem, -.12rem); }

.work-review-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--cr-line); }
.work-review-card { min-height: 25rem; }
.work-review-card { border-top: 1px solid var(--cr-line); border-left: 1px solid var(--cr-line); }
.work-review-card:nth-child(1),
.work-review-card:nth-child(2) { border-top: 0; }
.work-review-card:nth-child(1),
.work-review-card:nth-child(3) { border-left: 0; }
.work-review-card--google { grid-column: span 2; background: radial-gradient(circle at 83% 18%, rgba(66, 133, 244, .12), transparent 0 12rem), linear-gradient(145deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .008) 67%, transparent); }
.work-google { display: inline-flex; gap: .005em; margin: 0 0 1.15rem; font-family: Arial, sans-serif; font-size: clamp(2.1rem, 4vw, 3.6rem); font-weight: 700; letter-spacing: -.07em; line-height: 1; }
.work-google span:nth-child(1), .work-google span:nth-child(4) { color: #4285f4; }
.work-google span:nth-child(2), .work-google span:nth-child(6) { color: #ea4335; }
.work-google span:nth-child(3) { color: #fbbc05; }
.work-google span:nth-child(5) { color: #34a853; }
.work-review-card--google .cr-cta { position: relative; z-index: 1; margin-top: auto; }

.work-close { position: relative; overflow: hidden; border-bottom: 1px solid var(--cr-line); }
.work-close::before { position: absolute; top: 50%; left: 50%; width: min(77vw, 76rem); aspect-ratio: 1; border: 1px solid rgba(255, 255, 255, .11); border-radius: 50%; box-shadow: 0 0 8rem rgba(118, 191, 255, .04); content: ''; transform: translate(-50%, -51%); }
.work-close__inner { position: relative; display: grid; justify-items: center; max-width: 67rem; margin: 0 auto; padding-block: clamp(6.8rem, 13vw, 11.7rem); text-align: center; }
.work-close h2 { max-width: 11ch; margin: 1.05rem 0 1.55rem; font-family: var(--cr-display); font-size: clamp(3rem, 7.2vw, 7.65rem); font-weight: 500; letter-spacing: -.08em; line-height: .86; }
.work-close > p:not(.cr-overline) { max-width: 45rem; margin: 0; color: var(--cr-muted); font-size: 1rem; line-height: 1.75; }
.work-close__actions { justify-content: center; }

@media (max-width: 900px) {
  .work-hero { min-height: 0; }
  .work-hero__inner,
  .work-intro { grid-template-columns: 1fr; }
  .work-hero__inner { padding-bottom: 4rem; }
  .work-hero__route { max-width: 35rem; }
  .work-section-head { align-items: start; flex-direction: column; }
  .work-company-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .work-company:nth-child(n + 3) { border-top: 1px solid var(--cr-line); }
  .work-company:not(:nth-child(3n + 1)) { border-left: 0; }
  .work-company:nth-child(even) { border-left: 1px solid var(--cr-line); }
  .work-review-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .work-review-card--google { grid-column: 1 / -1; min-height: 21rem; }
  .work-review-card { border-left: 1px solid var(--cr-line); border-top: 1px solid var(--cr-line); }
  .work-review-card:nth-child(1) { border-top: 0; border-left: 0; }
  .work-review-card:nth-child(2),
  .work-review-card:nth-child(4) { border-left: 0; }
  .work-review-card--google { border-left: 0; }
}

@media (max-width: 640px) {
  .work-hero { padding-top: 4.55rem; }
  .work-hero__seal { right: -7rem; width: 29rem; opacity: .13; }
  .work-hero h1 { font-size: clamp(3.5rem, 17vw, 5.65rem); }
  .work-profile-grid,
  .work-company-grid,
  .work-review-grid { grid-template-columns: 1fr; }
  .work-profile-card,
  .work-profile-card + .work-profile-card,
  .work-review-card,
  .work-review-card + .work-review-card { min-height: auto; border-left: 0; }
  .work-profile-card + .work-profile-card,
  .work-review-card + .work-review-card { border-top: 1px solid var(--cr-line); }
  .work-profile-card > a,
  .work-review-card:not(.work-review-card--google) > a { margin-top: 2rem; }
  .work-company { min-height: 11rem; }
  .work-company:nth-child(n + 2) { border-top: 1px solid var(--cr-line); }
  .work-company:nth-child(even) { border-left: 0; }
  .work-review-card--google { grid-column: auto; }
  .work-close__inner { padding-inline: var(--cr-gutter); }
}

@media (prefers-reduced-motion: reduce) {
  .work-profile-card::before,
  .work-review-card::before,
  .work-company > b { transition: none; }
}
