:root {
  --obsidian-canvas: #101010;
  --carbon-lift: #101010;
  --ash-stroke: #eeeeee;
  --graphite-mid: #101010;
  --granite-muted: #eeeeee;
  --stone-muted: #eeeeee;
  --bone-surface: #eeeeee;
  --chalk: #eeeeee;
  --contini-purple: #662d91;
  --contini-purple-hover: #662d91;
  --contini-purple-deep: #662d91;
  --contini-purple-soft: #eeeeee;
  --error: #662d91;
  --ink: var(--obsidian-canvas);
  --muted: var(--granite-muted);
  --paper: var(--obsidian-canvas);
  --surface: var(--bone-surface);
  --line: var(--ash-stroke);
  --focus: var(--contini-purple);
}

* {
  box-sizing: border-box;
}

html {
  background: var(--obsidian-canvas);
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--obsidian-canvas);
  color: var(--bone-surface);
  font-family: "Geist", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  text-rendering: geometricPrecision;
}

::selection {
  background: rgba(102, 45, 145, 0.48);
  color: var(--chalk);
}

::-webkit-scrollbar {
  width: 12px;
}

::-webkit-scrollbar-track {
  background: var(--obsidian-canvas);
}

::-webkit-scrollbar-thumb {
  background: var(--ash-stroke);
  border: 3px solid var(--obsidian-canvas);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--contini-purple);
}

a {
  color: inherit;
  text-underline-offset: 0.22em;
}

img {
  display: block;
  height: auto;
  max-width: 100%;
}

strong,
.font-bold,
.font-extrabold {
  font-weight: 500 !important;
}

.font-display {
  font-family: "Geist", system-ui, sans-serif;
}

.site-shell {
  min-height: 100vh;
  overflow-x: hidden;
}

.industrial-grid {
  background: var(--obsidian-canvas);
}

.container {
  width: min(1200px, calc(100% - 32px));
  margin-inline: auto;
}

.sticky.top-0,
header.border-b {
  background: rgba(16, 16, 16, 0.94) !important;
  border-color: var(--ash-stroke) !important;
}

.brand-logo {
  align-items: center;
  background: transparent;
  border-radius: 0;
  display: inline-flex;
  flex: 0 0 auto;
  padding: 0;
  position: relative;
}

.brand-logo::after {
  background: var(--contini-purple);
  content: "";
  height: 6px;
  left: 0;
  position: absolute;
  top: calc(100% + 7px);
  width: 42px;
}

.brand-logo img {
  filter: brightness(0) invert(1);
  height: 46px;
  object-fit: contain;
  width: auto;
}

.footer-logo {
  filter: brightness(0) invert(1);
  height: auto;
  width: min(220px, 100%);
}

.nav-link {
  color: var(--stone-muted);
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
  transition: color 180ms ease;
}

.nav-link:hover,
.nav-link:focus-visible,
.nav-link[aria-current="page"] {
  color: var(--chalk);
}

.nav-link[aria-current="page"] {
  text-decoration: underline;
  text-decoration-color: var(--contini-purple);
  text-decoration-thickness: 1px;
  text-underline-offset: 8px;
}

.btn-primary,
.btn-secondary,
.btn-ghost {
  align-items: center;
  border-radius: 3px;
  border: 1px solid transparent;
  display: inline-flex;
  font-weight: 500;
  gap: 0.5rem;
  justify-content: center;
  max-width: 100%;
  min-height: 46px;
  min-width: 0;
  padding: 14px 18px;
  text-decoration: none;
  transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
  white-space: normal;
}

.btn-primary {
  background: var(--chalk);
  box-shadow: none;
  color: var(--obsidian-canvas);
}

.btn-primary svg {
  color: var(--contini-purple);
}

.btn-secondary,
.btn-ghost {
  background: var(--carbon-lift);
  border-color: var(--ash-stroke);
  box-shadow: none;
  color: var(--bone-surface);
}

.btn-primary:hover,
.btn-secondary:hover,
.btn-ghost:hover {
  transform: translateY(-1px);
}

.btn-primary:hover {
  background: var(--contini-purple-soft);
}

.btn-primary:disabled {
  cursor: wait;
  opacity: 0.62;
  transform: none;
}

.btn-secondary:hover,
.btn-ghost:hover {
  border-color: var(--contini-purple);
  color: var(--chalk);
}

.focus-ring:focus-visible,
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--contini-purple);
  outline-offset: 3px;
}

.section-band {
  padding: clamp(3.5rem, 8vw, 7.5rem) 0;
}

.section-tight {
  padding: clamp(3rem, 6vw, 5.5rem) 0;
}

.section-heading {
  color: var(--bone-surface);
  font-family: "Geist", system-ui, sans-serif;
  font-size: clamp(36px, 4vw, 44px);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.1;
  max-width: 800px;
  text-wrap: balance;
}

h1,
.text-5xl,
.md\:text-6xl,
.md\:text-7xl {
  color: var(--chalk);
  font-family: "Geist", system-ui, sans-serif;
  font-size: clamp(44px, 6vw, 72px) !important;
  font-weight: 400 !important;
  letter-spacing: 0;
  line-height: 1 !important;
  text-wrap: balance;
}

h2,
h3 {
  color: inherit;
  font-family: "Geist", system-ui, sans-serif;
  letter-spacing: 0;
}

p,
li,
dd,
.section-copy,
.text-slate-600,
.text-slate-200,
.text-slate-300,
.text-slate-400,
.text-muted {
  color: var(--stone-muted) !important;
}

.section-copy {
  font-size: 1rem;
  line-height: 1.65;
  max-width: 72ch;
}

.bg-white,
.surface-light {
  background: var(--chalk) !important;
  color: var(--obsidian-canvas);
}

.bg-white .section-heading,
.bg-white h1,
.bg-white h2,
.bg-white h3,
.surface-light .section-heading,
.surface-light h1,
.surface-light h2,
.surface-light h3,
.bg-white .card h1,
.bg-white .card h2,
.bg-white .card h3,
.bg-white .card dt,
.bg-white .card dd,
.bg-white .card strong,
form.card h1,
form.card h2,
form.card h3,
form.card dt,
form.card dd,
form.card strong,
.card.text-slate-900 h1,
.card.text-slate-900 h2,
.card.text-slate-900 h3,
.card.text-slate-900 dt,
.card.text-slate-900 dd,
.card.text-slate-900 strong {
  color: var(--obsidian-canvas) !important;
}

.bg-white p,
.bg-white li,
.bg-white dd,
.bg-white .section-copy,
.bg-white .text-slate-600,
.surface-light p,
.surface-light li,
.surface-light dd,
.surface-light .section-copy,
.bg-white .card p,
.bg-white .card li,
.bg-white .card dd,
.bg-white .card .text-slate-600,
form.card p,
form.card li,
form.card dd,
form.card .text-slate-600,
.card.text-slate-900 p,
.card.text-slate-900 li,
.card.text-slate-900 dd,
.card.text-slate-900 .text-slate-600 {
  color: var(--graphite-mid) !important;
}

.card {
  background: var(--carbon-lift);
  border: 1px solid var(--ash-stroke);
  border-radius: 0;
  box-shadow: none;
  color: var(--bone-surface);
}

.bg-white .card,
form.card,
.surface-light .card,
.card.text-slate-900 {
  background: var(--bone-surface);
  border-color: rgba(16, 16, 16, 0.18);
  color: var(--obsidian-canvas);
}

.surface-dark {
  background: var(--obsidian-canvas);
  color: var(--bone-surface);
}

.section-with-parallax {
  isolation: isolate;
  overflow: hidden;
  position: relative;
}

.section-with-parallax::before {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  inset: -10%;
  opacity: 0.12;
  pointer-events: none;
  position: absolute;
  transform: translate3d(
    var(--parallax-cursor-x, 0px),
    calc(var(--parallax-shift, 0px) + var(--parallax-cursor-y, 0px)),
    0
  ) scale(1.04);
  transition: opacity 220ms ease, transform 220ms cubic-bezier(0.16, 1, 0.3, 1);
  z-index: 0;
}

.section-with-parallax.parallax-active::before {
  opacity: 0.16;
  will-change: transform;
}

.process-backdrop::before {
  background-image: url("../img/generated/processo-solucao.png");
  filter: grayscale(1) contrast(1.15);
}

.control-backdrop::before {
  background-image: url("../img/generated/servico-manutencao-industrial.png");
  filter: grayscale(1) contrast(1.2);
}

.section-with-parallax > .container {
  position: relative;
  z-index: 1;
}

.surface-dark .section-copy,
.surface-dark p,
.surface-dark dd,
.surface-dark .text-slate-200,
.surface-dark .text-slate-300,
.surface-dark .text-muted {
  color: var(--stone-muted) !important;
}

.metric {
  border-top: 1px solid var(--ash-stroke);
  color: var(--bone-surface);
  padding-top: 1rem;
}

.metric dt,
dl dd.text-3xl,
.text-3xl {
  color: var(--chalk);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: clamp(1.75rem, 3vw, 2.25rem) !important;
  font-weight: 400 !important;
  letter-spacing: 0;
}

.bg-white .metric dt,
.bg-white dl dd.text-3xl,
.bg-white .text-3xl,
.card dd.text-3xl {
  color: var(--contini-purple-deep) !important;
}

.logo-chip {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--obsidian-canvas);
  display: flex;
  font-weight: 500;
  justify-content: center;
  min-height: 72px;
  padding: 0.75rem;
  text-align: center;
}

.logo-chip img {
  max-height: 40px;
  max-width: 100%;
  object-fit: contain;
  filter: grayscale(1) contrast(1.05);
}

.service-icon {
  align-items: center;
  background: var(--contini-purple-soft);
  border-radius: 3px;
  color: var(--contini-purple-deep);
  display: inline-flex;
  height: 42px;
  justify-content: center;
  width: 42px;
}

.visual {
  border-radius: 0;
  box-shadow: none;
  overflow: hidden;
  position: relative;
}

.visual::after {
  border: 1px solid rgba(238, 238, 238, 0.28);
  border-radius: inherit;
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
}

