/* Header utilities replace the redundant enquiry CTA. */
.topbar::after { display: none !important; }
.site-controls {
  position: absolute;
  z-index: 3;
  top: 50%;
  right: 2rem;
  display: flex;
  gap: .38rem;
  transform: translateY(-50%);
}
.display-control {
  width: 2.65rem;
  height: 2.65rem;
  min-width: 0;
  padding: 0;
  color: #161616;
  border: 1px solid rgba(22,22,22,.24);
  border-radius: 50%;
  background: rgba(239,238,232,.92);
  font: 500 .62rem var(--font-mono);
  letter-spacing: .08em;
  cursor: pointer;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
.display-control:hover,
.display-control:focus-visible { color: #f4f3ee; background: #161616; border-color: #161616; transform: translateY(-1px); outline: none; }

/* One neutral carbon system replaces the former green controls and green trim. */
.main-nav,
.pill.outline,
.contact,
.filter:hover,
.filter.active,
.frame::after { background-color: #161616 !important; }
.main-nav { border-color: rgba(244,243,238,.2) !important; box-shadow: 0 5px 18px rgba(0,0,0,.15) !important; }
.pill.outline { border-color: rgba(244, 243, 238, .2) !important; color: #f4f3ee !important; }
.pill.light { color: #161616 !important; border-color: rgba(22,22,22,.78) !important; background: #f4f3ee !important; }
.pill.light:hover { color: #161616 !important; }
.frame::after { color: #f4f3ee !important; }

/* Pricing resolves into the contact field through a short, soft tonal bridge. */
body:not(.theme-dark) .contact {
  background-color: #161616 !important;
  background-image: linear-gradient(to bottom, #efeee8 0%, #e3e2db 9%, #c2c3bd 28%, #858a84 51%, #414843 76%, #161616 100%);
  background-repeat: no-repeat;
  background-size: 100% clamp(170px, 18vw, 280px);
}

/* Fixed ANAM signature — the supplied source has generous transparent margins,
   so its visible mark is framed through a compact viewport. */
.brand-mark {
  position: fixed;
  z-index: 30;
  top: 1.65rem;
  left: 2rem;
  width: 7.65rem;
  height: 1.935rem;
  display: block;
  overflow: hidden;
  color: #161616;
  transition: opacity .25s ease, transform .35s cubic-bezier(.22, .8, .24, 1);
}
.brand-mark span { display: block; width: 100%; height: 100%; overflow: hidden; }
.brand-mark img {
  position: absolute;
  top: -1.404rem;
  left: -.288rem;
  width: 8.208rem;
  height: auto;
  display: block;
  filter: none;
}
.brand-on-light .brand-mark img { filter: invert(1); }
.brand-mark:hover,
.brand-mark:focus-visible { opacity: .76; transform: translateY(-2px); }
.brand-mark:focus-visible { outline: 1px solid currentColor; outline-offset: .35rem; }

/* Dark is an ink/paper swap. The red accent selectors remain untouched. */
body.theme-dark { --ink: #eef0ea; --paper: #161918; --line: rgba(238,240,234,.3); background: #161918; color: #eef0ea; }
body.theme-dark .intro,
body.theme-dark .work,
body.theme-dark .pricing { background: #161918 !important; color: #eef0ea; }
body.theme-dark .work-empty,
body.theme-dark .orientation-head,
body.theme-dark .project-meta,
body.theme-dark .pricing-main,
body.theme-dark .pricing-list,
body.theme-dark .pricing-list article,
body.theme-dark .pricing-link { border-color: rgba(238,240,234,.38) !important; color: #eef0ea; }
body.theme-dark .filter { color: #eef0ea; border-color: rgba(238,240,234,.58); }
body.theme-dark .filter:hover,
body.theme-dark .filter.active { color: #161918; background: #eef0ea; }
body.theme-dark .manifesto { color: #eef0ea; background: #2b2e2c !important; }
body.theme-dark .manifesto::before { opacity: .45; filter: invert(1); }
body.theme-dark .manifesto .manifesto-line,
body.theme-dark .manifesto-caption,
body.theme-dark .manifesto-slogan,
body.theme-dark .manifesto-footer,
body.theme-dark .manifesto > .section-number { color: #eef0ea !important; }
body.theme-dark .contact { color: #17211d; background: #efeee8 !important; }
body.theme-dark .contact {
  background-color: #efeee8 !important;
  background-image: linear-gradient(to bottom, #161918 0%, #303633 12%, #777b76 34%, #bfc0ba 63%, #efeee8 100%) !important;
  background-repeat: no-repeat !important;
  background-size: 100% clamp(170px, 18vw, 280px) !important;
}
body.theme-dark .contact .contact-kicker,
body.theme-dark .contact .contact-title,
body.theme-dark .contact-intro > p:last-child,
body.theme-dark .contact-item > span,
body.theme-dark .copy-contact { color: #17211d; }
body.theme-dark .contact-details,
body.theme-dark .contact-item,
body.theme-dark .contact footer { border-color: rgba(23,33,29,.42); }
body.theme-dark .copy-contact b { color: #17211d; border-color: rgba(23,33,29,.45); }
body.theme-dark .copy-contact:hover b,
body.theme-dark .copy-contact:focus-visible b { color: #efeee8; border-color: #17211d; background: #17211d; }
body.theme-dark .contact-icon { filter: invert(1); }
body.theme-dark .partner-wall > p { color: rgba(23, 33, 29, .48); }
body.theme-dark .project-dialog { color: #eef0ea; border-color: #eef0ea; background: #161918; }
body.theme-dark .dialog-copy a { color: #eef0ea; }
body.theme-dark .project-wall .frame {
  border: 0;
  box-shadow: 18px 28px 42px -25px rgba(0, 0, 0, .34), 34px 56px 92px -46px rgba(0, 0, 0, .28);
}
body.theme-dark .project-wall .project:hover .frame,
body.theme-dark .project-wall .project:focus-visible .frame {
  border: 0;
  box-shadow: 22px 38px 56px -25px rgba(0, 0, 0, .42), 42px 70px 116px -48px rgba(0, 0, 0, .34);
}
body.theme-dark .hero::after { background: linear-gradient(to bottom, rgba(22,25,24,0) 0%, rgba(22,25,24,.08) 22%, rgba(22,25,24,.48) 61%, #161918 100%); }
body.theme-dark .site-controls .display-control { color: #161616; border-color: rgba(238,240,234,.52); background: rgba(239,242,232,.94); }
body.theme-dark .site-controls .display-control:hover,
body.theme-dark .site-controls .display-control:focus-visible { color: #eff2e8; background: #161616; border-color: #161616; }
body.theme-dark .pill.light { color: #161616 !important; border-color: rgba(239,242,232,.88) !important; background: #f4f3ee !important; }
body.theme-dark .pill.outline { color: #f4f3ee !important; background: #161616 !important; border-color: rgba(244, 243, 238, .2) !important; }
body.theme-dark .brand-mark { color: #f4f3ee; }
body.theme-dark .brand-mark img { filter: none; }

@media (max-width: 700px) {
  .site-controls { top: 11px; right: 1.1rem; gap: .25rem; transform: none; }
  .display-control { width: 2.15rem; height: 2.15rem; min-width: 0; padding: 0; font-size: .52rem; }
}