.visual img,
.card > img,
.card img.mb-5,
.card img.mb-5.rounded-xl {
  aspect-ratio: 4 / 3;
  border-radius: 0 !important;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.case-note {
  display: none;
}

.faq-button {
  align-items: center;
  color: inherit;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  min-height: 42px;
  text-align: left;
  width: 100%;
}

.faq-button svg {
  color: var(--contini-purple);
  flex: 0 0 auto;
  transition: transform 180ms ease;
}

.faq-panel[hidden] {
  display: none;
}

.rounded-xl.border {
  background: var(--bone-surface);
  border-color: rgba(16, 16, 16, 0.16) !important;
  border-radius: 10px !important;
}

.form-field label {
  color: var(--obsidian-canvas);
  display: block;
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.2;
  margin-bottom: 0.45rem;
  text-transform: uppercase;
}

.form-field input,
.form-field select,
.form-field textarea {
  background: var(--carbon-lift);
  border: 1px solid var(--ash-stroke);
  border-radius: 3px;
  color: var(--bone-surface);
  min-height: 46px;
  padding: 12px 14px;
  width: 100%;
}

.form-field textarea {
  min-height: 128px;
  resize: vertical;
}

.form-field input::placeholder,
.form-field textarea::placeholder {
  color: var(--granite-muted);
}

.form-field input[aria-invalid="true"],
.form-field select[aria-invalid="true"],
.form-field textarea[aria-invalid="true"] {
  border-color: var(--error);
}

.form-error {
  color: var(--error);
  font-size: 0.9rem;
  font-weight: 400;
  margin-top: 0.4rem;
  min-height: 1.25rem;
}

.continuity-hero {
  padding: clamp(4rem, 9vw, 8rem) 0 0;
}

.continuity-hero-copy {
  max-width: 900px;
}

.continuity-hero-copy h1,
.operational-proof h2 {
  color: var(--chalk);
  font-family: "Geist", system-ui, sans-serif;
  font-size: clamp(44px, 6vw, 72px);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1;
  text-wrap: balance;
}

.continuity-hero-copy p {
  color: var(--stone-muted);
  font-size: 1.125rem;
  line-height: 1.6;
  margin: 1.75rem 0 2.5rem;
  max-width: 65ch;
}

.hero-proof {
  border-top: 1px solid var(--ash-stroke);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0 0 2.5rem;
}

.hero-proof div {
  padding: 1rem 1rem 0 0;
}

.hero-proof div + div {
  border-left: 1px solid var(--ash-stroke);
  padding-left: 1rem;
}

.hero-proof dt {
  color: var(--chalk);
  font-family: "Geist", system-ui, sans-serif;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  font-weight: 400;
}

.hero-proof dd {
  color: var(--stone-muted);
  font-size: 0.875rem;
  margin: 0.2rem 0 0;
}

.continuity-hero-media {
  aspect-ratio: 16 / 7;
  border-radius: 10px 10px 0 0;
}

.continuity-hero-media img {
  height: 100%;
}

.route-selector {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
}

.route-selector a {
  align-items: end;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: 1fr auto;
  min-height: 156px;
  padding: 1.5rem;
  text-decoration: none;
  transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.route-selector span {
  color: inherit;
  font-size: 0.875rem;
  grid-column: 1 / -1;
}

.route-selector strong {
  font-size: clamp(1.25rem, 2vw, 1.7rem);
  font-weight: 400;
  letter-spacing: 0;
}

.route-selector svg {
  align-self: end;
  transition: transform 180ms ease;
}

.route-urgent {
  background: var(--chalk);
  color: var(--obsidian-canvas);
}

.route-planned {
  background: var(--carbon-lift);
  border: 1px solid var(--ash-stroke);
  color: var(--bone-surface);
}

.route-urgent:hover,
.route-urgent:focus-visible {
  background: var(--contini-purple-soft);
}

.route-planned:hover,
.route-planned:focus-visible {
  border-color: var(--contini-purple-hover);
}

.route-selector a:hover svg,
.route-selector a:focus-visible svg {
  transform: translate(3px, -3px);
}

.route-urgent svg,
.route-planned svg,
.text-action svg {
  color: var(--contini-purple);
}

@media (prefers-reduced-motion: no-preference) {
  .motion-ready .continuity-hero-copy {
    animation: continuity-copy-in 560ms cubic-bezier(0.16, 1, 0.3, 1) both;
  }

  .motion-ready .route-urgent,
  .motion-ready .route-planned {
    animation: route-signal-in 520ms cubic-bezier(0.16, 1, 0.3, 1) both;
  }

  .motion-ready .route-urgent {
    animation-delay: 120ms;
  }

  .motion-ready .route-planned {
    animation-delay: 210ms;
  }

  .motion-ready .continuity-hero-media {
    animation: evidence-reveal 740ms cubic-bezier(0.16, 1, 0.3, 1) 180ms both;
    will-change: clip-path;
  }

  @keyframes continuity-copy-in {
    from { opacity: 0; transform: translateY(16px); }
    to { opacity: 1; transform: translateY(0); }
  }

  @keyframes route-signal-in {
    from { clip-path: inset(0 100% 0 0); }
    to { clip-path: inset(0 0 0 0); }
  }

  @keyframes evidence-reveal {
    from { clip-path: inset(0 0 100% 0); }
    to { clip-path: inset(0 0 0 0); }
  }
}

.proof-band {
  padding: clamp(3.5rem, 7vw, 6rem) 0;
  background-color: #FFF!important;
}

.proof-band .container {
  align-items: center;
  display: grid;
  gap: clamp(2rem, 6vw, 6rem);
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
}

.proof-band h2 {
  font-size: clamp(1.5rem, 2.5vw, 2.25rem);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.12;
  margin: 0;
  max-width: 16ch;
}

.proof-copy p {
  color: var(--graphite-mid) !important;
  line-height: 1.55;
  margin: 1rem 0 0;
  max-width: 33ch;
}

.logo-marquee {
  margin: 0;
  overflow: hidden;
}

.logo-track {
  display: flex;
  width: max-content;
}

.logo-set {
  display: flex;
  flex: 0 0 auto;
}

.logo-set img {
  /* border-left: 1px solid rgba(16, 16, 16, 0.2); */
  height: 88px;
  min-width: 0;
  object-fit: contain;
  padding: 1.25rem;
  width: clamp(132px, 15vw, 184px);
}

.sequence-intro {
  align-items: end;
  display: flex;
  gap: 3rem;
  justify-content: space-between;
}

.sequence-intro .section-copy {
  margin: 0;
}

.sequence-list {
  list-style: none;
  margin: 5rem 0 0;
  padding: 0;
}

.sequence-step {
  align-items: center;
  border-top: 1px solid var(--ash-stroke);
  display: grid;
  gap: 2rem;
  grid-template-columns: 72px minmax(0, 1fr) minmax(240px, .72fr);
  padding: 2.25rem 0;
}

.sequence-step-reverse img {
  grid-column: 2;
}

.sequence-step-reverse .sequence-copy {
  grid-column: 3;
  grid-row: 1;
}

.sequence-index,
.path-signal {
  color: var(--contini-purple-hover);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
}

.sequence-copy h3,
.path-comparison h3,
.form-heading h2 {
  color: var(--chalk);
  font-size: clamp(1.4rem, 2vw, 1.9rem);
  font-weight: 400;
  letter-spacing: 0;
  margin: 0;
}

.sequence-copy p,
.path-comparison p {
  color: var(--stone-muted);
  margin: .75rem 0 0;
  max-width: 58ch;
}

.sequence-step img {
  aspect-ratio: 4 / 3;
  border-radius: 10px;
  object-fit: cover;
  width: 100%;
}

.comparison-intro {
  max-width: 800px;
}

.path-comparison {
  border-top: 1px solid rgba(16, 16, 16, .22);
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 3.5rem;
}

.path-comparison article {
  min-height: 280px;
  padding: 2rem;
}

.path-comparison article + article {
  border-left: 1px solid rgba(16, 16, 16, .22);
}

.surface-light .path-comparison h3 {
  color: var(--obsidian-canvas);
  margin-top: 2rem;
}

.surface-light .path-comparison p {
  color: var(--graphite-mid);
}

.text-action {
  align-items: center;
  color: var(--obsidian-canvas);
  display: inline-flex;
  font-weight: 500;
  gap: .5rem;
  margin-top: 2rem;
}

.service-heading {
  align-items: end;
  display: flex;
  gap: 2rem;
  justify-content: space-between;
}

.service-list {
  border-top: 1px solid var(--ash-stroke);
  margin-top: 3.5rem;
}

.service-list article {
  align-items: center;
  border-bottom: 1px solid var(--ash-stroke);
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  padding: 1.75rem 0;
}

.service-list span {
  color: var(--chalk);
  font-size: clamp(1.25rem, 2vw, 1.65rem);
  letter-spacing: 0;
}

.service-list p {
  color: var(--stone-muted);
  margin: .4rem 0 0;
  max-width: 62ch;
}

.service-list > article > svg {
  color: var(--contini-purple-hover);
  flex: 0 0 auto;
}

.operational-proof {
  border-block: 1px solid var(--ash-stroke);
  padding: clamp(4rem, 7vw, 7rem) 0;
}

.operational-proof .container {
  align-items: end;
  display: grid;
  gap: 4rem;
  grid-template-columns: .8fr 1.2fr;
}

.operational-proof h2 {
  font-size: clamp(2.25rem, 4vw, 3.75rem);
}

.operational-proof p {
  color: var(--stone-muted);
  margin: 1.25rem 0 0;
  max-width: 45ch;
}

.operational-proof dl {
  border-top: 1px solid var(--ash-stroke);
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(3, 1fr);
}

.operational-proof dl div {
  padding: 1.25rem 1rem 0 0;
}

.operational-proof dl div + div {
  border-left: 1px solid var(--ash-stroke);
  padding-left: 1rem;
}

.operational-proof dt {
  color: var(--chalk);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: clamp(1.75rem, 3vw, 2.5rem);
}

.operational-proof dd {
  color: var(--stone-muted);
  margin: .25rem 0 0;
}

.faq-line {
  border-bottom: 1px solid rgba(16, 16, 16, .18);
}

.faq-line .faq-button {
  min-height: 52px;
}

.faq-line .faq-panel {
  color: var(--graphite-mid);
  margin: 0 0 1rem;
}

.contact-form {
  background: var(--carbon-lift);
  border: 1px solid var(--ash-stroke);
  border-radius: 10px;
  display: grid;
  gap: 1rem;
  padding: clamp(1.5rem, 4vw, 2.5rem);
}

.form-heading p,
.form-status {
  color: var(--stone-muted);
  margin: .5rem 0 0;
}

.form-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr 1fr;
}

.contact-form .form-field label {
  color: var(--stone-muted);
}

.form-status {
  min-height: 1.5rem;
}

.sequence-copy,
.route-selector a,
.path-comparison article,
.service-list article,
.contact-form {
  min-width: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 767px) {
  .continuity-hero { padding-top: 3rem; }
  .continuity-hero-copy p { font-size: 1rem; }
  .continuity-hero-media { aspect-ratio: 4 / 3; }
  .route-selector, .path-comparison, .operational-proof .container, .proof-band .container, .form-grid, .hero-proof { grid-template-columns: 1fr; }
  .route-selector a { min-height: 132px; }
  .sequence-intro, .service-heading { align-items: start; flex-direction: column; gap: 1.5rem; }
  .sequence-list { margin-top: 3rem; }
  .sequence-step, .sequence-step-reverse { grid-template-columns: 42px 1fr; padding: 1.5rem 0; }
  .sequence-step img, .sequence-step-reverse img { grid-column: 2; grid-row: auto; }
  .sequence-step-reverse .sequence-copy { grid-column: 2; grid-row: auto; }
  .path-comparison article { min-height: 0; padding: 1.5rem 0; }
  .path-comparison article + article { border-left: 0; border-top: 1px solid rgba(16, 16, 16, .22); }
  .service-heading .btn-secondary { width: 100%; }
  .service-list { margin-top: 2.5rem; }
  .operational-proof dl { grid-template-columns: 1fr; }
  .operational-proof dl div + div { border-left: 0; border-top: 1px solid var(--ash-stroke); margin-top: 1rem; padding: 1rem 0 0; }
  .hero-proof div + div { border-left: 0; border-top: 1px solid var(--ash-stroke); margin-top: 1rem; padding: 1rem 0 0; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }

  .logo-track {
    animation: none;
    width: 100%;
  }

  .logo-set:first-child {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
  }

  .logo-set[aria-hidden="true"] {
    display: none;
  }

  .logo-set img {
    width: 100%;
  }
}

@media (hover: none), (pointer: coarse) {
  .section-with-parallax::before {
    transform: none;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .sequence-step,
  .sequence-step-reverse {
    grid-template-columns: 56px minmax(0, 1fr) minmax(210px, .68fr);
  }

  .route-selector a {
    min-height: 144px;
  }
}

@media (pointer: coarse) {
  .nav-link,
  .text-action {
    align-items: center;
    display: inline-flex;
    min-height: 44px;
  }

  .route-selector a,
  .service-list article,
  .faq-button {
    touch-action: manipulation;
  }
}

@media (max-width: 767px) {
  .continuity-hero,
  .proof-band,
  .operational-proof {
    padding-inline: max(0px, env(safe-area-inset-left)) max(0px, env(safe-area-inset-right));
  }

  .sequence-step,
  .sequence-step-reverse {
    column-gap: 1rem;
  }

  .sequence-step img,
  .sequence-step-reverse img {
    aspect-ratio: 16 / 9;
    max-height: 172px;
  }

  .sequence-copy h3 {
    font-size: 1.35rem;
  }

  .service-list article {
    align-items: flex-start;
    min-height: 72px;
  }

  .proof-band h2 {
    max-width: 22ch;
  }

  .logo-set img {
    height: 76px;
    padding: 1rem;
    width: clamp(118px, 42vw, 152px);
  }
}

.map-frame {
  border: 1px solid var(--ash-stroke);
  border-radius: 10px;
  height: 360px;
  width: 100%;
}

.reserved-link {
  color: var(--granite-muted);
  cursor: default;
  text-decoration: none;
}

footer a {
  color: var(--stone-muted);
  text-decoration-color: transparent;
  transition: color 180ms ease, text-decoration-color 180ms ease;
}

footer a:hover,
footer a:focus-visible {
  color: var(--chalk);
  text-decoration-color: var(--contini-purple);
}

@media (max-width: 767px) {
  .container {
    width: min(100% - 24px, 1200px);
  }

  .brand-logo img {
    height: 40px;
    max-width: 186px;
  }

  .mobile-panel {
    display: none;
  }

  .mobile-panel[data-open="true"] {
    background: var(--obsidian-canvas) !important;
    border-color: var(--ash-stroke) !important;
    display: block;
  }

  [data-menu-toggle] {
    background: var(--carbon-lift) !important;
    border-color: var(--ash-stroke) !important;
    border-radius: 3px !important;
    color: var(--bone-surface);
  }

  .section-band {
    padding: 4rem 0;
  }

  .section-tight {
    padding: 3.5rem 0;
  }

  .section-heading {
    font-size: clamp(2rem, 10vw, 3rem);
  }

  h1,
  .text-5xl,
  .md\:text-6xl,
  .md\:text-7xl {
    font-size: clamp(2.6rem, 13vw, 4.25rem) !important;
  }

  .btn-primary,
  .btn-secondary,
  .btn-ghost {
    width: 100%;
  }

  .logo-chip {
    min-height: 64px;
  }
}

.editorial-list {
  border-top: 1px solid var(--ash-stroke);
}

.editorial-list article {
  border-bottom: 1px solid var(--ash-stroke);
  padding: 1.25rem 0;
}

.editorial-list h3 {
  color: var(--chalk);
  font-size: 1.25rem;
  font-weight: 400;
  letter-spacing: 0;
}

.editorial-list p {
  color: var(--stone-muted);
  margin: .35rem 0 0;
  max-width: 60ch;
}

.cta-band {
  align-items: end;
  display: flex;
  gap: 2rem;
  justify-content: space-between;
}

/* Homepage narrative: the only repeated card treatment is reserved for services. */
.home-service-cards {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 3.5rem;
}

.home-front-cards {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1100px) and (min-width: 768px) {
  .home-front-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.home-service-cards article {
  border: 1px solid rgba(16, 16, 16, 0.18);
  border-radius: 10px;
  min-width: 0;
  overflow: hidden;
}

.home-service-cards img {
  aspect-ratio: 16 / 10;
  object-fit: cover;
  width: 100%;
}

.home-service-cards h3,
.home-service-cards p {
  margin-inline: 1.5rem;
}

.home-service-cards h3 {
  color: var(--obsidian-canvas);
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.15;
  margin-top: 1.5rem;
}

.home-service-cards p {
  color: var(--graphite-mid) !important;
  margin-bottom: 1.5rem;
  margin-top: 0.75rem;
}

.home-service-cards .text-action {
  margin: 0 1.5rem 1.5rem;
}

.products-hero {
  padding: clamp(4rem, 9vw, 8rem) 0;
}

.products-hero-layout,
.products-editorial,
.brands-layout {
  align-items: center;
  display: grid;
  gap: clamp(2rem, 7vw, 7rem);
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
}

.products-hero h1 {
  color: var(--chalk);
  font-family: "Geist", system-ui, sans-serif;
  font-size: clamp(2.6rem, 5.5vw, 4.75rem);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1;
  margin: 0;
  text-wrap: balance;
}

.products-hero p {
  color: var(--stone-muted);
  font-size: 1.125rem;
  line-height: 1.6;
  margin: 1.75rem 0 2rem;
  max-width: 58ch;
}

.products-heading {
  align-items: end;
  display: flex;
  gap: 3rem;
  justify-content: space-between;
}

.products-heading .section-copy {
  margin: 0;
  max-width: 45ch;
}

.product-categories {
  border-top: 1px solid rgba(16, 16, 16, 0.18);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 3.5rem;
}

.product-categories article {
  min-height: 230px;
  padding: 1.75rem 1.5rem;
}

.product-categories article + article {
  border-left: 1px solid rgba(16, 16, 16, 0.18);
}

.product-categories svg {
  color: var(--contini-purple);
  height: 28px;
  width: 28px;
}

.product-categories h3 {
  color: var(--obsidian-canvas);
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0;
  margin: 3rem 0 0;
}

.product-categories p {
  color: var(--graphite-mid);
  line-height: 1.55;
  margin: 0.75rem 0 0;
}

.brand-word-list {
  border-top: 1px solid var(--ash-stroke);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.brand-word-list li {
  border-bottom: 1px solid var(--ash-stroke);
  color: var(--chalk);
  font-family: "Geist", system-ui, sans-serif;
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 400;
  padding: 1.25rem 0;
}

.brand-word-list li:nth-child(odd) {
  border-right: 1px solid var(--ash-stroke);
  padding-right: 1.25rem;
}

.brand-word-list li:nth-child(even) {
  padding-left: 1.25rem;
}

.editorial-list-light article {
  border-color: rgba(16, 16, 16, 0.18);
}

.editorial-list-light h3 {
  color: var(--obsidian-canvas);
}

.editorial-list-light p {
  color: var(--graphite-mid) !important;
}

.conversion-band,
.faq-layout,
.contact-layout {
  align-items: start;
  display: grid;
  gap: clamp(2rem, 7vw, 7rem);
  grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr);
}

.conversion-band {
  align-items: end;
}

.conversion-band .btn-primary {
  justify-self: end;
}

.faq-list {
  border-top: 1px solid var(--ash-stroke);
}

.surface-dark .faq-line {
  border-color: var(--ash-stroke);
}

.surface-dark .faq-line .faq-panel {
  color: var(--stone-muted);
}

.contact-note {
  border-top: 1px solid rgba(16, 16, 16, 0.2);
  color: var(--graphite-mid) !important;
  margin-top: 2rem;
  padding-top: 1rem;
}

@media (max-width: 767px) {
  .cta-band {
    align-items: stretch;
    flex-direction: column;
  }

  .home-service-cards,
  .home-front-cards,
  .conversion-band,
  .faq-layout,
  .contact-layout,
  .products-hero-layout,
  .products-editorial,
  .brands-layout {
    grid-template-columns: 1fr;
  }

  .products-heading {
    align-items: start;
    flex-direction: column;
    gap: 1.5rem;
  }

  .product-categories {
    grid-template-columns: 1fr;
    margin-top: 2.5rem;
  }

  .product-categories article {
    min-height: 0;
    padding: 1.75rem 1rem;
  }

  .product-categories article + article {
    border-left: 0;
    border-top: 1px solid rgba(16, 16, 16, 0.18);
  }

  .product-categories h3 {
    margin-top: 1.5rem;
  }

  .brand-word-list {
    grid-template-columns: 1fr;
  }

  .brand-word-list li,
  .brand-word-list li:nth-child(odd),
  .brand-word-list li:nth-child(even) {
    border-right: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .home-service-cards {
    margin-top: 2.5rem;
  }

  .conversion-band .btn-primary {
    justify-self: stretch;
  }
}

@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
  .logo-set img {
    width: 100%;
  }
}

.mro-hero {
  padding: clamp(4rem, 8vw, 7rem) 0 clamp(3rem, 6vw, 5rem);
}

.mro-hero-layout,
.split-heading,
.differentials-layout,
.dna-layout,
.service-compact,
.conversion-mro,
.quote-layout {
  align-items: center;
  display: grid;
  gap: clamp(2rem, 5vw, 4rem);
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
}

.eyebrow {
  color: var(--stone-muted) !important;
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 0.78rem;
  letter-spacing: 0;
  margin: 0 0 1rem;
  text-transform: uppercase;
}

.eyebrow-dark {
  color: var(--graphite-mid) !important;
}

.hero-manifest {
  color: var(--stone-muted) !important;
  font-size: clamp(1.05rem, 2vw, 1.22rem);
  line-height: 1.72;
  margin: 1.75rem 0 2rem;
  max-width: 68ch;
}

.image-placeholder {
  align-items: center;
  aspect-ratio: 4 / 3;
  background: var(--carbon-lift);
  border: 1px dashed rgba(197, 192, 200, 0.46);
  border-radius: 8px;
  color: var(--stone-muted);
  display: flex;
  justify-content: center;
  min-height: 180px;
  overflow: hidden;
}

.surface-light .image-placeholder {
  background: var(--bone-surface);
  border-color: rgba(16, 16, 16, 0.22);
  color: var(--graphite-mid);
}

.image-placeholder span {
  border: 1px solid currentColor;
  border-radius: 999px;
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 0.75rem;
  padding: 0.45rem 0.7rem;
}

.image-placeholder-hero {
  min-height: 420px;
}

.image-placeholder-small {
  min-height: 140px;
}

.partner-grid,
.client-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.client-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-top: 2rem;
}

.partner-grid span,
.client-grid span {
  align-items: center;
  border: 1px solid rgba(16, 16, 16, 0.14);
  border-radius: 8px;
  color: var(--obsidian-canvas);
  display: flex;
  font-weight: 500;
  justify-content: center;
  min-height: 74px;
  padding: 1rem;
  text-align: center;
}

.surface-dark .client-grid span {
  border-color: var(--ash-stroke);
  color: var(--bone-surface);
}

.section-intro {
  margin-bottom: clamp(2rem, 4vw, 3rem);
}

.psr-grid,
.approach-grid,
.category-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.category-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.psr-grid article,
.approach-grid article,
.category-grid a,
.quote-form {
  border-radius: 8px;
  padding: 1rem;
}

.psr-grid article,
.category-grid a {
  background: var(--bone-surface);
  border: 1px solid rgba(16, 16, 16, 0.14);
  color: var(--obsidian-canvas);
  text-decoration: none;
}

.approach-grid .card {
  padding: 1rem;
}

.psr-grid h3,
.approach-grid h3,
.category-grid h3 {
  font-size: 1.1rem;
  margin: 1rem 0 0.5rem;
}

.category-grid > a > svg {
  color: var(--contini-purple-deep);
  height: 28px;
  margin-bottom: 0.75rem;
  width: 28px;
}

.text-action {
  align-items: center;
  color: var(--contini-purple);
  display: inline-flex;
  font-weight: 500;
  gap: 0.35rem;
  margin-top: 0.75rem;
  text-decoration: none;
}

.differentials-list {
  display: grid;
  gap: 0.8rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.differentials-list li {
  border-top: 1px solid var(--ash-stroke);
  padding-top: 0.8rem;
}

.differentials-list-light li {
  border-color: rgba(16, 16, 16, 0.18);
}

.differentials-list strong {
  color: var(--chalk);
}

.differentials-list-light strong {
  color: var(--obsidian-canvas) !important;
}

.dna-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dna-grid div {
  border-top: 1px solid rgba(16, 16, 16, 0.18);
  padding-top: 1rem;
}

.dna-grid-dark div {
  border-color: var(--ash-stroke);
}

.dna-grid dt {
  color: var(--contini-purple-deep);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: clamp(2rem, 5vw, 3rem);
  line-height: 1;
}

.dna-grid-dark dt {
  color: var(--chalk);
}

.dna-grid dd {
  margin-top: 0.5rem;
}

.service-compact {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.72fr);
  padding: clamp(1.5rem, 4vw, 2rem) 0;
}

.service-compact .section-copy {
  margin-top: 1rem;
}

.service-compact ul {
  border-top: 1px solid var(--ash-stroke);
  list-style: none;
  margin: 0 0 1.25rem;
  padding: 0;
}

.service-compact li {
  border-bottom: 1px solid var(--ash-stroke);
  color: var(--bone-surface) !important;
  padding: 0.75rem 0;
}

.service-compact-actions {
  align-self: center;
}

.conversion-mro {
  border: 1px solid var(--ash-stroke);
  border-radius: 8px;
  padding: clamp(1.25rem, 4vw, 2rem);
}

.conversion-mro-light {
  border-color: rgba(16, 16, 16, 0.18);
}

.quote-form {
  background: var(--carbon-lift);
  border: 1px solid var(--ash-stroke);
}

.newsletter-line {
  align-items: center;
  color: var(--stone-muted);
  display: flex;
  gap: 0.65rem;
  margin: 1rem 0;
}

.newsletter-line input {
  accent-color: var(--contini-purple);
  height: 18px;
  width: 18px;
}

@media (max-width: 980px) {
  .mro-hero-layout,
  .split-heading,
  .differentials-layout,
  .dna-layout,
  .service-compact,
  .conversion-mro,
  .quote-layout {
    grid-template-columns: 1fr;
  }

  .partner-grid,
  .client-grid,
  .category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .psr-grid,
  .approach-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .partner-grid,
  .client-grid,
  .category-grid,
  .dna-grid {
    grid-template-columns: 1fr;
  }

  .image-placeholder-hero {
    min-height: 280px;
  }
}

/* Legacy page system retained for selectors; values locked to DESIGN.md palette. */
:root {
  --draft-paper: #101010;
  --draft-paper-warm: #eeeeee;
  --draft-panel: #eeeeee;
  --draft-line: #eeeeee;
  --draft-line-strong: #eeeeee;
  --ink-main: #101010;
  --ink-soft: #101010;
  --ink-muted: #eeeeee;
  --ink-field: #101010;
  --contini-purple: #662d91;
  --contini-purple-hover: #662d91;
  --contini-purple-deep: #662d91;
  --contini-purple-soft: #eeeeee;
  --obsidian-canvas: var(--ink-main);
  --carbon-lift: var(--ink-field);
  --ash-stroke: rgba(23, 20, 17, 0.28);
  --graphite-mid: var(--ink-soft);
  --granite-muted: var(--ink-muted);
  --stone-muted: #d9d2c4;
  --bone-surface: var(--draft-paper);
  --chalk: var(--draft-panel);
  --paper: var(--draft-paper);
  --surface: var(--draft-panel);
  --line: var(--draft-line);
  --focus: var(--contini-purple);
}

html,
body {
  background-color: var(--draft-paper);
  color: var(--ink-main);
}

.industrial-grid {
  background-color: var(--draft-paper);
}

body::before {
  background: var(--contini-purple);
  content: "";
  height: 1px;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 70;
}

.sticky.top-0,
header.border-b {
  background: rgba(242, 239, 230, 0.94) !important;
  border-color: var(--draft-line) !important;
}

.brand-logo::after {
  height: 3px;
  top: calc(100% + 5px);
  width: 56px;
}

.brand-logo img {
  filter: none;
}

.nav-link {
  color: var(--ink-soft);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  text-transform: uppercase;
}

.nav-link:hover,
.nav-link:focus-visible,
.nav-link[aria-current="page"] {
  color: var(--ink-main);
}

.nav-link[aria-current="page"] {
  text-decoration-thickness: 2px;
}

.mobile-panel {
  background: var(--draft-panel) !important;
  border-color: var(--draft-line) !important;
}

.btn-primary {
  background: var(--ink-main);
  color: var(--draft-panel);
}

.btn-primary:hover {
  background: var(--contini-purple-deep);
  color: var(--draft-panel);
}

.btn-primary svg {
  color: var(--contini-purple-soft);
}

.btn-secondary,
.btn-ghost {
  background: transparent;
  border-color: var(--draft-line-strong);
  color: var(--ink-main);
}

.btn-secondary:hover,
.btn-ghost:hover {
  background: var(--draft-panel);
  border-color: var(--contini-purple);
  color: var(--ink-main);
}

.surface-dark .btn-secondary,
.surface-dark .btn-ghost {
  border-color: rgba(242, 239, 230, 0.42);
  color: var(--draft-panel);
}

.surface-dark .btn-secondary:hover,
.surface-dark .btn-ghost:hover {
  background: var(--draft-panel);
  color: var(--ink-main);
}

h1,
.text-5xl,
.md\:text-6xl,
.md\:text-7xl,
.section-heading {
  color: var(--ink-main) !important;
  font-family: "Geist", system-ui, sans-serif;
  text-transform: uppercase;
}

.surface-dark h1,
.surface-dark .section-heading,
.surface-dark h2,
.surface-dark h3 {
  color: var(--draft-panel) !important;
}

p,
li,
dd,
.section-copy,
.text-slate-600,
.text-slate-200,
.text-slate-300,
.text-slate-400,
.text-muted {
  color: var(--ink-muted) !important;
}

.surface-dark p,
.surface-dark li,
.surface-dark dd,
.surface-dark .section-copy,
.surface-dark .text-slate-200,
.surface-dark .text-slate-300,
.surface-dark .text-muted {
  color: var(--stone-muted) !important;
}

.surface-light,
.bg-white {
  background: rgba(255, 250, 240, 0.92) !important;
  color: var(--ink-main);
}

.surface-dark {
  background-color: var(--ink-main);
  color: var(--draft-panel);
}

.mro-hero {
  border-bottom: 1px solid var(--draft-line);
  min-height: calc(100vh - 80px);
}

.mro-hero.surface-dark {
  background-color: var(--draft-paper);
  color: var(--ink-main);
}

.mro-hero.surface-dark h1,
.mro-hero.surface-dark .section-heading {
  color: var(--ink-main) !important;
}

.mro-hero.surface-dark p,
.mro-hero.surface-dark dd {
  color: var(--ink-muted) !important;
}

.mro-hero-copy {
  border-left: 1px solid var(--contini-purple);
  padding-left: clamp(1rem, 3vw, 2rem);
}

.eyebrow {
  color: var(--contini-purple-deep) !important;
  display: inline-block;
  font-size: 12px;
  margin-bottom: 1.25rem;
  padding-bottom: 0.35rem;
  position: relative;
}

.eyebrow::after {
  background: currentColor;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: 100%;
}

.surface-dark .eyebrow {
  color: var(--contini-purple-soft) !important;
}

.hero-manifest {
  color: var(--ink-soft) !important;
  font-size: clamp(1rem, 1.4vw, 1.16rem);
}

.hero-proof {
  border-color: var(--draft-line);
}

.hero-proof div + div {
  border-color: var(--draft-line);
}

.hero-proof dt {
  color: var(--ink-main);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: clamp(1rem, 1.5vw, 1.25rem);
  text-transform: uppercase;
}

.card,
.psr-grid article,
.category-grid a,
.quote-form,
.rounded-xl.border {
  background: var(--draft-panel);
  border-color: var(--draft-line);
  border-radius: 0;
  box-shadow: none;
  color: var(--ink-main);
  position: relative;
}

.card::before,
.psr-grid article::before,
.category-grid a::before,
.quote-form::before {
  color: var(--draft-line-strong);
  content: "CONTINI / MRO";
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 10px;
  left: 1rem;
  letter-spacing: 0;
  position: absolute;
  top: 0.6rem;
}

.approach-grid .card,
.psr-grid article,
.category-grid a,
.quote-form {
  padding-top: 2.2rem;
}

.image-placeholder {
  background: var(--draft-paper-warm);
  border: 1px solid var(--draft-line-strong);
  border-radius: 0;
  color: var(--ink-muted);
}

.surface-dark .image-placeholder {
  background: var(--ink-field);
  border-color: rgba(242, 239, 230, 0.34);
  color: var(--stone-muted);
}

.image-placeholder span,
.partner-grid span,
.client-grid span,
.brand-word-list li {
  border-radius: 0;
  font-family: "Geist Mono", ui-monospace, monospace;
  text-transform: uppercase;
}

.partner-grid span,
.client-grid span {
  background: var(--draft-panel);
  border-color: var(--draft-line);
  color: var(--ink-main);
}

.surface-dark .client-grid span,
.surface-dark .partner-grid span {
  background: transparent;
  border-color: rgba(242, 239, 230, 0.26);
  color: var(--draft-panel);
}

.category-grid > a > svg,
.route-urgent svg,
.route-planned svg,
.text-action svg {
  color: var(--contini-purple);
}

.text-action {
  color: var(--contini-purple-deep);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  text-transform: uppercase;
}

.differentials-list li,
.service-compact,
.service-compact ul,
.service-compact li,
.dna-grid div {
  border-color: var(--draft-line-strong);
}

.surface-dark .differentials-list li,
.surface-dark .service-compact,
.surface-dark .service-compact ul,
.surface-dark .service-compact li,
.surface-dark .dna-grid div {
  border-color: rgba(242, 239, 230, 0.28);
}

.differentials-list strong,
.differentials-list-light strong,
.dna-grid dt {
  color: var(--ink-main) !important;
}

.surface-dark .differentials-list strong,
.surface-dark .dna-grid dt,
.dna-grid-dark dt {
  color: var(--draft-panel) !important;
}

.conversion-mro {
  background: transparent;
  border-color: var(--draft-line-strong);
  border-radius: 0;
  position: relative;
}


.form-field label {
  color: inherit;
}

.form-field input,
.form-field select,
.form-field textarea {
  background: var(--draft-panel);
  border-color: var(--draft-line-strong);
  border-radius: 0;
  color: var(--ink-main);
}

.surface-dark .form-field input,
.surface-dark .form-field select,
.surface-dark .form-field textarea {
  background: var(--ink-field);
  border-color: rgba(242, 239, 230, 0.34);
  color: var(--draft-panel);
}

.faq-line {
  border-color: rgba(242, 239, 230, 0.28);
}

.faq-button {
  font-family: "Geist Mono", ui-monospace, monospace;
  text-transform: uppercase;
}

.visual,
.visual img,
.card > img,
.card img.mb-5,
.card img.mb-5.rounded-xl {
  border-radius: 0 !important;
}

.footer-logo {
  filter: brightness(0) invert(1);
}

@media (max-width: 980px) {
  .mro-hero {
    min-height: auto;
  }

  .mro-hero-copy {
    border-left-width: 2px;
  }
}

/* Home redesign: Sala de Controle da Operacao. Scoped so internal pages keep their current system. */
.home-control-room {
  --obsidian-canvas: #101010;
  --carbon-lift: #101010;
  --control-panel: #101010;
  --control-line: rgba(238, 238, 238, 0.26);
  --control-line-soft: rgba(238, 238, 238, 0.14);
  --control-muted: rgba(238, 238, 238, 0.68);
  --stone-muted: rgba(238, 238, 238, 0.78);
  --control-text: #eeeeee;
  --control-white: #eeeeee;
  --bone-surface: #eeeeee;
  --chalk: #eeeeee;
  --contini-purple: #662d91;
  --contini-purple-hover: #662d91;
  --contini-purple-deep: #662d91;
  --contini-purple-soft: #eeeeee;
  --space-1: 8px;
  --space-2: 16px;
  --space-3: 24px;
  --space-4: 32px;
  --space-5: 40px;
  --space-7: 56px;
  --space-9: 72px;
  --space-12: 96px;
  background: var(--obsidian-canvas);
  color: var(--control-text);
  font-family: "Geist", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  font-weight: 400;
}

.home-control-room .container {
  margin-inline: auto;
  max-width: 1200px;
  width: calc(100% - 40px);
}

.home-control-room .flex {
  display: flex;
}

.home-control-room .grid {
  display: grid;
}

.home-control-room .hidden {
  display: none;
}

.home-control-room .sticky {
  position: sticky;
}

.home-control-room .top-0 {
  top: 0;
}

.home-control-room .z-50 {
  z-index: 50;
}

.home-control-room .min-h-20 {
  min-height: 80px;
}

.home-control-room .items-center {
  align-items: center;
}

.home-control-room .justify-between {
  justify-content: space-between;
}

.home-control-room .gap-2 {
  gap: 8px;
}

.home-control-room .gap-3 {
  gap: 12px;
}

.home-control-room .gap-4 {
  gap: 16px;
}

.home-control-room .gap-6 {
  gap: 24px;
}

.home-control-room .gap-8 {
  gap: 32px;
}

.home-control-room .p-3 {
  padding: 12px;
}

.home-control-room .py-4 {
  padding-block: 16px;
}

.home-control-room .py-10 {
  padding-block: 40px;
}

.home-control-room .mt-3 {
  margin-top: 12px;
}

.home-control-room .border {
  border-style: solid;
  border-width: 1px;
}

.home-control-room .border-b {
  border-bottom-style: solid;
  border-bottom-width: 1px;
}

.home-control-room .border-t {
  border-top-style: solid;
  border-top-width: 1px;
}

.home-control-room .rounded-lg {
  border-radius: 8px;
}

.home-control-room .text-sm {
  font-size: 14px;
  line-height: 1.25;
}

@media (min-width: 768px) {
  .home-control-room .md\:flex {
    display: flex;
  }

  .home-control-room .md\:hidden {
    display: none;
  }

  .home-control-room .md\:grid-cols-\[1\.2fr_\.8fr_\.8fr\] {
    grid-template-columns: 1.2fr 0.8fr 0.8fr;
  }
}

.home-control-room .section-band {
  padding: var(--space-12) 0;
}

.home-control-room .section-tight {
  padding: var(--space-9) 0;
}

.home-control-room [data-home-block]:not([data-home-block="1"]):not([data-home-block="2"]):not([data-home-block="3"]) {
  content-visibility: auto;
  contain-intrinsic-size: 1px 720px;
}

.home-control-room .industrial-grid {
  background: var(--obsidian-canvas);
}

.home-control-room .sticky.top-0,
.home-control-room header.border-b {
  background: var(--obsidian-canvas) !important;
  border-color: var(--control-line) !important;
  position: sticky;
}

.home-control-room header .container {
  position: relative;
}

.home-control-room [data-menu-toggle] {
  align-items: center;
  background: var(--obsidian-canvas);
  border-color: var(--control-line) !important;
  color: var(--control-white);
  display: inline-flex !important;
  flex: 0 0 auto;
  justify-content: center;
  margin-inline-start: auto;
  min-height: 46px;
  min-width: 46px;
  padding: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}

.home-control-room [data-menu-toggle] svg {
  display: none;
}

.home-control-room [data-menu-toggle]::before,
.home-control-room [data-menu-toggle]::after {
  background: currentColor;
  content: "";
  height: 2px;
  left: 50%;
  position: absolute;
  top: 50%;
  width: 20px;
}

.home-control-room [data-menu-toggle]::before {
  box-shadow: none;
  transform: translate(-50%, -6px);
}

.home-control-room [data-menu-toggle]::after {
  transform: translate(-50%, 6px);
}

.home-control-room [data-menu-toggle][data-open="true"]::before {
  box-shadow: none;
  transform: translate(-50%, -50%) rotate(45deg) !important;
}

.home-control-room [data-menu-toggle][data-open="true"]::after {
  transform: translate(-50%, -50%) rotate(-45deg) !important;
}

.home-control-room .mobile-panel {
  background: var(--obsidian-canvas) !important;
  border-color: var(--control-line) !important;
}

.home-control-room .mobile-panel[aria-hidden="true"] {
  display: none;
}

@media (min-width: 768px) {
  .home-control-room [data-menu-toggle] {
    display: none !important;
  }
}

/* 007: non-Home pages inherit the control-room system without adding a build step. */
body:not(:has(.home-control-room)) header.border-b {
  backdrop-filter: none !important;
}

body:not(:has(.home-control-room)) .mobile-panel {
  background: var(--obsidian-canvas) !important;
  border-color: rgba(238, 238, 238, 0.24) !important;
}

body:not(:has(.home-control-room)) [data-menu-toggle] {
  background: transparent;
  border-color: rgba(238, 238, 238, 0.32) !important;
  border-radius: 3px !important;
  color: var(--bone-surface);
}

body:not(:has(.home-control-room)) .section-band {
  padding: 96px 16px;
}

body:not(:has(.home-control-room)) .section-tight {
  padding: 72px 0;
}

body:not(:has(.home-control-room)) .card,
body:not(:has(.home-control-room)) .product-categories article,
body:not(:has(.home-control-room)) .brand-word-list li,
body:not(:has(.home-control-room)) .contact-form,
body:not(:has(.home-control-room)) .editorial-list article {
  border-radius: 0;
  box-shadow: none !important;
}

body:not(:has(.home-control-room)) h2,
body:not(:has(.home-control-room)) h3,
body:not(:has(.home-control-room)) h4,
body:not(:has(.home-control-room)) strong,
body:not(:has(.home-control-room)) .btn-primary,
body:not(:has(.home-control-room)) .btn-secondary,
body:not(:has(.home-control-room)) .btn-ghost,
body:not(:has(.home-control-room)) .font-bold,
body:not(:has(.home-control-room)) .font-extrabold {
  font-weight: 400 !important;
}

body:not(:has(.home-control-room)) .btn-primary:hover,
body:not(:has(.home-control-room)) .btn-secondary:hover,
body:not(:has(.home-control-room)) .btn-ghost:hover,
body:not(:has(.home-control-room)) .card:hover,
body:not(:has(.home-control-room)) .product-categories article:hover {
  transform: translateY(-1px);
}

body:not(:has(.home-control-room)) .logo-chip {
  background: var(--bone-surface);
  border: 1px solid rgba(16, 16, 16, 0.16);
  min-height: 88px;
  padding: 16px;
}

body:not(:has(.home-control-room)) .logo-chip img {
  filter: grayscale(1) contrast(1.08);
  max-height: 48px;
  transition: filter 180ms ease, opacity 180ms ease;
}

body:not(:has(.home-control-room)) .logo-chip:hover img,
body:not(:has(.home-control-room)) .logo-chip:focus-within img {
  filter: none;
}

body:not(:has(.home-control-room)) .brand-word-list {
  gap: 0;
}

body:not(:has(.home-control-room)) .brand-word-list li {
  background: transparent;
  border-color: rgba(238, 238, 238, 0.28);
  color: var(--bone-surface);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
}

body:not(:has(.home-control-room)) .eyebrow,
body:not(:has(.home-control-room)) label,
body:not(:has(.home-control-room)) .form-field label {
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400 !important;
  letter-spacing: 0;
  text-transform: uppercase;
}

body:not(:has(.home-control-room)) dt {
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400 !important;
  letter-spacing: 0;
}

body:not(:has(.home-control-room)).motion-ready main > section,
body:not(:has(.home-control-room)).motion-ready footer {
  animation: controlPageFade 420ms ease both;
}

body:not(:has(.home-control-room)).motion-ready main > section:nth-child(n + 2) {
  animation-name: controlPageRise;
}

@keyframes controlPageFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes controlPageRise {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 1ms !important;
  }
}

@media (max-width: 767px) {
  body:not(:has(.home-control-room)) .section-band {
    padding: 64px 12px;
  }

  body:not(:has(.home-control-room)) .section-tight {
    padding: 56px 0;
  }
}

:root {
  --obsidian-canvas: #101010;
  --carbon-lift: #101010;
  --control-panel: #101010;
  --ash-stroke: #eeeeee;
  --graphite-mid: #101010;
  --granite-muted: #eeeeee;
  --stone-muted: #eeeeee;
  --bone-surface: #eeeeee;
  --chalk: #eeeeee;
  --contini-purple: #662d91;
  --contini-purple-hover: #662d91;
  --contini-purple-deep: #662d91;
  --contini-purple-soft: #eeeeee;
  --error: #662d91;
  --ink: #101010;
  --muted: #eeeeee;
  --paper: #101010;
  --surface: #eeeeee;
  --line: #eeeeee;
  --focus: #662d91;
}

html,
body {
  background: #101010;
  color: #eeeeee;
}

.home-control-room .brand-logo img,
.home-control-room .footer-logo {
  filter: brightness(0) invert(1);
}

.home-control-room .nav-link {
  color: var(--control-muted);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
}

.home-control-room .nav-link:hover,
.home-control-room .nav-link:focus-visible,
.home-control-room .nav-link[aria-current="page"] {
  color: var(--control-white);
}

.home-control-room .nav-link[aria-current="page"] {
  text-decoration-color: var(--contini-purple);
}

.home-control-room .btn-primary {
  background: var(--bone-surface);
  border-color: var(--bone-surface);
  color: var(--obsidian-canvas);
  transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.home-control-room .btn-primary:hover {
  background: var(--bone-surface);
  border-color: var(--contini-purple);
  color: var(--obsidian-canvas);
}

.home-control-room .btn-primary svg {
  color: var(--contini-purple);
}

.home-control-room .btn-secondary {
  background: transparent;
  border-color: var(--control-line);
  color: var(--control-text);
  transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.home-control-room .btn-secondary:hover,
.home-control-room .btn-secondary:focus-visible {
  background: var(--control-panel);
  border-color: var(--contini-purple);
  color: var(--control-white);
}

.home-control-room .surface-dark {
  background: var(--obsidian-canvas);
  color: var(--control-text);
}

.home-control-room .surface-light {
  background: var(--bone-surface) !important;
  color: var(--obsidian-canvas);
}

.home-control-room a:focus-visible,
.home-control-room button:focus-visible,
.home-control-room input:focus-visible,
.home-control-room select:focus-visible,
.home-control-room textarea:focus-visible {
  outline: 3px solid var(--contini-purple);
  outline-offset: 3px;
  position: relative;
  z-index: 4;
}

.home-control-room h1,
.home-control-room .section-heading,
.home-control-room h2,
.home-control-room h3 {
  color: var(--control-white) !important;
  font-family: "Geist", system-ui, sans-serif;
  font-weight: 400 !important;
  letter-spacing: 0;
  text-transform: none;
}

.home-control-room .section-heading,
.home-control-room h2 {
  font-size: clamp(36px, 4vw, 44px);
  line-height: 1.1;
}

.home-control-room .surface-light h1,
.home-control-room .surface-light .section-heading,
.home-control-room .surface-light h2,
.home-control-room .surface-light h3 {
  color: var(--obsidian-canvas) !important;
}

.home-control-room p,
.home-control-room li,
.home-control-room dd,
.home-control-room .section-copy,
.home-control-room .text-slate-300,
.home-control-room .text-slate-400 {
  color: var(--control-muted) !important;
  font-family: "Geist", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}

.home-control-room .surface-light p,
.home-control-room .surface-light li,
.home-control-room .surface-light dd,
.home-control-room .surface-light .section-copy {
  color: rgba(16, 16, 16, 0.72) !important;
}

.home-control-room .control-label {
  color: var(--control-text) !important;
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  margin: 0 0 1rem;
  text-transform: uppercase;
}

.home-control-room .control-label::before {
  background: var(--contini-purple);
  content: "";
  display: inline-block;
  height: 0.72em;
  margin-right: 0.65rem;
  vertical-align: -0.05em;
  width: 0.72em;
}

.home-control-room .surface-light .control-label {
  color: var(--obsidian-canvas) !important;
}

.control-hero {
  overflow: hidden;
  padding: var(--space-12) 0;
  position: relative;
}

.control-hero::after {
  background: var(--contini-purple);
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  right: 0;
}

.control-hero-grid {
  align-items: center;
  display: grid;
  gap: var(--space-3);
  grid-template-columns: minmax(0, 0.86fr) minmax(320px, 1.14fr);
}

.control-command {
  min-width: 0;
}

.control-command h1 {
  font-size: clamp(44px, 6vw, 72px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  max-width: 11ch;
}

.home-control-room .hero-manifest {
  color: var(--stone-muted) !important;
  font-size: 16px;
  line-height: 1.62;
  max-width: 58ch;
}

.control-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin: var(--space-4) 0 var(--space-5);
}

.hero-photo,
.dna-photo {
  border: 1px solid var(--control-line);
  margin: 0;
  overflow: hidden;
  position: relative;
}

.hero-photo::before,
.dna-photo::before {
  background: var(--contini-purple);
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
}

.hero-photo::after,
.dna-photo::after,
.diagnostic-grid article::after {
  border: 1px solid var(--control-line);
  content: "";
  inset: var(--space-1);
  pointer-events: none;
  position: absolute;
}

.hero-photo img {
  aspect-ratio: 5 / 4;
  filter: grayscale(1) contrast(1.08);
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.hero-photo figcaption {
  background: var(--obsidian-canvas);
  border-top: 1px solid var(--control-line);
  bottom: 0;
  color: var(--stone-muted);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  left: 0;
  letter-spacing: 0;
  padding: var(--space-1) var(--space-2);
  position: absolute;
  right: 0;
}

.home-control-room .hero-proof {
  border-color: var(--control-line);
  margin-bottom: 0;
}

.home-control-room .hero-proof div {
  padding: var(--space-2);
}

.home-control-room .hero-proof div + div {
  border-color: var(--control-line);
  padding-left: var(--space-2);
}

.home-control-room .hero-proof dt {
  color: var(--control-white);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
}

.logo-rail-section {
  border-top: 1px solid var(--control-line-soft);
  padding: calc(var(--space-12) + var(--space-3)) 0 0;
}

.logo-rail-clients {
  padding-top: var(--space-9);
}

.rail-heading {
  align-items: end;
  display: grid;
  gap: var(--space-3);
  grid-template-columns: minmax(0, 0.5fr) minmax(0, 1fr);
  margin-bottom: var(--space-3);
}

.rail-heading h2 {
  font-size: clamp(36px, 4vw, 44px);
  line-height: 1.1;
  margin: 0;
  max-width: 23ch;
}

.logo-rail {
  border-block: 1px solid var(--control-line-soft);
  background: var(--bone-surface);
  overflow: hidden;
}

.logo-rail::-webkit-scrollbar {
  display: none;
}

.logo-rail-track {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  min-width: 0;
  width: 100%;
}

.logo-rail-clients .logo-rail-track {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.logo-rail span[aria-hidden="true"] {
  display: none;
}

.logo-rail span {
  align-items: center;
  background: var(--bone-surface);
  border-right: 1px solid rgba(16, 16, 16, 0.18);
  border-bottom: 1px solid rgba(16, 16, 16, 0.18);
  color: var(--control-muted);
  display: inline-flex;
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  height: clamp(118px, 10vw, 148px);
  justify-content: center;
  min-width: 0;
  padding: 18px var(--space-4);
  position: relative;
  text-transform: uppercase;
  white-space: nowrap;
}

.logo-rail img {
  filter: grayscale(1) contrast(1.05);
  max-height: clamp(40px, 4.8vw, 60px);
  max-width: clamp(140px, 14vw, 204px);
  mix-blend-mode: multiply;
  object-fit: contain;
  opacity: 0.94;
  transition: filter 180ms ease, opacity 180ms ease;
  width: auto;
}

.logo-rail img.logo-no-invert {
  filter: grayscale(1) contrast(1.08);
  mix-blend-mode: normal;
}

.logo-rail img.logo-optical-wide {
  max-height: clamp(32px, 3.6vw, 48px);
  max-width: min(76%, 212px);
}

.logo-rail img.logo-optical-tall {
  max-height: clamp(58px, 5.4vw, 78px);
  max-width: min(68%, 176px);
}

.logo-rail img.logo-optical-compact {
  max-height: clamp(50px, 4.8vw, 68px);
  max-width: min(58%, 124px);
}

.logo-rail span:hover img,
.logo-rail span:focus-within img {
  filter: none;
  opacity: 1;
}

.logo-rail-clients img {
  max-height: clamp(38px, 3.6vw, 52px);
  max-width: min(72%, 180px);
}

.logo-rail-clients span:nth-child(4n) {
  border-right: 0;
}

@media (min-width: 768px) and (max-width: 980px) {
  .logo-rail-track {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .logo-rail-clients .logo-rail-track {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .logo-rail-clients span:nth-child(4n) {
    border-right: 0;
  }

  .logo-rail-clients span {
    height: 128px;
    padding-inline: 22px;
  }
}

.control-section-heading {
  align-items: end;
  border-bottom: 1px solid var(--control-line);
  display: grid;
  gap: var(--space-3);
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  margin-bottom: var(--space-7);
  padding-bottom: var(--space-3);
}

.control-section-heading::after {
  background: var(--contini-purple);
  bottom: -1px;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: min(280px, 48%);
}

.control-section-heading {
  position: relative;
}

.control-section-heading .section-heading {
  justify-self: end;
  margin: 0;
  max-width: 680px;
}

.diagnostic-grid {
  display: grid;
  gap: var(--space-3);
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.diagnostic-grid article {
  border: 1px solid var(--control-line);
  background: var(--carbon-lift);
  min-width: 0;
  overflow: hidden;
  padding: 0 var(--space-3) var(--space-3);
  position: relative;
}

.diagnostic-grid article + article {
  border-left: 1px solid var(--control-line);
}

.diagnostic-grid img {
  aspect-ratio: 16 / 10;
  filter: grayscale(1) contrast(1.08);
  margin: 0 calc(var(--space-3) * -1) var(--space-3);
  max-width: none;
  object-fit: cover;
  width: calc(100% + 48px);
}

.diagnostic-grid span,
.control-modules span {
  color: var(--control-text);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
}

.diagnostic-grid h3,
.control-modules h3,
.category-control-grid h3 {
  font-size: clamp(24px, 2vw, 30px);
  font-weight: 400;
  line-height: 1.12;
  margin: var(--space-2) 0;
}

.diagnostic-grid p,
.control-modules p,
.category-control-grid p {
  margin: 0;
}

.control-modules,
.category-control-grid {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.control-modules article,
.category-control-grid a {
  border-bottom: 1px solid var(--control-line);
  min-height: 260px;
  padding: var(--space-4);
}

.control-modules article {
  background: var(--carbon-lift);
}

.control-modules article + article,
.category-control-grid a + a {
  border-left: 1px solid var(--control-line);
}

.category-control-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.category-control-grid a {
  color: var(--control-text);
  display: block;
  text-decoration: none;
  transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.category-control-grid a:hover,
.category-control-grid a:focus-visible {
  background: var(--control-panel);
  border-color: var(--contini-purple);
  transform: translateY(-1px);
}

.category-control-grid svg {
  color: var(--contini-purple);
  height: 32px;
  margin-bottom: var(--space-9);
  width: 32px;
}

.category-control-grid a:hover svg,
.category-control-grid a:focus-visible svg {
  color: var(--contini-purple);
}

.home-control-room .text-action {
  color: var(--control-text);
  font-family: "Geist", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 400;
  transition: color 180ms ease, transform 180ms ease;
}

.home-control-room .text-action:hover,
.home-control-room .text-action:focus-visible {
  color: var(--control-white);
  transform: translateY(-1px);
}

.service-secondary {
  border-block: 1px solid var(--control-line-soft);
  opacity: 0.78;
}

.home-control-room .service-compact {
  border-color: var(--control-line);
  gap: var(--space-2);
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.78fr);
}

.home-control-room .service-compact .section-heading {
  font-size: clamp(24px, 2.4vw, 32px);
  max-width: 16ch;
}

.home-control-room .service-compact .section-copy {
  max-width: 52ch;
}

.home-control-room .service-compact-actions {
  align-self: end;
}

.home-control-room .service-compact .btn-secondary {
  min-height: 42px;
  padding: 10px 14px;
}

.home-control-room .service-compact li {
  color: var(--stone-muted) !important;
}

.home-control-room .differentials-list li {
  border-color: var(--control-line);
  padding: var(--space-2) 0;
  padding-left: var(--space-2);
}

.home-control-room .differentials-list li:first-child {
  border-top: 0;
}

.home-control-room .differentials-list strong {
  color: var(--control-white) !important;
  font-weight: 400;
}

.home-control-room .dna-layout {
  align-items: stretch;
  gap: var(--space-3);
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
}

.dna-photo img {
  filter: grayscale(1) contrast(1.05);
  height: 100%;
  min-height: 420px;
  object-fit: cover;
  width: 100%;
}

.home-control-room .dna-grid {
  margin-top: var(--space-7);
}

.home-control-room .dna-grid div {
  border-color: var(--control-line);
}

.home-control-room .dna-grid dt,
.home-control-room .dna-grid-dark dt {
  color: var(--control-white) !important;
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: clamp(36px, 4vw, 44px);
  font-weight: 400;
}

.conversion-panel,
.quote-panel {
  position: relative;
}

.home-control-room .conversion-mro {
  align-items: end;
  background: transparent;
  border-color: var(--control-line);
  display: grid;
  gap: var(--space-3);
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.42fr);
  padding: var(--space-5);
}

.home-control-room .conversion-mro::before {
  background: var(--contini-purple);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 1px;
}

.home-control-room .conversion-copy {
  max-width: 760px;
}

.home-control-room .conversion-actions {
  align-self: stretch;
  border-left: 1px solid rgba(16, 16, 16, 0.22);
  display: grid;
  gap: var(--space-3);
  justify-items: start;
  padding-left: var(--space-3);
}

.home-control-room .quote-criteria {
  display: grid;
  gap: var(--space-1);
  list-style: none;
  margin: 0;
  padding: 0;
}

.home-control-room .quote-criteria li {
  color: rgba(16, 16, 16, 0.76) !important;
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  line-height: 1.3;
  padding-left: 18px;
  position: relative;
  text-transform: uppercase;
}

.home-control-room .quote-criteria li::before {
  background: var(--contini-purple);
  content: "";
  height: 6px;
  left: 0;
  position: absolute;
  top: 5px;
  width: 6px;
}

.home-control-room .quote-layout {
  align-items: start;
  gap: var(--space-5);
  grid-template-columns: minmax(0, 0.82fr) minmax(360px, 1.18fr);
}

.home-control-room .quote-intro {
  position: sticky;
  top: 112px;
}

.home-control-room .quote-support {
  border-block: 1px solid rgba(16, 16, 16, 0.22);
  display: grid;
  gap: 0;
  margin: var(--space-4) 0 0;
}

.home-control-room .quote-support div {
  display: grid;
  gap: var(--space-2);
  grid-template-columns: 32px minmax(0, 1fr);
  padding: var(--space-2) 0;
}

.home-control-room .quote-support div + div {
  border-top: 1px solid rgba(16, 16, 16, 0.18);
}

.home-control-room .quote-support dt {
  color: var(--contini-purple) !important;
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
}

.home-control-room .quote-support dd {
  color: rgba(16, 16, 16, 0.72) !important;
  font-size: 16px;
  line-height: 1.45;
  margin: 0;
}

.home-control-room .quote-form {
  background: var(--bone-surface);
  border-color: var(--control-line);
  color: var(--obsidian-canvas);
  padding: var(--space-4);
}

.home-control-room .quote-readiness {
  align-items: center;
  border-block: 1px solid rgba(16, 16, 16, 0.28);
  color: var(--obsidian-canvas);
  display: grid;
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  gap: var(--space-2);
  grid-template-columns: auto minmax(96px, 1fr) auto;
  margin-bottom: var(--space-3);
  padding: var(--space-2) 0;
  text-transform: uppercase;
}

.home-control-room .quote-readiness-track {
  background: rgba(16, 16, 16, 0.2);
  display: block;
  height: 1px;
  overflow: hidden;
}

.home-control-room .quote-readiness-track span {
  background: var(--contini-purple);
  display: block;
  height: 100%;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 180ms ease;
  width: 100%;
}

.home-control-room .quote-readiness[data-ready="true"] {
  border-color: var(--contini-purple);
}

.home-control-room .quote-form::before {
  color: var(--contini-purple-deep);
}

.home-control-room .form-field label {
  color: var(--obsidian-canvas);
  font-family: "Geist Mono", ui-monospace, monospace;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
}

.home-control-room .form-field input,
.home-control-room .form-field select,
.home-control-room .form-field textarea {
  background: var(--control-white);
  border-color: var(--control-line);
  color: var(--obsidian-canvas);
}

.home-control-room .form-field input:focus-visible,
.home-control-room .form-field select:focus-visible,
.home-control-room .form-field textarea:focus-visible {
  border-color: var(--contini-purple);
}

.home-control-room .form-error,
.home-control-room .form-status {
  color: var(--contini-purple) !important;
  font-family: "Geist", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 400;
}

.home-control-room .newsletter-line {
  color: rgba(16, 16, 16, 0.72);
}

.home-control-room .faq-list,
.home-control-room .faq-line {
  border-color: var(--control-line);
}

.home-control-room .faq-list {
  padding-top: var(--space-1);
}

.home-control-room .faq-button {
  color: var(--control-text);
  font-family: "Geist", system-ui, sans-serif;
  font-size: 16px;
  font-weight: 400;
  text-transform: none;
}

.home-control-room .faq-button[aria-expanded="true"] {
  color: var(--control-white);
}

.home-control-room .faq-button[aria-expanded="true"] svg {
  color: var(--contini-purple);
}

.home-control-room footer {
  border-top: 1px solid var(--control-line);
}

@media (prefers-reduced-motion: no-preference) {
  .motion-ready.home-control-room .control-command {
    animation: home-plain-fade 520ms cubic-bezier(0.16, 1, 0.3, 1) both;
  }

  .motion-ready.home-control-room .hero-photo {
    animation: home-plain-fade 640ms cubic-bezier(0.16, 1, 0.3, 1) 90ms both;
  }

  .home-control-room .home-motion-prepare {
    opacity: 0;
    transition:
      opacity 420ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 420ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--motion-delay, 0ms);
  }

  .home-control-room .control-modules article.home-motion-prepare,
  .home-control-room .category-control-grid a.home-motion-prepare {
    transform: translateY(12px);
  }

  .home-control-room .logo-rail-section.home-motion-prepare,
  .home-control-room .dna-layout.home-motion-prepare,
  .home-control-room .conversion-mro.home-motion-prepare {
    transform: translateY(8px);
  }

  .home-control-room .home-motion-prepare.is-visible {
    opacity: 1;
    transform: translateY(0);
  }

  @keyframes home-plain-fade {
    from { opacity: 0; }
    to { opacity: 1; }
  }
}

@media (max-width: 980px) {
  .control-hero-grid,
  .rail-heading,
  .control-section-heading,
  .home-control-room .service-compact,
  .home-control-room .dna-layout,
  .home-control-room .conversion-mro,
  .home-control-room .quote-layout {
    grid-template-columns: 1fr;
  }

  .control-command h1 {
    max-width: 12ch;
  }

  .control-section-heading .section-heading {
    justify-self: start;
  }

  .diagnostic-grid,
  .control-modules,
  .category-control-grid {
    grid-template-columns: 1fr;
  }

  .diagnostic-grid article + article,
  .control-modules article + article,
  .category-control-grid a + a {
    border-left: 1px solid var(--control-line);
    border-top: 0;
  }

  .control-modules article,
  .category-control-grid a {
    min-height: 0;
  }

  .category-control-grid svg {
    margin-bottom: var(--space-4);
  }

  .home-control-room .conversion-mro .btn-primary {
    justify-self: start;
  }
}

@media (max-width: 640px) {
  .home-control-room .container {
    width: calc(100% - 32px);
  }

  .home-control-room .section-band,
  .home-control-room .logo-rail-section,
  .control-hero {
    padding: var(--space-9) 0;
  }

  .home-control-room .section-tight,
  .logo-rail-clients {
    padding: var(--space-7) 0;
  }

  .control-hero {
    min-height: auto;
  }

  .control-command,
  .control-actions,
  .home-control-room .hero-manifest {
    max-width: 18rem;
    min-width: 0;
  }

  .control-command h1 {
    font-size: clamp(40px, 13vw, 52px) !important;
    max-width: 11ch;
    overflow-wrap: break-word;
  }

  .control-actions {
    display: grid;
    width: 100%;
  }

  .control-actions .btn-primary,
  .control-actions .btn-secondary {
    font-size: 15px;
    width: 100%;
  }

  .hero-photo img {
    aspect-ratio: 4 / 3;
  }

  .logo-rail span {
    min-width: 190px;
  }

  .home-control-room .quote-readiness {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .dna-photo img {
    min-height: 300px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-control-room *,
  .home-control-room *::before,
  .home-control-room *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }

  .home-control-room .logo-rail-track {
    animation: none;
    flex-wrap: wrap;
    width: 100%;
  }

  .home-control-room .logo-rail span[aria-hidden="true"] {
    display: none;
  }
}

/* 007 final palette lock: keep legacy tokens inside DESIGN.md palette. */
:root {
  --obsidian-canvas: #101010;
  --carbon-lift: #101010;
  --control-panel: #101010;
  --ash-stroke: #eeeeee;
  --graphite-mid: #101010;
  --granite-muted: #eeeeee;
  --stone-muted: #eeeeee;
  --bone-surface: #eeeeee;
  --chalk: #eeeeee;
  --contini-purple: #662d91;
  --contini-purple-hover: #662d91;
  --contini-purple-deep: #662d91;
  --contini-purple-soft: #eeeeee;
  --error: #662d91;
  --ink: #101010;
  --muted: #eeeeee;
  --paper: #101010;
  --surface: #eeeeee;
  --line: #eeeeee;
  --focus: #662d91;
}

html,
body {
  background: #101010;
  color: #eeeeee;
}

body:not(:has(.home-control-room)) h2,
body:not(:has(.home-control-room)) .section-heading {
  font-size: clamp(36px, 4vw, 44px) !important;
}

body:not(:has(.home-control-room)) h3,
body:not(:has(.home-control-room)) .text-xl,
body:not(:has(.home-control-room)) .text-2xl {
  font-size: clamp(22px, 2vw, 28px) !important;
  line-height: 1.15;
}

body:not(:has(.home-control-room)) p,
body:not(:has(.home-control-room)) li,
body:not(:has(.home-control-room)) dd,
body:not(:has(.home-control-room)) .section-copy,
body:not(:has(.home-control-room)) .text-slate-600,
body:not(:has(.home-control-room)) .text-slate-200,
body:not(:has(.home-control-room)) .text-slate-300,
body:not(:has(.home-control-room)) .text-slate-400 {
  color: #eeeeee !important;
}

body:not(:has(.home-control-room)) .bg-white p,
body:not(:has(.home-control-room)) .bg-white li,
body:not(:has(.home-control-room)) .bg-white dd,
body:not(:has(.home-control-room)) .bg-white .section-copy,
body:not(:has(.home-control-room)) .bg-white .text-slate-600,
body:not(:has(.home-control-room)) .surface-light p,
body:not(:has(.home-control-room)) .surface-light li,
body:not(:has(.home-control-room)) .surface-light dd,
body:not(:has(.home-control-room)) .surface-light .section-copy,
body:not(:has(.home-control-room)) .bg-white .card p,
body:not(:has(.home-control-room)) .bg-white .card li,
body:not(:has(.home-control-room)) .bg-white .card dd,
body:not(:has(.home-control-room)) .bg-white .card .text-slate-600,
body:not(:has(.home-control-room)) .surface-light .card p,
body:not(:has(.home-control-room)) .surface-light .card li,
body:not(:has(.home-control-room)) .surface-light .card dd,
body:not(:has(.home-control-room)) .surface-light .card .text-slate-600 {
  color: #101010 !important;
}

body:not(:has(.home-control-room)) .surface-dark .card p,
body:not(:has(.home-control-room)) .surface-dark .card li,
body:not(:has(.home-control-room)) .surface-dark .card dd,
body:not(:has(.home-control-room)) main > section:not(.bg-white):not(.surface-light) .card p,
body:not(:has(.home-control-room)) main > section:not(.bg-white):not(.surface-light) .card li,
body:not(:has(.home-control-room)) main > section:not(.bg-white):not(.surface-light) .card dd {
  color: #eeeeee !important;
}

/* Detector-compatible global locks for static pages that do not evaluate :has(). */
h2,
.section-heading {
  font-size: clamp(36px, 4vw, 44px) !important;
  font-weight: 400 !important;
}

.bg-white,
.surface-light {
  background: #eeeeee !important;
  color: #101010 !important;
}

.surface-dark,
main > section:not(.bg-white):not(.surface-light) {
  background: #101010 !important;
  color: #eeeeee !important;
}

.card {
  background: #101010 !important;
  border-color: rgba(238, 238, 238, 0.32) !important;
  color: #eeeeee !important;
}

.bg-white .card,
.surface-light .card,
form.card,
.card.text-slate-900 {
  background: #eeeeee !important;
  border-color: rgba(16, 16, 16, 0.28) !important;
  color: #101010 !important;
}

h3,
.text-xl,
.text-2xl {
  font-size: clamp(22px, 2vw, 28px) !important;
  font-weight: 400 !important;
  line-height: 1.15;
}

p,
li,
dd,
.section-copy,
.text-slate-600,
.text-slate-200,
.text-slate-300,
.text-slate-400 {
  color: #eeeeee !important;
}

.bg-white p,
.bg-white li,
.bg-white dd,
.bg-white .section-copy,
.bg-white .text-slate-600,
.surface-light p,
.surface-light li,
.surface-light dd,
.surface-light .section-copy,
.surface-light .text-slate-600,
.bg-white .card p,
.bg-white .card li,
.bg-white .card dd,
.bg-white .card .text-slate-600,
.surface-light .card p,
.surface-light .card li,
.surface-light .card dd,
.surface-light .card .text-slate-600,
form p,
form li,
form dd {
  color: #101010 !important;
}

.surface-dark .card p,
.surface-dark .card li,
.surface-dark .card dd,
main > section:not(.bg-white):not(.surface-light) .card p,
main > section:not(.bg-white):not(.surface-light) .card li,
main > section:not(.bg-white):not(.surface-light) .card dd {
  color: #eeeeee !important;
}

dt {
  text-transform: none !important;
}

/* Responsive polish for the Home control-room surface. */
.home-control-room .faq-line {
  background: transparent !important;
  border-color: var(--control-line) !important;
}

.home-control-room .faq-button {
  background: transparent !important;
  border: 0 !important;
  color: var(--control-white) !important;
  font-family: "Geist", system-ui, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.35;
  padding: 18px 0;
  text-transform: none !important;
}

.home-control-room .faq-button:hover,
.home-control-room .faq-button:focus-visible {
  color: var(--control-white) !important;
}

.home-control-room .faq-button svg {
  color: var(--contini-purple) !important;
  flex: 0 0 auto;
  height: 20px;
  width: 20px;
}

.home-control-room .faq-panel {
  color: var(--control-muted) !important;
  font-size: 16px;
  line-height: 1.55;
  margin: 0 0 20px;
  max-width: 68ch;
}

.home-control-room .faq-panel a {
  color: var(--control-white);
  text-decoration-color: var(--contini-purple);
}

@media (max-width: 767px) {
  .home-control-room {
    overflow-x: hidden;
  }

  .home-control-room .container {
    width: min(100% - 24px, 1200px);
  }

  .home-control-room .min-h-20 {
    min-height: 72px;
  }

  .home-control-room .brand-logo img {
    height: 38px;
    width: auto;
  }

  .home-control-room [data-menu-toggle] {
    min-height: 44px;
    min-width: 44px;
    right: 0;
  }

  .home-control-room .mobile-panel .container {
    gap: 0;
    padding-block: 12px 16px;
  }

  .home-control-room .mobile-panel .nav-link {
    border-bottom: 1px solid var(--control-line-soft);
    min-height: 44px;
    padding: 12px 0;
  }

  .home-control-room .mobile-panel .btn-primary {
    margin-top: 12px;
    width: 100%;
  }

  .control-hero-grid,
  .rail-heading,
  .control-section-heading,
  .faq-layout {
    gap: 24px;
    grid-template-columns: 1fr !important;
  }

  .control-hero {
    padding: 56px 0 64px;
  }

  .control-command,
  .control-actions,
  .home-control-room .hero-manifest {
    max-width: none;
    width: 100%;
  }

  .control-command h1 {
    font-size: clamp(42px, 13vw, 56px) !important;
    max-width: 12ch;
  }

  .home-control-room .hero-manifest {
    line-height: 1.58;
    max-width: 34rem;
  }

  .home-control-room .hero-proof {
    grid-template-columns: 1fr;
  }

  .home-control-room .hero-proof div + div {
    border-left: 0;
    border-top: 1px solid var(--control-line);
  }

  .hero-photo {
    margin-top: 8px;
  }

  .hero-photo img {
    aspect-ratio: 1 / 1;
    min-height: 320px;
  }

  .hero-photo figcaption {
    position: static;
  }

  .logo-rail-section {
    padding-top: 64px;
  }

  .rail-heading {
    margin-bottom: 18px;
  }

  .rail-heading h2 {
    font-size: clamp(30px, 10vw, 38px) !important;
    max-width: 12ch;
  }

  .logo-rail-track {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-width: 0;
    width: 100%;
  }

  .logo-rail span {
    border-bottom: 1px solid rgba(16, 16, 16, 0.2);
    height: 104px;
    min-width: 0;
    padding: 0 14px;
    white-space: normal;
  }

  .logo-rail span:nth-child(2n) {
    border-right: 0;
  }

  .logo-rail img,
  .logo-rail-clients img {
    max-height: 48px;
    max-width: 132px;
  }

  .logo-rail img.logo-optical-wide {
    max-height: 40px;
    max-width: 148px;
  }

  .logo-rail img.logo-optical-tall {
    max-height: 56px;
    max-width: 124px;
  }

  .logo-rail img.logo-optical-compact {
    max-height: 54px;
    max-width: 96px;
  }

  .control-section-heading {
    margin-bottom: 32px;
    padding-bottom: 20px;
  }

  .control-section-heading .section-heading,
  .home-control-room .section-heading,
  .home-control-room h2 {
    font-size: clamp(32px, 10vw, 40px) !important;
    justify-self: start;
    max-width: 14ch;
  }

  .diagnostic-grid,
  .control-modules,
  .category-control-grid {
    gap: 0;
    grid-template-columns: 1fr !important;
  }

  .diagnostic-grid article,
  .control-modules article,
  .category-control-grid a {
    min-height: auto;
    padding: 24px;
  }

  .diagnostic-grid article {
    padding-top: 0;
  }

  .diagnostic-grid article + article,
  .control-modules article + article,
  .category-control-grid a + a {
    border-left: 1px solid var(--control-line);
    border-top: 0;
  }

  .diagnostic-grid img {
    margin-bottom: 24px;
  }

  .category-control-grid svg {
    margin-bottom: 32px;
  }

  .home-control-room .service-compact,
  .home-control-room .dna-layout,
  .home-control-room .conversion-mro,
  .home-control-room .quote-layout {
    grid-template-columns: 1fr !important;
  }

  .home-control-room .conversion-mro {
    align-items: start;
    padding: 24px;
  }

  .home-control-room .conversion-actions {
    border-left: 0;
    border-top: 1px solid rgba(16, 16, 16, 0.22);
    padding-left: 0;
    padding-top: 20px;
    width: 100%;
  }

  .home-control-room .quote-criteria {
    width: 100%;
  }

  .home-control-room .conversion-mro .btn-primary {
    justify-self: stretch;
    width: 100%;
  }

  .dna-photo img {
    min-height: 280px;
  }

  .home-control-room .dna-grid {
    gap: 0;
    grid-template-columns: 1fr;
  }

  .home-control-room .quote-form {
    padding: 24px;
  }

  .home-control-room .quote-intro {
    position: static;
  }

  .home-control-room .quote-support {
    margin-top: 24px;
  }

  .home-control-room .quote-readiness {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .home-control-room .faq-layout {
    align-items: start;
  }

.home-control-room .faq-list {
  padding-top: 8px;
}

  .home-control-room .faq-button {
    align-items: flex-start;
    gap: 16px;
    min-height: 56px;
    padding: 18px 0;
  }

  .home-control-room .faq-button svg {
    margin-top: 2px;
  }

  .home-control-room footer .container {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 380px) {
  .control-command h1 {
    font-size: 40px !important;
  }

  .home-control-room .btn-primary,
  .home-control-room .btn-secondary {
    padding-inline: 14px;
  }

  .logo-rail-track {
    grid-template-columns: 1fr;
  }

  .logo-rail span {
    border-right: 0;
  }
}
