:root {
  --ink: #11100e;
  --coal: #080807;
  --smoke: #2f2d29;
  --paper: #f5f1e9;
  --paper-2: #ebe5da;
  --line: rgba(17, 16, 14, 0.14);
  --line-light: rgba(245, 241, 233, 0.18);
  --gold: #e7d7b9;
  --muted: #746f66;
  --serif: Georgia, "Times New Roman", serif;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--sans);
}

img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
select,
textarea {
  font: inherit;
}

.site-header {
  position: fixed;
  z-index: 20;
  top: 0;
  left: 0;
  right: 0;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 2rem;
  padding: 1.1rem clamp(1rem, 5vw, 5rem);
  color: var(--paper);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.72), rgba(0, 0, 0, 0));
}

.brand {
  font-family: var(--serif);
  font-size: clamp(1rem, 1.6vw, 1.45rem);
  letter-spacing: 0.28em;
  white-space: nowrap;
}

.site-nav,
.header-actions,
.site-footer nav {
  display: flex;
  align-items: center;
  gap: clamp(1rem, 2.4vw, 2.4rem);
  font-size: 0.86rem;
}

.site-nav {
  justify-content: center;
}

.header-actions {
  justify-content: end;
}

.locale {
  white-space: nowrap;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  min-height: 2.65rem;
  padding: 0.72rem 1.35rem;
  border: 1px solid transparent;
  border-radius: 3px;
  cursor: pointer;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.button:hover {
  transform: translateY(-1px);
}

.button-light {
  color: var(--ink);
  background: linear-gradient(180deg, #fff6e6, var(--gold));
  border-color: rgba(255, 255, 255, 0.32);
}

.text-link {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  padding-bottom: 0.22rem;
  border-bottom: 1px solid currentColor;
  font-size: 0.92rem;
}

.text-link.light {
  color: var(--paper);
}

.eyebrow {
  margin: 0 0 1rem;
  font-size: 0.72rem;
  letter-spacing: 0.46em;
  text-transform: uppercase;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1,
h2,
h3 {
  font-family: var(--serif);
  font-weight: 400;
  line-height: 0.96;
}

h1 {
  max-width: 13ch;
  margin-bottom: 1.15rem;
  font-size: clamp(4.2rem, 8vw, 8.25rem);
}

h2 {
  font-size: clamp(2.5rem, 5.4vw, 5.65rem);
}

h3 {
  font-size: clamp(1.5rem, 2.4vw, 2.25rem);
}

.hero {
  position: relative;
  min-height: 100svh;
  display: grid;
  align-items: end;
  color: var(--paper);
  overflow: hidden;
  background: var(--coal);
}

.hero-media,
.hero::after {
  position: absolute;
  inset: 0;
}

.hero-media {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.88) 0%, rgba(0, 0, 0, 0.54) 42%, rgba(0, 0, 0, 0.2) 100%),
    url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") center / cover;
  filter: saturate(0.72) contrast(1.05);
}

.hero::after {
  content: "";
  pointer-events: none;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.9), transparent 38%);
}

.hero-content {
  position: relative;
  z-index: 2;
  width: min(760px, 100%);
  padding: 9rem clamp(1rem, 5vw, 5rem) 7.5rem;
}

.lede {
  max-width: 36rem;
  color: rgba(245, 241, 233, 0.84);
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  line-height: 1.35;
}

.actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.8rem;
  margin-top: 2rem;
}

.hero-note {
  position: absolute;
  z-index: 2;
  right: clamp(1rem, 6vw, 6rem);
  bottom: 7rem;
  display: grid;
  gap: 0.45rem;
  max-width: 12rem;
  color: rgba(245, 241, 233, 0.8);
  font-size: 0.72rem;
  letter-spacing: 0.42em;
  text-transform: uppercase;
}

.ticker {
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  gap: 1.25rem;
  padding: 1.45rem clamp(1rem, 5vw, 5rem);
  border-top: 1px solid var(--line-light);
  color: rgba(245, 241, 233, 0.68);
  font-size: 0.68rem;
  letter-spacing: 0.42em;
  text-transform: uppercase;
  overflow-x: auto;
}

.section {
  padding: clamp(3rem, 7vw, 7rem) clamp(1rem, 5vw, 5rem);
}

.light-section {
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.88), rgba(255, 255, 255, 0) 26rem),
    var(--paper);
}

.section-head,
.split-head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 2rem;
  margin-bottom: 2rem;
}

.split-head > p {
  max-width: 36rem;
  color: var(--smoke);
  font-size: 1.1rem;
  line-height: 1.5;
}

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

.project-card {
  position: relative;
  min-height: 17rem;
  padding: 1.5rem;
  display: grid;
  align-content: space-between;
  color: var(--paper);
  background: var(--coal);
  overflow: hidden;
}

.expanded-projects .project-card {
  min-height: 20rem;
}

.project-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.52), rgba(0, 0, 0, 0.08) 45%, rgba(0, 0, 0, 0.82));
}

.project-card img {
  position: absolute;
  inset: 0;
  transition: transform 650ms ease;
}

.project-card:hover img {
  transform: scale(1.045);
}

.project-card > *:not(img) {
  position: relative;
  z-index: 1;
}

.project-card h2,
.project-card h3 {
  margin-bottom: 0.25rem;
}

.project-card p {
  letter-spacing: 0.42em;
  text-transform: uppercase;
  font-size: 0.72rem;
}

.project-card a {
  justify-self: end;
  align-self: end;
}

.services-preview {
  display: grid;
  grid-template-columns: 0.9fr 2fr;
  gap: 3rem;
  border-top: 1px solid var(--line);
}

.service-intro p:not(.eyebrow) {
  color: var(--muted);
  line-height: 1.5;
}

.service-row,
.detail-grid,
.feature-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.service-row article,
.detail-grid article,
.pricing article,
.feature-grid article {
  border-left: 1px solid var(--line);
  padding: 1.25rem 1.5rem;
}

.icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  margin-bottom: 1.5rem;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-family: var(--serif);
  font-size: 1.3rem;
}

.service-row p,
.detail-grid p,
.feature-grid p,
.pricing p,
.pricing li {
  color: var(--muted);
  line-height: 1.45;
}

.dark-band {
  position: relative;
  color: var(--paper);
  background-color: var(--coal);
  overflow: hidden;
}

.dark-band::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.88), rgba(0, 0, 0, 0.34), rgba(0, 0, 0, 0.78)),
    url("https://images.unsplash.com/photo-1518005020951-eccb494ad742?auto=format&fit=crop&w=2200&q=85") center / cover;
  opacity: 0.58;
  filter: saturate(0.55);
}

.dark-band > * {
  position: relative;
  z-index: 1;
}

.software-band {
  display: grid;
  grid-template-columns: minmax(18rem, 0.85fr) minmax(22rem, 1.25fr) auto;
  align-items: center;
  gap: 4rem;
  padding: clamp(4rem, 7vw, 7rem) clamp(1rem, 5vw, 5rem);
}

.software-band p,
.case-study p,
.process p,
.contact p,
.journal a {
  color: rgba(245, 241, 233, 0.76);
  line-height: 1.55;
}

.dashboard {
  max-width: 48rem;
  min-height: 24rem;
  padding: 1.5rem;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(8, 8, 7, 0.78);
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(10px);
}

.dash-top,
.metrics,
.dashboard li {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}

.dash-top button {
  border: 0;
  background: var(--gold);
  padding: 0.6rem 0.85rem;
}

.metrics {
  margin: 2rem 0;
}

.metrics span {
  flex: 1;
  padding: 1rem;
  border: 1px solid var(--line-light);
  color: rgba(245, 241, 233, 0.65);
}

.metrics b {
  display: block;
  color: var(--paper);
  font-size: 1.4rem;
}

.dashboard ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.dashboard li {
  padding: 0.85rem 0;
  border-top: 1px solid var(--line-light);
}

.software-band aside {
  letter-spacing: 0.38em;
  text-transform: uppercase;
  font-size: 0.72rem;
  line-height: 2;
}

.filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 1.6rem;
  margin-bottom: 2rem;
}

.filters button {
  border: 0;
  border-bottom: 1px solid transparent;
  padding: 0.35rem 0;
  background: transparent;
  color: var(--smoke);
  cursor: pointer;
}

.filters button.active {
  border-color: currentColor;
  color: var(--ink);
}

.project-card.is-hidden {
  display: none;
}

.case-study {
  min-height: 46rem;
  display: grid;
  align-items: center;
  padding: clamp(4rem, 7vw, 7rem) clamp(1rem, 5vw, 5rem);
}

.case-study::before {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.42) 38%, rgba(0, 0, 0, 0.16) 100%),
    url("https://images.unsplash.com/photo-1503376780353-7e6692767b70?auto=format&fit=crop&w=2200&q=90") center / cover;
  opacity: 1;
}

.case-study div {
  max-width: 34rem;
}

.service-detail {
  display: grid;
  grid-template-columns: minmax(18rem, 0.85fr) 2fr;
  gap: 3rem;
}

.process {
  display: grid;
  grid-template-columns: 0.75fr 2fr;
  gap: 3rem;
  padding: clamp(4rem, 7vw, 7rem) clamp(1rem, 5vw, 5rem);
}

.process ol {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1.2rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.process li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.8rem;
  height: 2.8rem;
  margin-bottom: 1rem;
  border: 1px solid var(--paper);
  border-radius: 50%;
}

.process li strong {
  display: block;
  margin-bottom: 0.7rem;
  font-family: var(--serif);
  font-size: 1.35rem;
  font-weight: 400;
}

.about {
  display: grid;
  grid-template-columns: 0.85fr 1.45fr 0.6fr;
  gap: 3rem;
  align-items: center;
}

.about img {
  aspect-ratio: 1.75;
  border: 1px solid var(--line);
}

.about p:not(.eyebrow) {
  color: var(--smoke);
  line-height: 1.55;
}

.pricing {
  display: grid;
  grid-template-columns: minmax(18rem, 1.1fr) repeat(4, minmax(12rem, 1fr));
  gap: 0.8rem;
  border-top: 1px solid var(--line);
}

.pricing article {
  border: 1px solid var(--line);
}

.pricing strong {
  color: var(--ink);
  font-family: var(--serif);
  font-size: 2rem;
  font-weight: 400;
}

.pricing ul {
  padding-left: 1.1rem;
}

.feature-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0.9rem;
}

.feature-grid article {
  min-height: 18rem;
  display: grid;
  align-content: space-between;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.42);
}

.feature-grid div {
  min-height: 7rem;
  display: grid;
  place-items: center;
  color: var(--paper);
  background: linear-gradient(135deg, #161512, #3c3932);
  font-family: var(--serif);
  font-size: 1.5rem;
}

.journal {
  display: grid;
  grid-template-columns: 1.2fr repeat(3, 1fr);
  gap: 1rem;
  padding: clamp(4rem, 7vw, 7rem) clamp(1rem, 5vw, 5rem);
}

.journal article {
  min-height: 18rem;
  padding: 1.4rem;
  border-left: 1px solid var(--line-light);
  display: grid;
  align-content: space-between;
}

.contact {
  display: grid;
  grid-template-columns: 0.8fr 1.15fr 0.55fr;
  gap: 4rem;
  align-items: center;
  padding: clamp(4rem, 7vw, 7rem) clamp(1rem, 5vw, 5rem);
}

.contact::before {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.82), rgba(0, 0, 0, 0.72)),
    url("https://images.unsplash.com/photo-1600566753151-384129cf4e3e?auto=format&fit=crop&w=2200&q=85") center / cover;
  opacity: 1;
}

.contact strong,
.contact small,
blockquote cite {
  display: block;
  letter-spacing: 0.32em;
  text-transform: uppercase;
}

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

.contact label {
  display: grid;
  gap: 0.3rem;
}

.contact label span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.contact .wide {
  grid-column: 1 / -1;
}

.contact input,
.contact select,
.contact textarea {
  width: 100%;
  min-height: 2.85rem;
  color: var(--paper);
  border: 1px solid rgba(245, 241, 233, 0.28);
  background: rgba(8, 8, 7, 0.42);
  padding: 0.8rem 1rem;
}

.contact textarea {
  resize: vertical;
}

.contact form p {
  align-self: center;
  margin: 0;
  font-size: 0.82rem;
}

blockquote {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(1.35rem, 2vw, 1.9rem);
  font-style: italic;
  line-height: 1.25;
}

blockquote cite {
  margin-top: 2rem;
  font-family: var(--sans);
  font-size: 0.7rem;
  font-style: normal;
}

.site-footer {
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  gap: 2rem;
  align-items: center;
  padding: 1.4rem clamp(1rem, 5vw, 5rem);
  color: var(--paper);
  background: #050504;
  font-size: 0.82rem;
}

.site-footer nav {
  justify-content: center;
}

.nav-toggle {
  display: none;
}

@media (max-width: 1100px) {
  .project-grid,
  .service-row,
  .detail-grid,
  .pricing,
  .feature-grid,
  .journal {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .software-band,
  .service-detail,
  .process,
  .about,
  .contact {
    grid-template-columns: 1fr;
  }

  .process ol {
    grid-template-columns: repeat(3, 1fr);
  }

  .site-header {
    grid-template-columns: auto auto;
    justify-content: space-between;
  }

  .site-nav,
  .header-actions {
    display: none;
  }

  .site-header.menu-open .site-nav,
  .site-header.menu-open .header-actions {
    display: flex;
    grid-column: 1 / -1;
    flex-direction: column;
    align-items: start;
    padding: 1rem 0;
  }

  .site-header.menu-open {
    background: rgba(5, 5, 4, 0.96);
  }

  .nav-toggle {
    display: inline-grid;
    gap: 0.35rem;
    width: 2.5rem;
    height: 2.5rem;
    place-content: center;
    color: var(--paper);
    border: 1px solid var(--line-light);
    background: transparent;
  }

  .nav-toggle span {
    display: block;
    width: 1.2rem;
    height: 1px;
    background: currentColor;
  }
}

@media (max-width: 720px) {
  h1 {
    font-size: clamp(3.4rem, 17vw, 5rem);
  }

  h2 {
    font-size: clamp(2.35rem, 12vw, 4rem);
  }

  .hero {
    min-height: 92svh;
  }

  .hero-content {
    padding-top: 7rem;
    padding-bottom: 6.5rem;
  }

  .hero-note {
    display: none;
  }

  .section-head,
  .split-head,
  .actions {
    display: grid;
  }

  .project-grid,
  .services-preview,
  .service-row,
  .detail-grid,
  .pricing,
  .feature-grid,
  .journal,
  .contact form,
  .process ol,
  .site-footer {
    grid-template-columns: 1fr;
  }

  .project-card,
  .expanded-projects .project-card {
    min-height: 21rem;
  }

  .software-band {
    gap: 2rem;
  }

  .dashboard {
    min-height: auto;
  }

  .metrics {
    flex-direction: column;
  }

  .contact {
    gap: 2rem;
  }

  .site-footer nav {
    justify-content: start;
    flex-wrap: wrap;
  }
}

/* Reference-match pass: homepage proportions, spacing and contrast. */
:root {
  --ink: #0d0c0a;
  --coal: #070706;
  --paper: #f1eee7;
  --paper-2: #e8e1d6;
  --line: rgba(13, 12, 10, 0.115);
  --line-light: rgba(241, 238, 231, 0.16);
  --gold: #e9d9bd;
  --muted: #5f5b53;
}

.site-header {
  grid-template-columns: 18.6rem 1fr 18.6rem;
  gap: 1.5rem;
  padding: 1.02rem 5.85rem 0.9rem;
}

.brand {
  font-size: 1.22rem;
  letter-spacing: 0.34em;
}

.site-nav,
.header-actions,
.site-footer nav {
  gap: 2.35rem;
  font-size: 0.72rem;
  font-weight: 400;
}

.header-actions {
  gap: 1.65rem;
}

.locale {
  font-size: 0.72rem;
}

.button {
  min-height: 2.7rem;
  min-width: 10.9rem;
  padding: 0.68rem 1.28rem;
  border-radius: 3px;
  font-size: 0.78rem;
}

.text-link {
  gap: 1.25rem;
  padding-bottom: 0.16rem;
  font-size: 0.78rem;
  border-bottom-width: 1px;
}

.eyebrow {
  margin-bottom: 0.95rem;
  font-size: 0.62rem;
  line-height: 1.3;
  letter-spacing: 0.56em;
}

h1,
h2,
h3 {
  font-weight: 400;
  line-height: 0.94;
}

h1 {
  max-width: 48rem;
  margin-bottom: 0.95rem;
  font-size: clamp(4.7rem, 5.55vw, 6.1rem);
  letter-spacing: -0.015em;
}

h2 {
  font-size: clamp(2.9rem, 3.7vw, 4.35rem);
  letter-spacing: -0.012em;
}

h3 {
  font-size: clamp(1.55rem, 1.75vw, 2rem);
}

.hero {
  min-height: 37.1rem;
  height: 37.1rem;
}

.hero-media {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.76) 29%, rgba(0, 0, 0, 0.25) 64%, rgba(0, 0, 0, 0.26) 100%),
    url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") center right / cover;
  filter: saturate(0.58) contrast(1.08) brightness(0.82);
}

.hero::after {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.74), transparent 32%);
}

.hero-content {
  width: min(53rem, 100%);
  padding: 6.28rem 5.9rem 6.4rem;
}

.lede {
  max-width: 35.2rem;
  font-size: 1.16rem;
  line-height: 1.32;
  color: rgba(241, 238, 231, 0.82);
}

.actions {
  gap: 2.35rem;
  margin-top: 1.45rem;
}

.hero-note {
  right: 5.9rem;
  bottom: 2.45rem;
  max-width: 8.7rem;
  gap: 0.34rem;
  font-size: 0.58rem;
  line-height: 1.45;
  letter-spacing: 0.54em;
}

.ticker {
  gap: 1.38rem;
  padding: 1.08rem 5.9rem;
  font-size: 0.55rem;
  letter-spacing: 0.54em;
}

.section {
  padding: 3rem 5.1rem;
}

.light-section {
  background: #f1eee7;
}

#work {
  padding-top: 1.95rem;
  padding-bottom: 1.55rem;
}

.section-head,
.split-head {
  margin-bottom: 0.8rem;
}

#work .section-head {
  align-items: center;
}

#work .eyebrow {
  margin-bottom: 0;
}

.project-grid {
  gap: 0.88rem;
}

.project-card {
  min-height: 13.75rem;
  padding: 1.25rem 1.35rem;
}

.featured-projects .project-card {
  aspect-ratio: 2.02 / 1;
  min-height: 0;
}

.project-card::after {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.62), rgba(0, 0, 0, 0.12) 45%, rgba(0, 0, 0, 0.82));
}

.project-card h2,
.project-card h3 {
  margin-bottom: 0.2rem;
  font-size: 1.74rem;
  line-height: 0.98;
  letter-spacing: -0.015em;
}

.project-card p {
  font-size: 0.61rem;
  letter-spacing: 0.5em;
}

.project-card span,
.project-card a {
  font-size: 0.73rem;
}

.services-preview {
  grid-template-columns: 25.7rem 1fr;
  gap: 2.1rem;
  padding-top: 2.35rem;
  padding-bottom: 2rem;
  border-top: 1px solid rgba(13, 12, 10, 0.09);
}

.service-intro h2 {
  margin-bottom: 0.8rem;
  font-size: 3.35rem;
  line-height: 0.93;
}

.service-intro p:not(.eyebrow) {
  max-width: 19rem;
  margin-bottom: 1.25rem;
  font-size: 0.96rem;
  line-height: 1.32;
}

.service-row article,
.detail-grid article,
.pricing article,
.feature-grid article {
  padding: 0.6rem 1.45rem 0.4rem;
  border-left-color: rgba(13, 12, 10, 0.11);
}

.icon {
  width: 2.23rem;
  height: 2.23rem;
  margin-bottom: 1.42rem;
  font-size: 1.15rem;
  border-width: 1px;
}

.service-row h3 {
  margin-bottom: 0.75rem;
  font-size: 1.85rem;
}

.service-row p {
  max-width: 14rem;
  min-height: 4.15rem;
  font-size: 0.9rem;
  line-height: 1.35;
}

.service-row small {
  font-size: 0.72rem;
}

.software-band {
  grid-template-columns: 26rem 1fr 9rem;
  min-height: 20.9rem;
  gap: 2.1rem;
  padding: 2.55rem 5.1rem 2.2rem;
}

.software-band::before {
  opacity: 0.64;
}

.software-band h2 {
  margin-bottom: 0.75rem;
  font-size: 3.85rem;
}

.software-band p {
  max-width: 25rem;
  margin-bottom: 0.95rem;
  font-size: 0.95rem;
  line-height: 1.36;
}

.dashboard {
  justify-self: center;
  width: min(100%, 28.5rem);
  min-height: 13.7rem;
  padding: 0.9rem;
  transform: translateY(0.35rem);
}

.dashboard h3 {
  font-size: 1.45rem;
}

.dash-top,
.dashboard li,
.metrics span {
  font-size: 0.62rem;
}

.metrics {
  margin: 1rem 0;
  gap: 0.5rem;
}

.metrics span {
  padding: 0.58rem;
}

.metrics b {
  font-size: 1rem;
}

.dashboard li {
  padding: 0.45rem 0;
}

.software-band aside {
  font-size: 0.58rem;
  line-height: 1.85;
  letter-spacing: 0.55em;
}

.pricing {
  grid-template-columns: 26rem repeat(4, minmax(0, 1fr));
  gap: 0.78rem;
  padding-top: 2.2rem;
  padding-bottom: 1.55rem;
}

.pricing > div h2 {
  margin-bottom: 0.85rem;
  font-size: 3.05rem;
}

.pricing > div p,
.pricing li,
.pricing article p {
  font-size: 0.78rem;
}

.pricing article {
  min-height: 11.6rem;
  padding: 1.15rem 1.35rem;
  border: 1px solid rgba(13, 12, 10, 0.11);
}

.pricing article h3 {
  margin-bottom: 0.8rem;
  font-size: 1.18rem;
  line-height: 1.08;
}

.pricing strong {
  font-size: 1.52rem;
}

.pricing ul {
  margin: 0.8rem 0 0;
  padding-left: 1rem;
}

.contact {
  grid-template-columns: 29rem 1fr 17rem;
  min-height: 20.3rem;
  gap: 3.2rem;
  padding: 2.25rem 5.1rem 2rem;
}

/* Sitewide fix: the fixed 29rem/17rem contact grid above never collapsed on
   tablet/mobile because it's declared unconditionally after the 1100px
   breakpoint rule that tried to reset it. This restores that collapse for
   every page using the shared .contact footer section. */
@media (max-width: 1100px) {
  .contact {
    grid-template-columns: 1fr;
    min-height: 0;
  }
}

.contact h2 {
  margin-bottom: 0.9rem;
  font-size: 3.3rem;
}

.contact p {
  max-width: 31rem;
  font-size: 0.9rem;
  line-height: 1.38;
}

.contact strong {
  margin-top: 2.15rem;
  font-size: 1.02rem;
}

.contact small,
blockquote cite {
  margin-top: 0.52rem;
  font-size: 0.55rem;
  line-height: 1.7;
  letter-spacing: 0.5em;
}

.contact form {
  gap: 0.55rem;
}

.contact input,
.contact select,
.contact textarea {
  min-height: 2.22rem;
  padding: 0.55rem 0.8rem;
  font-size: 0.72rem;
  border-color: rgba(241, 238, 231, 0.22);
  background: rgba(7, 7, 6, 0.5);
}

.contact textarea {
  min-height: 4.95rem;
}

.contact form .button {
  width: 16.3rem;
  margin-top: 0.5rem;
}

.contact form p {
  font-size: 0.66rem;
}

blockquote {
  font-size: 1.25rem;
  line-height: 1.28;
}

.site-footer {
  grid-template-columns: 17rem 1fr auto 19rem;
  min-height: 4.1rem;
  padding: 1.15rem 5.1rem;
  font-size: 0.67rem;
}

.site-footer .brand {
  font-size: 1.05rem;
}

.site-footer p {
  margin: 0;
}

@media (max-width: 1100px) {
  .site-header {
    grid-template-columns: auto auto;
    padding: 1rem 1.25rem;
  }

  .section,
  #work,
  .software-band,
  .pricing,
  .contact,
  .site-footer {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .hero-content {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .ticker {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .hero-note {
    right: 1.25rem;
  }

  .services-preview,
  .pricing,
  .contact,
  .software-band {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .brand {
    font-size: 0.95rem;
    letter-spacing: 0.25em;
  }

  .hero {
    min-height: 42rem;
    height: auto;
  }

  .hero-media {
    background-position: 59% center;
  }

  .hero-content {
    padding-top: 6.6rem;
    padding-bottom: 6.2rem;
  }

  h1 {
    max-width: 22rem;
    font-size: clamp(3.15rem, 14vw, 4.3rem);
  }

  .lede {
    max-width: 21rem;
    font-size: 1rem;
  }

  .button {
    min-width: 9.6rem;
    min-height: 2.55rem;
    font-size: 0.74rem;
  }

  .ticker {
    padding-top: 0.95rem;
    padding-bottom: 0.95rem;
  }

  .section,
  #work {
    padding-top: 2.1rem;
    padding-bottom: 2.1rem;
  }

  .project-grid {
    gap: 0.75rem;
  }

  .featured-projects .project-card,
  .project-card,
  .expanded-projects .project-card {
    min-height: 15.6rem;
    aspect-ratio: auto;
  }

  .service-intro h2,
  .pricing > div h2,
  .contact h2,
  .software-band h2 {
    font-size: clamp(2.65rem, 12vw, 3.4rem);
  }

  .service-row article,
  .detail-grid article,
  .pricing article,
  .feature-grid article {
    padding: 1.25rem 0;
    border-left: 0;
    border-top: 1px solid rgba(13, 12, 10, 0.11);
  }

  .software-band {
    min-height: 0;
    padding-top: 2.7rem;
    padding-bottom: 2.7rem;
  }

  .dashboard {
    width: 100%;
    transform: none;
  }

  .pricing article {
    min-height: 0;
    padding: 1.25rem;
  }

  .contact {
    min-height: 0;
    padding-top: 2.7rem;
    padding-bottom: 2.7rem;
  }

  .contact form .button {
    width: 100%;
  }
}

/* Pixel-spec pass 2: lock desktop geometry to the supplied 1086x1448 reference scaled to 1440px. */
@media (min-width: 1101px) {
  .site-header {
    grid-template-columns: 19.2rem 1fr 19.2rem;
    padding: 0.92rem 5.35rem 0.7rem;
  }

  .brand {
    font-size: 1.18rem;
    letter-spacing: 0.35em;
  }

  .site-nav,
  .header-actions,
  .site-footer nav {
    font-size: 0.66rem;
  }

  .site-nav {
    transform: translateX(-0.2rem);
  }

  .header-actions .button {
    min-width: 10.95rem;
    min-height: 2.38rem;
    padding: 0.58rem 1.1rem;
  }

  .hero {
    height: 33.15rem;
    min-height: 33.15rem;
  }

  .hero-media {
    background:
      linear-gradient(90deg, rgba(0, 0, 0, 0.98) 0%, rgba(0, 0, 0, 0.87) 31%, rgba(0, 0, 0, 0.36) 58%, rgba(0, 0, 0, 0.18) 100%),
      url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") 68% center / cover;
    filter: saturate(0.48) contrast(1.13) brightness(0.76);
  }

  .hero-content {
    width: 45.8rem;
    padding: 5.88rem 5.35rem 5.42rem;
  }

  .hero-content .eyebrow {
    margin-bottom: 0.72rem;
  }

  h1 {
    max-width: 42rem;
    margin-bottom: 0.72rem;
    font-size: 4.32rem;
    line-height: 0.9;
    letter-spacing: -0.018em;
  }

  .lede {
    max-width: 32.5rem;
    font-size: 1rem;
    line-height: 1.29;
  }

  .actions {
    gap: 2.45rem;
    margin-top: 1.25rem;
  }

  .actions .button {
    min-width: 11.15rem;
    min-height: 2.45rem;
  }

  .hero-note {
    right: 5.4rem;
    bottom: 1.9rem;
    max-width: 7.2rem;
    font-size: 0.52rem;
    line-height: 1.5;
    letter-spacing: 0.55em;
  }

  .ticker {
    padding: 0.95rem 5.35rem 0.98rem;
    gap: 1.25rem;
    font-size: 0.51rem;
  }

  #work {
    height: 16.8rem;
    padding: 1.82rem 4.58rem 1.55rem;
  }

  #work .section-head {
    margin-bottom: 0.78rem;
  }

  .featured-projects {
    gap: 0.82rem;
  }

  .featured-projects .project-card {
    height: 12.25rem;
    aspect-ratio: auto;
    padding: 1.08rem 1.22rem;
  }

  .project-card h2,
  .project-card h3 {
    font-size: 1.62rem;
  }

  .project-card p {
    font-size: 0.55rem;
    letter-spacing: 0.47em;
  }

  .project-card span,
  .project-card a {
    font-size: 0.64rem;
  }

  .services-preview {
    height: 16rem;
    grid-template-columns: 25rem 1fr;
    gap: 1.7rem;
    padding: 2rem 4.58rem 1.7rem;
  }

  .service-intro h2 {
    font-size: 3.05rem;
  }

  .service-intro p:not(.eyebrow) {
    max-width: 18rem;
    margin-bottom: 1.1rem;
    font-size: 0.84rem;
  }

  .service-row article {
    padding: 0.25rem 1.3rem 0;
  }

  .icon {
    width: 2.05rem;
    height: 2.05rem;
    margin-bottom: 1.15rem;
  }

  .service-row h3 {
    margin-bottom: 0.6rem;
    font-size: 1.68rem;
  }

  .service-row p {
    min-height: 3.85rem;
    font-size: 0.8rem;
    line-height: 1.34;
  }

  .software-band {
    height: 18.55rem;
    min-height: 18.55rem;
    grid-template-columns: 25.4rem 1fr 8.4rem;
    gap: 1.35rem;
    padding: 2.22rem 4.58rem 1.9rem;
  }

  .software-band h2 {
    font-size: 3.45rem;
  }

  .software-band p {
    max-width: 23rem;
    font-size: 0.82rem;
    line-height: 1.33;
  }

  .software-band .button {
    min-height: 2.35rem;
    min-width: 12.2rem;
  }

  .dashboard {
    width: 27.2rem;
    min-height: 12.7rem;
    transform: translate(0.2rem, 0.3rem);
  }

  .software-band aside {
    font-size: 0.51rem;
  }

  .pricing {
    height: 14.25rem;
    grid-template-columns: 24.8rem repeat(4, minmax(0, 1fr));
    gap: 0.72rem;
    padding: 1.92rem 4.58rem 1.38rem;
  }

  .pricing > div h2 {
    font-size: 2.72rem;
  }

  .pricing article {
    min-height: 9.75rem;
    padding: 0.98rem 1.15rem;
  }

  .pricing article h3 {
    font-size: 1.03rem;
  }

  .pricing strong {
    font-size: 1.34rem;
  }

  .pricing > div p,
  .pricing li,
  .pricing article p {
    font-size: 0.67rem;
    line-height: 1.32;
  }

  .contact {
    height: 18.05rem;
    min-height: 18.05rem;
    grid-template-columns: 29rem 1fr 16rem;
    gap: 2.55rem;
    padding: 1.9rem 4.58rem 1.7rem;
  }

  .contact h2 {
    font-size: 2.95rem;
  }

  .contact p {
    font-size: 0.78rem;
  }

  .contact strong {
    margin-top: 1.65rem;
  }

  .contact input,
  .contact select,
  .contact textarea {
    min-height: 1.92rem;
    padding: 0.42rem 0.72rem;
    font-size: 0.62rem;
  }

  .contact textarea {
    min-height: 4.35rem;
  }

  .contact form .button {
    width: 14.8rem;
    min-height: 2.25rem;
  }

  blockquote {
    font-size: 1.1rem;
  }

  .site-footer {
    height: 3.35rem;
    min-height: 3.35rem;
    grid-template-columns: 16.6rem 1fr auto 18rem;
    padding: 0.82rem 4.58rem;
  }
}

/* Pixel-spec pass 3: reference homepage contains only the visible sections in the supplied image. */
.work-page,
.case-study,
.service-detail,
.process,
.about,
.merit-detail,
.journal {
  display: none !important;
}

/* Pixel-spec pass 4: tighten contrast and density after screenshot comparison. */
@media (min-width: 1101px) {
  h1 {
    font-size: 4.12rem;
    line-height: 0.905;
  }

  .hero-media {
    background:
      linear-gradient(90deg, rgba(0, 0, 0, 0.96) 0%, rgba(0, 0, 0, 0.84) 31%, rgba(0, 0, 0, 0.31) 58%, rgba(0, 0, 0, 0.1) 100%),
      url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") 70% 48% / cover;
    filter: saturate(0.5) contrast(1.08) brightness(0.82);
  }

  .hero-content {
    padding-top: 5.72rem;
  }

  .project-card img {
    filter: saturate(0.55) contrast(1.12) brightness(0.72);
  }

  .project-card::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.74), rgba(0, 0, 0, 0.2) 43%, rgba(0, 0, 0, 0.88));
  }

  .software-band::before {
    opacity: 0.58;
    filter: saturate(0.5) brightness(1.06);
  }

  .dashboard {
    background: rgba(8, 8, 7, 0.72);
  }

  .contact::before {
    background:
      linear-gradient(90deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.84)),
      url("https://images.unsplash.com/photo-1600566753151-384129cf4e3e?auto=format&fit=crop&w=2200&q=85") center / cover;
  }

  .site-footer {
    background: #030302;
  }
}

/* Mobile review fix: prevent small utility/footer text from extending the page width. */
@media (max-width: 720px) {
  body {
    overflow-x: hidden;
  }

  .ticker {
    max-width: 100%;
    white-space: nowrap;
  }

  .site-footer {
    overflow: hidden;
  }

  .site-footer p,
  .ticker span {
    max-width: 100%;
  }
}

/* Targeted composition pass A: MeritSuite, Investment, Contact only. */
@media (min-width: 1101px) {
  .software-band {
    height: 18.55rem;
    min-height: 18.55rem;
    grid-template-columns: 26.6% 48.6% 15.2%;
    gap: 3.2rem;
    padding: 2.08rem 4.58rem 1.72rem;
    align-items: center;
  }

  .software-band::before {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.94) 0%, rgba(0,0,0,0.72) 28%, rgba(0,0,0,0.22) 56%, rgba(0,0,0,0.74) 100%),
      url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=88") 58% 56% / cover;
    opacity: 1;
    filter: saturate(0.42) contrast(1.08) brightness(0.62);
  }

  .software-band h2 {
    margin-bottom: 0.55rem;
    font-size: 3.32rem;
    line-height: 0.94;
  }

  .software-band p {
    max-width: 21.6rem;
    margin-bottom: 0.78rem;
    font-size: 0.79rem;
    line-height: 1.31;
  }

  .software-band .button {
    min-width: 11.35rem;
    min-height: 2.22rem;
    font-size: 0.7rem;
  }

  .dashboard {
    position: relative;
    justify-self: center;
    width: min(100%, 34.5rem);
    height: 13.8rem;
    min-height: 13.8rem;
    padding: 1.05rem 1.2rem;
    border: 1px solid rgba(241,238,231,0.18);
    border-radius: 0.72rem 0.72rem 0.2rem 0.2rem;
    background:
      linear-gradient(115deg, rgba(255,255,255,0.06), rgba(255,255,255,0) 24%),
      rgba(9,9,8,0.88);
    box-shadow: 0 1.15rem 0 -0.78rem #0c0b0a, 0 2.4rem 4.8rem rgba(0,0,0,0.66);
    transform: perspective(48rem) rotateX(2deg) translate(0.45rem, 0.28rem);
    overflow: visible;
    backdrop-filter: none;
  }

  .dashboard::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -1.05rem;
    width: 108%;
    height: 1.12rem;
    transform: translateX(-50%) perspective(30rem) rotateX(62deg);
    background: linear-gradient(180deg, #2b2926, #070706 72%);
    border: 1px solid rgba(241,238,231,0.11);
    border-radius: 0 0 0.6rem 0.6rem;
    box-shadow: 0 1.2rem 1.5rem rgba(0,0,0,0.55);
  }

  .dashboard::after {
    content: "";
    position: absolute;
    inset: -3.9rem -3.4rem -2.6rem -3.1rem;
    z-index: -1;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.04), rgba(0,0,0,0.38)),
      url("https://images.unsplash.com/photo-1600566753086-00f18fb6b3ea?auto=format&fit=crop&w=1400&q=82") 50% 56% / cover;
    filter: saturate(0.34) brightness(0.43) contrast(1.12);
    opacity: 0.78;
    clip-path: polygon(0 62%, 100% 44%, 100% 100%, 0 100%);
  }

  .dashboard h3 {
    width: 13rem;
    margin: 1.05rem 0 0.8rem 6.4rem;
    font-size: 1.65rem;
    line-height: 0.98;
  }

  .dash-top {
    font-size: 0.54rem;
    opacity: 0.86;
  }

  .dash-top button {
    padding: 0.42rem 0.65rem;
    font-size: 0.52rem;
  }

  .metrics {
    width: 19.2rem;
    margin: 0.72rem 0 0 6.4rem;
    gap: 0.46rem;
  }

  .metrics span {
    padding: 0.42rem 0.48rem;
    font-size: 0.48rem;
  }

  .metrics b {
    font-size: 0.85rem;
  }

  .dashboard ul {
    position: absolute;
    right: 1.05rem;
    bottom: 1rem;
    width: 12.2rem;
  }

  .dashboard li {
    padding: 0.34rem 0;
    font-size: 0.5rem;
  }

  .software-band aside {
    justify-self: end;
    max-width: 8rem;
    font-size: 0.5rem;
    line-height: 1.82;
    letter-spacing: 0.58em;
  }

  .pricing {
    height: 14.2rem;
    grid-template-columns: 29.2% repeat(4, minmax(0, 1fr));
    gap: 0.58rem;
    padding: 1.72rem 4.58rem 1.42rem;
    align-items: center;
  }

  .pricing > div h2 {
    max-width: 20.5rem;
    margin-bottom: 0.74rem;
    font-size: 2.52rem;
    line-height: 0.98;
  }

  .pricing > div p {
    max-width: 20rem;
    font-size: 0.72rem;
    line-height: 1.34;
  }

  .pricing article {
    height: 10.45rem;
    min-height: 10.45rem;
    padding: 1.05rem 1.22rem 0.95rem;
    border: 1px solid rgba(13,12,10,0.095);
    background: transparent;
  }

  .pricing article h3 {
    margin-bottom: 0.7rem;
    font-size: 0.98rem;
    line-height: 1.06;
  }

  .pricing article p {
    margin-bottom: 0.58rem;
    font-size: 0.68rem;
  }

  .pricing strong {
    font-size: 1.24rem;
    line-height: 1;
  }

  .pricing ul {
    margin-top: 0.58rem;
  }

  .pricing li {
    margin-bottom: 0.24rem;
    font-size: 0.61rem;
    line-height: 1.24;
  }

  .contact {
    height: 18.05rem;
    min-height: 18.05rem;
    grid-template-columns: 30.2% 47.2% 15%;
    gap: 3.15rem;
    padding: 1.86rem 4.58rem 1.62rem;
    align-items: center;
  }

  .contact::before {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.58) 0%, rgba(0,0,0,0.82) 38%, rgba(0,0,0,0.88) 100%),
      url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=86") 23% 60% / cover;
    filter: saturate(0.38) contrast(1.08) brightness(0.5);
  }

  .contact > div {
    align-self: start;
    padding-top: 0.15rem;
  }

  .contact h2 {
    margin-bottom: 0.78rem;
    font-size: 2.82rem;
    line-height: 0.95;
  }

  .contact p {
    max-width: 24rem;
    font-size: 0.73rem;
    line-height: 1.36;
  }

  .contact strong {
    margin-top: 2.18rem;
    font-size: 1rem;
  }

  .contact form {
    align-self: center;
    gap: 0.52rem;
    max-width: 35.7rem;
  }

  .contact input,
  .contact select,
  .contact textarea {
    min-height: 1.88rem;
    padding: 0.42rem 0.72rem;
    font-size: 0.58rem;
    border-color: rgba(241,238,231,0.24);
    background: rgba(8,8,7,0.42);
  }

  .contact textarea {
    min-height: 4.42rem;
  }

  .contact form .button {
    width: 14.7rem;
    min-width: 14.7rem;
    min-height: 2.22rem;
    margin-top: 0.4rem;
    font-size: 0.64rem;
  }

  .contact form p {
    font-size: 0.56rem;
    color: rgba(241,238,231,0.7);
  }

  blockquote {
    align-self: start;
    margin-top: 1.45rem;
    font-size: 1.04rem;
    line-height: 1.22;
  }

  blockquote::after {
    content: "";
    display: block;
    width: 2rem;
    height: 1px;
    margin: 1.35rem 0 1.05rem;
    background: rgba(241,238,231,0.68);
  }
}

/* Targeted composition pass B: brighten MeritSuite device, soften investment, open contact shadows. */
@media (min-width: 1101px) {
  .software-band::before {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.94) 0%, rgba(0,0,0,0.76) 27%, rgba(0,0,0,0.12) 55%, rgba(0,0,0,0.66) 100%),
      url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=88") 60% 55% / cover;
    filter: saturate(0.42) contrast(1.06) brightness(0.72);
  }

  .dashboard {
    width: min(100%, 36.4rem);
    height: 14.45rem;
    min-height: 14.45rem;
    transform: perspective(48rem) rotateX(2deg) translate(0.1rem, 0.15rem);
    background:
      radial-gradient(circle at 70% 35%, rgba(220,205,178,0.16), transparent 20%),
      linear-gradient(115deg, rgba(255,255,255,0.08), rgba(255,255,255,0) 28%),
      rgba(12,12,11,0.9);
  }

  .dashboard::after {
    opacity: 0.96;
    filter: saturate(0.35) brightness(0.55) contrast(1.08);
  }

  .dashboard h3 {
    margin-left: 6.75rem;
    color: rgba(241,238,231,0.93);
  }

  .metrics {
    margin-left: 6.75rem;
  }

  .metrics span {
    background: rgba(255,255,255,0.035);
  }

  .pricing {
    background: #eee9df;
  }

  .pricing article {
    border-color: rgba(13,12,10,0.075);
    background: rgba(255,255,255,0.09);
  }

  .pricing > div h2 {
    font-size: 2.44rem;
  }

  .pricing article h3 {
    color: #14120f;
  }

  .pricing li,
  .pricing article p,
  .pricing > div p {
    color: #5f5a50;
  }

  .contact::before {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.44) 0%, rgba(0,0,0,0.75) 37%, rgba(0,0,0,0.82) 100%),
      url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=86") 20% 61% / cover;
    filter: saturate(0.4) contrast(1.04) brightness(0.64);
  }

  .contact input,
  .contact select,
  .contact textarea {
    background: rgba(8,8,7,0.36);
    border-color: rgba(241,238,231,0.2);
  }

  blockquote {
    color: rgba(241,238,231,0.86);
  }
}

/* Targeted composition pass C: final balance for the three requested bands. */
@media (min-width: 1101px) {
  .software-band::before {
    background:
      linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 55%, rgba(0,0,0,0.42) 100%),
      linear-gradient(90deg, rgba(0,0,0,0.94) 0%, rgba(0,0,0,0.76) 27%, rgba(0,0,0,0.1) 55%, rgba(0,0,0,0.68) 100%),
      url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=88") 60% 55% / cover;
  }

  .dashboard {
    background:
      radial-gradient(circle at 66% 34%, rgba(235,222,195,0.24), transparent 18%),
      linear-gradient(180deg, rgba(255,255,255,0.07), rgba(0,0,0,0.14) 76%),
      rgba(11,11,10,0.91);
    box-shadow: 0 1.15rem 0 -0.78rem #080807, 0 2.7rem 4.4rem rgba(0,0,0,0.78);
  }

  .dashboard::before {
    background: linear-gradient(180deg, #191816, #050504 72%);
  }

  .dashboard::after {
    opacity: 0.86;
    filter: saturate(0.32) brightness(0.46) contrast(1.12);
  }

  .pricing {
    background: #ebe5da;
  }

  .pricing article {
    background: rgba(255,255,255,0.04);
  }

  .contact::before {
    background:
      linear-gradient(180deg, rgba(0,0,0,0.58) 0%, rgba(0,0,0,0.28) 62%, rgba(0,0,0,0.16) 100%),
      linear-gradient(90deg, rgba(0,0,0,0.52) 0%, rgba(0,0,0,0.78) 38%, rgba(0,0,0,0.86) 100%),
      url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=86") 19% 62% / cover;
    filter: saturate(0.36) contrast(1.08) brightness(0.56);
  }

  .contact form {
    transform: translateY(-0.1rem);
  }
}

/* MeritSuite asset replacement: use supplied dashboard image inside the device shell. */
.dashboard {
  display: block;
  padding: 0.45rem;
}

.dashboard-shot {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  border-radius: 0.42rem 0.42rem 0.08rem 0.08rem;
  filter: saturate(0.95) contrast(1.02) brightness(0.9);
}

@media (min-width: 1101px) {
  .dashboard {
    width: min(100%, 37.6rem);
    height: 15.2rem;
    min-height: 15.2rem;
    padding: 0.5rem;
  }
}

/* Remove MeritSuite laptop/device shell; keep the supplied image only. */
.dashboard {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  overflow: hidden;
}

.dashboard::before,
.dashboard::after {
  content: none !important;
  display: none !important;
}

.dashboard-shot {
  border-radius: 0 !important;
  filter: saturate(0.95) contrast(1.02) brightness(0.88);
}

/* Remove the MeritSuite dashboard image from the section. */
.software-band {
  grid-template-columns: 30% 1fr 16% !important;
}

.dashboard,
.dashboard-shot {
  display: none !important;
}

/* Final homepage polish pass: tighten existing reference composition only. */
@media (min-width: 1101px) {
  .site-header {
    padding-top: 0.86rem;
    padding-left: 5.05rem;
    padding-right: 5.05rem;
  }

  .hero {
    height: 32.9rem;
    min-height: 32.9rem;
  }

  .hero-media {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.97) 0%, rgba(0,0,0,0.84) 30%, rgba(0,0,0,0.3) 57%, rgba(0,0,0,0.08) 100%),
      url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") 69% 48% / cover;
    filter: saturate(0.5) contrast(1.1) brightness(0.8);
  }

  .hero-content {
    width: 43.8rem;
    padding-top: 5.72rem;
    padding-left: 5.05rem;
  }

  h1 {
    max-width: 40.8rem;
    font-size: 4.02rem;
    line-height: 0.91;
  }

  .lede {
    max-width: 31.2rem;
    font-size: 0.96rem;
  }

  .ticker {
    padding-left: 5.05rem;
    padding-right: 5.05rem;
  }

  .hero-note {
    right: 5.05rem;
  }

  #work {
    height: 16.55rem;
    padding-left: 4.55rem;
    padding-right: 4.55rem;
  }

  .featured-projects .project-card {
    height: 12.05rem;
    padding: 1.04rem 1.16rem;
  }

  .featured-projects .project-card:nth-child(1) img {
    object-position: 52% 50%;
  }

  .featured-projects .project-card:nth-child(2) img {
    object-position: 56% 58%;
  }

  .featured-projects .project-card:nth-child(3) img {
    object-position: 47% 52%;
  }

  .project-card h2,
  .project-card h3 {
    font-size: 1.54rem;
  }

  .project-card p {
    margin-bottom: 0;
    font-size: 0.52rem;
  }

  .project-card span,
  .project-card a {
    font-size: 0.61rem;
  }

  .services-preview {
    height: 15.75rem;
    grid-template-columns: 25.4rem 1fr;
    gap: 1.1rem;
    padding-left: 4.55rem;
    padding-right: 4.55rem;
    align-items: stretch;
  }

  .service-intro h2 {
    font-size: 2.92rem;
  }

  .service-intro p:not(.eyebrow) {
    font-size: 0.8rem;
  }

  .service-row article {
    padding-left: 1.18rem;
    padding-right: 1.18rem;
    border-left-color: rgba(13,12,10,0.085);
  }

  .service-row h3 {
    font-size: 1.58rem;
  }

  .service-row p {
    font-size: 0.76rem;
    line-height: 1.32;
  }

  .icon {
    width: 1.95rem;
    height: 1.95rem;
    margin-bottom: 1.06rem;
  }

  .software-band {
    isolation: isolate;
    height: 18.35rem;
    min-height: 18.35rem;
    grid-template-columns: 26.8% 47.8% 15.6% !important;
    gap: 3rem;
    padding: 2.08rem 4.55rem 1.68rem;
  }

  .software-band::before {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.94) 0%, rgba(0,0,0,0.78) 27%, rgba(0,0,0,0.24) 55%, rgba(0,0,0,0.72) 100%),
      url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=88") 58% 54% / cover;
    filter: saturate(0.38) contrast(1.08) brightness(0.66);
  }

  .software-band::after {
    content: "";
    position: absolute;
    z-index: 0;
    left: 39.6%;
    top: 2.45rem;
    width: 36.6rem;
    height: 14.15rem;
    transform: perspective(48rem) rotateX(2deg);
    border: 1px solid rgba(241,238,231,0.16);
    border-radius: 0.62rem 0.62rem 0.1rem 0.1rem;
    background:
      linear-gradient(90deg, rgba(18,18,17,0.98) 0 17%, rgba(255,255,255,0.02) 17% 17.5%, rgba(12,12,11,0.96) 17.5%),
      radial-gradient(circle at 69% 32%, rgba(232,216,185,0.18), transparent 18%),
      linear-gradient(180deg, rgba(255,255,255,0.08), rgba(0,0,0,0.14)),
      #0a0a09;
    box-shadow:
      0 0.9rem 0 -0.62rem #070706,
      0 1.65rem 3.8rem rgba(0,0,0,0.72),
      inset 6.2rem 0 0 rgba(0,0,0,0.25),
      inset 11rem 3.2rem 0 -9.4rem rgba(232,216,185,0.2),
      inset 16.5rem 7.4rem 0 -6rem rgba(255,255,255,0.045),
      inset 22rem 4.2rem 0 -4.4rem rgba(232,216,185,0.08);
  }

  .software-band > div,
  .software-band > aside {
    position: relative;
    z-index: 1;
  }

  .software-band > div:first-child {
    grid-column: 1;
  }

  .software-band > aside {
    grid-column: 3;
  }

  .software-band h2 {
    font-size: 3.24rem;
  }

  .software-band p {
    max-width: 21.2rem;
    font-size: 0.77rem;
  }

  .pricing {
    height: 14rem;
    grid-template-columns: 28.8% repeat(4, minmax(0, 1fr));
    gap: 0.52rem;
    padding-left: 4.55rem;
    padding-right: 4.55rem;
    background: #eee9df;
  }

  .pricing > div h2 {
    font-size: 2.34rem;
    line-height: 1;
  }

  .pricing article {
    height: 10.25rem;
    min-height: 10.25rem;
    padding: 0.98rem 1.08rem 0.88rem;
    border-color: rgba(13,12,10,0.062);
    background: transparent;
  }

  .pricing article h3 {
    font-size: 0.94rem;
  }

  .pricing strong {
    font-size: 1.16rem;
  }

  .pricing li,
  .pricing article p,
  .pricing > div p {
    font-size: 0.59rem;
  }

  .contact {
    height: 17.9rem;
    min-height: 17.9rem;
    grid-template-columns: 30.8% 46.4% 14.2%;
    gap: 3rem;
    padding-left: 4.55rem;
    padding-right: 4.55rem;
  }

  .contact::before {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.52) 0%, rgba(0,0,0,0.78) 38%, rgba(0,0,0,0.88) 100%),
      url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=86") 20% 62% / cover;
    filter: saturate(0.34) contrast(1.08) brightness(0.58);
  }

  .contact h2 {
    font-size: 2.72rem;
  }

  .contact p {
    font-size: 0.7rem;
  }

  .contact form {
    max-width: 34.7rem;
    gap: 0.48rem;
  }

  .contact input,
  .contact select,
  .contact textarea {
    min-height: 1.78rem;
    padding: 0.38rem 0.66rem;
    font-size: 0.55rem;
    border-color: rgba(241,238,231,0.17);
    background: rgba(8,8,7,0.28);
  }

  .contact textarea {
    min-height: 4.2rem;
  }

  .contact form .button {
    min-height: 2.08rem;
    width: 14.2rem;
    min-width: 14.2rem;
  }

  blockquote {
    margin-top: 1.38rem;
    font-size: 0.94rem;
    line-height: 1.22;
  }

  blockquote::after {
    width: 1.75rem;
    margin: 1.15rem 0 0.9rem;
  }

  .site-footer {
    height: 3.24rem;
    min-height: 3.24rem;
    padding: 0.76rem 4.55rem;
    font-size: 0.6rem;
  }

  .site-footer .brand {
    font-size: 0.96rem;
  }

  .site-footer nav {
    gap: 1.85rem;
    font-size: 0.58rem;
  }
}

/* Final correction pass after 1440 screenshot comparison. */
@media (min-width: 1101px) {
  body {
    background: #030302;
  }

  .hero {
    height: 33.22rem;
    min-height: 33.22rem;
  }

  .hero-content {
    padding-top: 5.86rem;
  }

  .software-band::before {
    filter: saturate(0.4) contrast(1.06) brightness(0.73);
  }

  .software-band::after {
    background:
      linear-gradient(90deg, rgba(18,18,17,0.96) 0 17%, rgba(255,255,255,0.025) 17% 17.5%, rgba(13,13,12,0.93) 17.5%),
      radial-gradient(circle at 68% 32%, rgba(232,216,185,0.24), transparent 19%),
      linear-gradient(180deg, rgba(255,255,255,0.1), rgba(0,0,0,0.1)),
      #0d0d0c;
  }

  .contact {
    height: 18.2rem;
    min-height: 18.2rem;
  }

  .contact::before {
    filter: saturate(0.35) contrast(1.06) brightness(0.64);
  }

  .site-footer {
    height: 3.55rem;
    min-height: 3.55rem;
    background: #030302;
  }
}

/* Specific requested fixes: remove MeritSuite mockup, clean contact block, lift hero microcopy. */
@media (min-width: 1101px) {
  .hero-note {
    bottom: 2.75rem !important;
  }

  .software-band {
    grid-template-columns: 28% 1fr 15.5% !important;
    gap: 2.6rem;
  }

  .software-band::after,
  .dashboard,
  .dashboard-shot {
    content: none !important;
    display: none !important;
  }

  .software-band::before {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.94) 0%, rgba(0,0,0,0.78) 29%, rgba(0,0,0,0.3) 58%, rgba(0,0,0,0.7) 100%),
      url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=88") 58% 54% / cover;
    filter: saturate(0.38) contrast(1.08) brightness(0.66);
  }

  .software-band > div:first-child {
    grid-column: 1;
  }

  .software-band > aside {
    grid-column: 3;
  }

  .contact::before {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.54) 0%, rgba(0,0,0,0.68) 44%, rgba(0,0,0,0.72) 100%),
      url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=86") 20% 62% / cover;
    filter: saturate(0.36) contrast(1.05) brightness(0.64);
  }

  .contact blockquote {
    background: transparent !important;
    box-shadow: none !important;
  }
}

/* Final contact-only refinement: soften the heavy right-side black mass. */
@media (min-width: 1101px) {
  .contact::before {
    background:
      radial-gradient(circle at 16% 58%, rgba(76, 70, 60, 0.32), transparent 23rem),
      radial-gradient(circle at 84% 45%, rgba(82, 76, 66, 0.2), transparent 18rem),
      linear-gradient(90deg, rgba(0,0,0,0.54) 0%, rgba(0,0,0,0.64) 46%, rgba(0,0,0,0.58) 72%, rgba(0,0,0,0.66) 100%),
      url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=86") 20% 62% / cover;
    filter: saturate(0.38) contrast(1.04) brightness(0.72);
  }

  .contact blockquote {
    color: rgba(241,238,231,0.9);
    text-shadow: 0 1px 1.2rem rgba(0,0,0,0.42);
  }
}

/* Contact quote micro-adjustment requested by user. */
@media (min-width: 1101px) {
  .contact blockquote {
    margin-top: 2.25rem !important;
  }
}

/* Contact quote second micro-adjustment: lower it further. */
@media (min-width: 1101px) {
  .contact blockquote {
    margin-top: 3.1rem !important;
  }
}

/* Contact quote third micro-adjustment: lower it again. */
@media (min-width: 1101px) {
  .contact blockquote {
    margin-top: 4.8rem !important;
  }
}

/* Work page only: page-specific composition based on the supplied Work reference. */
.work-page-template {
  background: #030302;
}

.work-page-template .site-nav a.active {
  border-bottom: 1px solid currentColor;
  padding-bottom: 0.32rem;
}

.work-hero {
  position: relative;
  height: 29.2rem;
  min-height: 29.2rem;
  overflow: hidden;
  color: var(--paper);
  background: var(--coal);
}

.work-hero-media,
.work-hero::after {
  position: absolute;
  inset: 0;
}

.work-hero-media {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.76) 30%, rgba(0,0,0,0.28) 60%, rgba(0,0,0,0.26) 100%),
    url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") 62% 49% / cover;
  filter: saturate(0.5) contrast(1.1) brightness(0.78);
}

.work-hero::after {
  content: "";
  pointer-events: none;
  background: linear-gradient(0deg, rgba(0,0,0,0.62), transparent 34%);
}

.work-hero-content {
  position: relative;
  z-index: 2;
  width: 45rem;
  padding: 6.62rem 0 0 4.55rem;
}

.work-hero h1 {
  max-width: 44rem;
  margin-bottom: 0.88rem;
  font-size: 4.22rem;
  line-height: 0.93;
  letter-spacing: -0.018em;
}

.work-hero .lede {
  max-width: 32.6rem;
  font-size: 0.98rem;
  line-height: 1.32;
}

.work-hero .actions {
  margin-top: 1.18rem;
}

.work-hero-note {
  position: absolute;
  z-index: 2;
  right: 5.05rem;
  bottom: 2.2rem;
  display: grid;
  gap: 0.32rem;
  max-width: 8rem;
  color: rgba(241,238,231,0.78);
  font-size: 0.52rem;
  line-height: 1.48;
  letter-spacing: 0.55em;
  text-transform: uppercase;
}

.work-index {
  padding: 1.55rem 4.55rem 2.3rem;
  background: #f1eee7;
}

.work-filter-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 1.28rem;
}

.work-filter-row nav {
  display: flex;
  align-items: center;
  gap: 2.25rem;
  overflow-x: auto;
}

.work-filter-row button {
  flex: 0 0 auto;
  border: 0;
  border-bottom: 1px solid transparent;
  padding: 0 0 0.28rem;
  background: transparent;
  color: var(--smoke);
  font-size: 0.72rem;
  cursor: pointer;
}

.work-filter-row button.active {
  border-color: currentColor;
  color: var(--ink);
}

.work-project-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.92rem 1.08rem;
}

.work-project-card {
  position: relative;
  height: 14.35rem;
  overflow: hidden;
  display: grid;
  align-content: space-between;
  padding: 1.08rem 1.18rem;
  color: var(--paper);
  background: var(--coal);
}

.work-project-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.68), rgba(0,0,0,0.12) 44%, rgba(0,0,0,0.84));
}

.work-project-card img {
  position: absolute;
  inset: 0;
  filter: saturate(0.58) contrast(1.12) brightness(0.72);
  transition: transform 650ms ease;
}

.work-project-card:hover img {
  transform: scale(1.04);
}

.work-project-card:nth-child(1) img { object-position: 52% 50%; }
.work-project-card:nth-child(2) img { object-position: 56% 58%; }
.work-project-card:nth-child(3) img { object-position: 47% 52%; }
.work-project-card:nth-child(4) img { object-position: 48% 52%; }
.work-project-card:nth-child(5) img { object-position: 48% 55%; }
.work-project-card:nth-child(6) img { object-position: 54% 50%; }

.work-project-card > *:not(img) {
  position: relative;
  z-index: 1;
}

.work-project-card h2 {
  margin-bottom: 0.24rem;
  font-size: 1.68rem;
  line-height: 0.98;
}

.work-project-card p {
  margin: 0;
  font-size: 0.55rem;
  letter-spacing: 0.5em;
  text-transform: uppercase;
}

.work-project-card span,
.work-project-card a {
  font-size: 0.64rem;
}

.work-project-card a {
  justify-self: end;
  align-self: end;
}

.work-featured {
  position: relative;
  height: 23.8rem;
  min-height: 23.8rem;
  display: grid;
  grid-template-columns: 26.5rem 1fr 10rem;
  gap: 2rem;
  align-items: center;
  padding: 2.6rem 4.55rem;
  color: var(--paper);
  overflow: hidden;
}

.work-featured::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.94) 0%, rgba(0,0,0,0.72) 25%, rgba(0,0,0,0.14) 58%, rgba(0,0,0,0.78) 100%),
    url("https://images.unsplash.com/photo-1503376780353-7e6692767b70?auto=format&fit=crop&w=2200&q=90") 58% 58% / cover;
  filter: saturate(0.54) contrast(1.1) brightness(0.68);
}

.work-featured-copy,
.work-featured-note {
  position: relative;
  z-index: 1;
}

.work-featured-copy {
  max-width: 23rem;
}

.work-featured h2 {
  margin-bottom: 0.6rem;
  font-size: 3.6rem;
}

.work-featured .sub {
  margin-bottom: 1.15rem;
  color: rgba(241,238,231,0.9);
}

.work-featured p:not(.eyebrow) {
  max-width: 22rem;
  margin-bottom: 1.18rem;
  color: rgba(241,238,231,0.78);
  font-size: 0.88rem;
  line-height: 1.42;
}

.work-featured-note {
  grid-column: 3;
  justify-self: end;
  align-self: center;
  display: grid;
  gap: 0.32rem;
  max-width: 7.5rem;
  color: rgba(241,238,231,0.78);
  font-size: 0.52rem;
  line-height: 1.48;
  letter-spacing: 0.55em;
  text-transform: uppercase;
}

.work-featured-note i {
  display: block;
  width: 2rem;
  height: 1px;
  margin: 1.1rem 0;
  background: rgba(241,238,231,0.68);
}

.work-page-template .contact {
  margin-top: 0;
}

@media (max-width: 1100px) {
  .work-hero-content,
  .work-index,
  .work-featured {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .work-project-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .work-featured {
    grid-template-columns: 1fr;
  }

  .work-featured-note {
    grid-column: auto;
    justify-self: start;
  }
}

@media (max-width: 720px) {
  .work-hero {
    height: auto;
    min-height: 38rem;
  }

  .work-hero-content {
    width: auto;
    padding-top: 6.5rem;
    padding-bottom: 5rem;
  }

  .work-hero h1 {
    font-size: clamp(3rem, 13vw, 4rem);
  }

  .work-hero-note {
    display: none;
  }

  .work-filter-row {
    display: grid;
  }

  .work-project-grid {
    grid-template-columns: 1fr;
  }

  .work-project-card {
    height: 16rem;
  }

  .work-featured {
    height: auto;
    min-height: 30rem;
  }
}

/* Work page visual comparison pass 2: adjust desktop rhythm to the reference. */
@media (min-width: 1101px) {
  .work-hero {
    height: 28.6rem;
    min-height: 28.6rem;
  }

  .work-hero-content {
    padding-top: 6.35rem;
  }

  .work-hero h1 {
    font-size: 4.05rem;
    line-height: 0.94;
  }

  .work-index {
    padding-top: 1.48rem;
    padding-bottom: 2.62rem;
  }

  .work-filter-row {
    margin-bottom: 1.18rem;
  }

  .work-project-grid {
    gap: 1.08rem 1.18rem;
  }

  .work-project-card {
    height: 14.72rem;
    padding: 1.08rem 1.16rem;
  }

  .work-project-card h2 {
    font-size: 1.62rem;
  }

  .work-project-card::after {
    background: linear-gradient(180deg, rgba(0,0,0,0.7), rgba(0,0,0,0.1) 42%, rgba(0,0,0,0.82));
  }

  .work-featured {
    height: 23.25rem;
    min-height: 23.25rem;
    grid-template-columns: 25.8rem 1fr 9.7rem;
    padding-top: 2.45rem;
    padding-bottom: 2.4rem;
  }

  .work-featured::before {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.72) 25%, rgba(0,0,0,0.12) 58%, rgba(0,0,0,0.79) 100%),
      url("https://images.unsplash.com/photo-1503376780353-7e6692767b70?auto=format&fit=crop&w=2200&q=90") 58% 62% / cover;
    filter: saturate(0.52) contrast(1.12) brightness(0.62);
  }

  .work-featured h2 {
    font-size: 3.42rem;
  }

  .work-featured p:not(.eyebrow) {
    font-size: 0.84rem;
  }

  .work-page-template .contact {
    height: 18.1rem;
    min-height: 18.1rem;
  }
}

/* Services page only: page-specific composition based on the supplied Services reference. */
.services-page-template {
  background: #030302;
}

.services-page-template .site-nav a.active {
  border-bottom: 1px solid currentColor;
  padding-bottom: 0.32rem;
}

.services-hero {
  position: relative;
  height: 31.35rem;
  min-height: 31.35rem;
  overflow: hidden;
  color: var(--paper);
  background: var(--coal);
}

.services-hero-media,
.services-hero::after {
  position: absolute;
  inset: 0;
}

.services-hero-media {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.96) 0%, rgba(0,0,0,0.78) 31%, rgba(0,0,0,0.28) 60%, rgba(0,0,0,0.22) 100%),
    url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") 69% 48% / cover;
  filter: saturate(0.5) contrast(1.1) brightness(0.8);
}

.services-hero::after {
  content: "";
  pointer-events: none;
  background: linear-gradient(0deg, rgba(0,0,0,0.72), transparent 34%);
}

.services-hero-content {
  position: relative;
  z-index: 2;
  width: 43.2rem;
  padding: 6.42rem 0 0 4.55rem;
}

.services-hero h1 {
  max-width: 41rem;
  margin-bottom: 0.95rem;
  font-size: 4.16rem;
  line-height: 0.92;
  letter-spacing: -0.018em;
}

.services-hero .lede {
  max-width: 34.4rem;
  font-size: 1rem;
  line-height: 1.31;
}

.services-hero .actions {
  margin-top: 1.22rem;
}

.services-hero-note {
  position: absolute;
  z-index: 2;
  right: 5.05rem;
  bottom: 2.35rem;
  display: grid;
  gap: 0.32rem;
  max-width: 8rem;
  color: rgba(241,238,231,0.78);
  font-size: 0.52rem;
  line-height: 1.48;
  letter-spacing: 0.55em;
  text-transform: uppercase;
}

.services-ticker {
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  gap: 1.35rem;
  padding: 0.95rem 4.55rem;
  border-top: 1px solid var(--line-light);
  color: rgba(241,238,231,0.68);
  font-size: 0.52rem;
  letter-spacing: 0.54em;
  text-transform: uppercase;
}

.services-main {
  height: 25.2rem;
  padding: 1.78rem 4.55rem 2rem;
  background: #f1eee7;
}

.services-main-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.5rem;
}

.services-main-head .eyebrow {
  margin: 0;
}

.services-main-head p:last-child {
  margin: 0;
  color: var(--muted);
  font-size: 0.56rem;
  letter-spacing: 0.45em;
  text-transform: uppercase;
}

.services-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  height: calc(100% - 1.3rem);
}

.services-detail-grid article {
  border-left: 1px solid rgba(13,12,10,0.09);
  padding: 1.25rem 2.15rem 0 0;
  display: grid;
  align-content: start;
}

.services-detail-grid article + article {
  padding-left: 2.15rem;
}

.service-top {
  display: flex;
  align-items: center;
  gap: 1.45rem;
  min-height: 2.25rem;
  margin-bottom: 1.15rem;
}

.service-top span {
  font-size: 0.66rem;
}

.services-detail-grid .icon {
  margin: 0;
  width: 2.05rem;
  height: 2.05rem;
  font-style: normal;
}

.services-detail-grid .code {
  width: auto;
  border: 0;
  font-size: 2rem;
}

.services-detail-grid h2 {
  margin-bottom: 0.78rem;
  font-size: 2.1rem;
  line-height: 1;
}

.services-detail-grid p {
  min-height: 3.85rem;
  margin-bottom: 0.9rem;
  color: var(--muted);
  font-size: 0.92rem;
  line-height: 1.35;
}

.services-detail-grid b {
  display: block;
  width: 1.4rem;
  height: 1px;
  margin-bottom: 1.15rem;
  background: rgba(13,12,10,0.5);
}

.services-detail-grid h3 {
  margin-bottom: 0.62rem;
  font-family: var(--sans);
  font-size: 0.54rem;
  line-height: 1;
  letter-spacing: 0.45em;
  text-transform: uppercase;
}

.services-detail-grid ul {
  list-style: none;
  padding: 0;
  margin: 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.38;
}

.services-process {
  height: 18.15rem;
  min-height: 18.15rem;
  display: grid;
  grid-template-columns: 18.5rem 1fr 7rem;
  gap: 2.6rem;
  align-items: center;
  padding: 2.2rem 4.55rem;
  color: var(--paper);
  overflow: hidden;
}

.services-process::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.94) 0%, rgba(0,0,0,0.78) 23%, rgba(0,0,0,0.34) 58%, rgba(0,0,0,0.78) 100%),
    url("https://images.unsplash.com/photo-1600566753086-00f18fb6b3ea?auto=format&fit=crop&w=2200&q=86") 50% 58% / cover;
  filter: saturate(0.35) contrast(1.1) brightness(0.55);
}

.process-copy,
.process-timeline,
.services-process aside {
  position: relative;
  z-index: 1;
}

.process-copy h2 {
  margin-bottom: 0.82rem;
  font-size: 2.72rem;
  line-height: 0.96;
}

.process-copy p:not(.eyebrow) {
  margin-bottom: 0.92rem;
  color: rgba(241,238,231,0.76);
  font-size: 0.82rem;
  line-height: 1.35;
}

.process-timeline {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.process-timeline li {
  position: relative;
}

.process-timeline li:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 1.16rem;
  left: 2.65rem;
  width: calc(100% - 2.1rem);
  height: 1px;
  background: rgba(241,238,231,0.42);
}

.process-timeline span {
  display: inline-grid;
  place-items: center;
  width: 2.28rem;
  height: 2.28rem;
  margin-bottom: 1rem;
  border: 1px solid rgba(241,238,231,0.9);
  border-radius: 50%;
  font-size: 0.62rem;
}

.process-timeline strong {
  display: block;
  margin-bottom: 0.55rem;
  font-family: var(--serif);
  font-size: 1.02rem;
  font-weight: 400;
}

.process-timeline p {
  margin: 0;
  color: rgba(241,238,231,0.72);
  font-size: 0.64rem;
  line-height: 1.38;
}

.services-process aside {
  justify-self: end;
  color: rgba(241,238,231,0.78);
  font-size: 0.52rem;
  line-height: 1.7;
  letter-spacing: 0.55em;
  text-transform: uppercase;
}

.services-process aside::after {
  content: "";
  display: block;
  width: 2rem;
  height: 1px;
  margin-top: 1rem;
  background: rgba(241,238,231,0.7);
}

.expect-section {
  height: 13.7rem;
  display: grid;
  grid-template-columns: 25% 1fr;
  gap: 2rem;
  align-items: center;
  padding: 1.85rem 4.55rem;
  background: #f1eee7;
}

.expect-head h2 {
  font-size: 2.82rem;
  line-height: 0.96;
}

.expect-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  height: 100%;
}

.expect-grid article {
  border-left: 1px solid rgba(13,12,10,0.09);
  padding: 1.05rem 1.8rem;
}

.expect-grid i {
  display: block;
  height: 1.9rem;
  margin-bottom: 0.7rem;
  font-style: normal;
  font-size: 1.45rem;
}

.expect-grid h3 {
  margin-bottom: 0.55rem;
  font-size: 1.32rem;
  line-height: 1.02;
}

.expect-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.36;
}

.services-page-template .contact {
  margin-top: 0;
}

@media (max-width: 1100px) {
  .services-hero-content,
  .services-main,
  .services-process,
  .expect-section {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .services-detail-grid,
  .process-timeline,
  .expect-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .services-process,
  .expect-section {
    height: auto;
    min-height: 0;
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .services-hero {
    height: auto;
    min-height: 39rem;
  }

  .services-hero-content {
    width: auto;
    padding-top: 6.5rem;
    padding-bottom: 5rem;
  }

  .services-hero h1 {
    font-size: clamp(3rem, 13vw, 4rem);
  }

  .services-hero-note {
    display: none;
  }

  .services-ticker {
    overflow-x: auto;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .services-main {
    height: auto;
  }

  .services-main-head {
    align-items: start;
  }

  .services-detail-grid,
  .process-timeline,
  .expect-grid {
    grid-template-columns: 1fr;
  }

  .services-detail-grid article,
  .expect-grid article {
    padding: 1.25rem 0;
    border-left: 0;
    border-top: 1px solid rgba(13,12,10,0.09);
  }

  .process-timeline li:not(:last-child)::after {
    display: none;
  }
}

/* Services page visual comparison pass 2: align section transitions and density. */
@media (min-width: 1101px) {
  .services-hero {
    height: 29.95rem;
    min-height: 29.95rem;
  }

  .services-hero-content {
    padding-top: 6.05rem;
  }

  .services-hero h1 {
    font-size: 3.98rem;
    line-height: 0.93;
  }

  .services-hero .lede {
    max-width: 33rem;
    font-size: 0.94rem;
  }

  .services-main {
    height: 27.7rem;
    padding-top: 1.92rem;
    padding-bottom: 2.1rem;
  }

  .services-detail-grid article {
    padding-top: 1.4rem;
  }

  .services-detail-grid h2 {
    font-size: 2.04rem;
  }

  .services-detail-grid p {
    font-size: 0.88rem;
  }

  .services-process {
    height: 17.9rem;
    min-height: 17.9rem;
  }

  .expect-section {
    height: 13.35rem;
  }

  .services-page-template .contact {
    height: 18.2rem;
    min-height: 18.2rem;
  }
}

/* Services page: normalize all four service columns to one shared structure. */
.services-page-template .services-detail-grid article,
.services-page-template .services-detail-grid article + article {
  padding: 1.4rem 2.15rem 0 2.15rem;
  display: grid;
  grid-template-rows: 2.25rem auto 3.85rem auto auto auto;
  align-content: start;
}

.services-page-template .service-top {
  align-self: start;
}

.services-page-template .services-detail-grid h2,
.services-page-template .services-detail-grid p,
.services-page-template .services-detail-grid b,
.services-page-template .services-detail-grid h3,
.services-page-template .services-detail-grid ul {
  align-self: start;
}

/* Services hero microcopy: move slightly higher. */
@media (min-width: 1101px) {
  .services-hero-note {
    bottom: 3.1rem !important;
  }
}

/* Contact form usability refinement: readable subtle fields and warm focus states. */
.contact input,
.contact select,
.contact textarea {
  color: rgba(241, 238, 231, 0.9) !important;
  background: rgba(241, 238, 231, 0.075) !important;
  border-color: rgba(241, 238, 231, 0.34) !important;
  font-size: 0.68rem !important;
  line-height: 1.25;
  outline: none;
}

.contact input::placeholder,
.contact textarea::placeholder {
  color: rgba(241, 238, 231, 0.66);
  opacity: 1;
}

.contact select:invalid,
.contact select option[value=""] {
  color: rgba(241, 238, 231, 0.66);
}

.contact select option {
  color: #14120f;
  background: #f1eee7;
}

.contact input:focus,
.contact select:focus,
.contact textarea:focus,
.contact input:focus-visible,
.contact select:focus-visible,
.contact textarea:focus-visible {
  border-color: rgba(233, 217, 189, 0.78) !important;
  background: rgba(241, 238, 231, 0.105) !important;
  box-shadow: 0 0 0 1px rgba(233, 217, 189, 0.18);
}

/* Contact form final readability nudge: larger field text without changing layout. */
.contact input,
.contact select,
.contact textarea {
  font-size: 0.76rem !important;
}

/* About page only: page-specific composition based on the supplied About reference. */
.about-page-template { background: #030302; }
.about-page-template .site-nav a.active { border-bottom: 1px solid currentColor; padding-bottom: 0.32rem; }

.about-hero { position: relative; height: 29.6rem; min-height: 29.6rem; overflow: hidden; color: var(--paper); background: var(--coal); }
.about-hero-media, .about-hero::after { position: absolute; inset: 0; }
.about-hero-media { background: linear-gradient(90deg, rgba(0,0,0,0.96) 0%, rgba(0,0,0,0.78) 33%, rgba(0,0,0,0.24) 62%, rgba(0,0,0,0.16) 100%), url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") 68% 48% / cover; filter: saturate(0.5) contrast(1.1) brightness(0.8); }
.about-hero::after { content: ""; pointer-events: none; background: linear-gradient(0deg, rgba(0,0,0,0.68), transparent 34%); }
.about-hero-content { position: relative; z-index: 2; width: 45rem; padding: 6.1rem 0 0 4.55rem; }
.about-hero h1 { max-width: 43rem; margin-bottom: 0.85rem; font-size: 3.9rem; line-height: 0.93; letter-spacing: -0.018em; }
.about-hero .lede { max-width: 33.2rem; font-size: 0.96rem; line-height: 1.32; }
.about-hero .actions { margin-top: 1.1rem; }
.about-hero-note { position: absolute; z-index: 2; right: 5.2rem; top: 6.35rem; display: grid; gap: 0.32rem; max-width: 8rem; color: rgba(241,238,231,0.78); font-size: 0.52rem; line-height: 1.52; letter-spacing: 0.55em; text-transform: uppercase; }
.about-hero-note i { display: block; width: 2rem; height: 1px; margin-top: 1rem; background: rgba(241,238,231,0.72); }

.about-approach { height: 24.9rem; display: grid; grid-template-columns: 27% 48% 17%; gap: 2.4rem; align-items: center; padding: 1.75rem 4.55rem; background: #f1eee7; border-bottom: 1px solid rgba(13,12,10,0.08); }
.approach-copy h2 { margin-bottom: 5.05rem; font-size: 2.88rem; line-height: 0.98; }
.approach-copy p:not(.eyebrow) { max-width: 20.5rem; margin-bottom: 1rem; color: var(--muted); font-size: 0.78rem; line-height: 1.38; }
.approach-image { height: 20.4rem; margin: 0; border: 1px solid rgba(13,12,10,0.08); overflow: hidden; background: var(--coal); }
.approach-image img { filter: saturate(0.55) contrast(1.08) brightness(0.72); object-position: 50% 48%; }
.approach-note { align-self: stretch; padding-top: 2.3rem; color: var(--muted); }
.approach-note .eyebrow { color: #4d4942; line-height: 1.7; }
.approach-note .small { margin-top: 2.4rem; }
.approach-note i { display: block; width: 2rem; height: 1px; margin: 1.1rem 0 1.5rem; background: rgba(13,12,10,0.5); }
.approach-note p:not(.eyebrow) { font-size: 0.78rem; line-height: 1.45; }

.about-values { height: 17.15rem; display: grid; grid-template-columns: 25% 1fr; gap: 2.5rem; align-items: stretch; padding: 2rem 4.55rem; background: #f1eee7; }
.values-head h2 { font-size: 2.72rem; line-height: 0.97; }
.values-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.values-grid article { border-left: 1px solid rgba(13,12,10,0.09); padding: 0.92rem 1.55rem 0; display: grid; grid-template-rows: 2.25rem auto 1fr auto; }
.values-grid i { font-style: normal; font-size: 1.72rem; line-height: 1; }
.values-grid h3 { margin: 0.2rem 0 0.7rem; font-size: 1.24rem; line-height: 1.03; }
.values-grid p { margin: 0; color: var(--muted); font-size: 0.72rem; line-height: 1.36; }
.values-grid span { align-self: end; color: var(--muted); font-size: 0.62rem; }

.about-industries { height: 18.05rem; display: grid; grid-template-columns: 25% 1fr; gap: 2.5rem; align-items: center; padding: 2.2rem 4.55rem; color: var(--paper); overflow: hidden; }
.about-industries::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,0.94), rgba(0,0,0,0.72), rgba(0,0,0,0.86)), url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=86") center / cover; filter: saturate(0.38) brightness(0.45); }
.industries-copy, .industry-grid { position: relative; z-index: 1; }
.industries-copy h2 { margin-bottom: 0.9rem; font-size: 2.72rem; line-height: 0.98; }
.industries-copy p { color: rgba(241,238,231,0.76); font-size: 0.82rem; line-height: 1.4; }
.industry-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.industry-grid article { position: relative; height: 11.6rem; overflow: hidden; border: 1px solid rgba(241,238,231,0.13); background: var(--coal); }
.industry-grid article::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0.14), rgba(0,0,0,0.82)); }
.industry-grid img { position: absolute; inset: 0; filter: saturate(0.55) contrast(1.08) brightness(0.72); }
.industry-grid div { position: absolute; z-index: 1; left: 0.9rem; right: 0.9rem; bottom: 0.82rem; }
.industry-grid h3 { margin-bottom: 0.18rem; font-size: 1.24rem; line-height: 1; }
.industry-grid p { margin: 0; color: rgba(241,238,231,0.72); font-size: 0.52rem; letter-spacing: 0.42em; text-transform: uppercase; }

.about-closing { height: 17.6rem; min-height: 17.6rem; display: grid; grid-template-columns: 36% 1fr 16%; gap: 2rem; align-items: center; padding: 2.1rem 4.55rem; color: var(--paper); overflow: hidden; }
.about-closing::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.32) 56%, rgba(0,0,0,0.8) 100%), url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=86") 48% 62% / cover; filter: saturate(0.38) contrast(1.05) brightness(0.62); }
.closing-copy, .about-closing blockquote { position: relative; z-index: 1; }
.closing-copy h2 { margin-bottom: 0.85rem; font-size: 2.72rem; line-height: 0.98; }
.closing-copy p { max-width: 28rem; margin-bottom: 1.22rem; color: rgba(241,238,231,0.78); font-size: 0.82rem; line-height: 1.42; }
.about-closing blockquote { grid-column: 3; align-self: start; margin-top: 2.7rem; font-size: 1.06rem; line-height: 1.22; color: rgba(241,238,231,0.88); }
.about-closing blockquote::after { content: ""; display: block; width: 2rem; height: 1px; margin: 1.3rem 0 1rem; background: rgba(241,238,231,0.72); }
.about-closing cite { display: block; margin-top: 0; font-family: var(--sans); font-size: 0.52rem; font-style: normal; letter-spacing: 0.52em; text-transform: uppercase; }

@media (max-width: 1100px) {
  .about-hero-content, .about-approach, .about-values, .about-industries, .about-closing { padding-left: 1.25rem; padding-right: 1.25rem; }
  .about-approach, .about-values, .about-industries, .about-closing { height: auto; grid-template-columns: 1fr; }
  .values-grid, .industry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-closing blockquote { grid-column: auto; }
}

@media (max-width: 720px) {
  .about-hero { height: auto; min-height: 39rem; }
  .about-hero-content { width: auto; padding-top: 6.5rem; padding-bottom: 5rem; }
  .about-hero h1 { font-size: clamp(3rem, 13vw, 4rem); }
  .about-hero-note { display: none; }
  .values-grid, .industry-grid { grid-template-columns: 1fr; }
  .values-grid article { border-left: 0; border-top: 1px solid rgba(13,12,10,0.09); padding: 1.2rem 0; }
}

/* About page visual comparison pass 2: tighten band heights and contrast. */
@media (min-width: 1101px) {
  .about-hero { height: 29.35rem; min-height: 29.35rem; }
  .about-approach { height: 25.35rem; }
  .approach-image img { filter: saturate(0.5) contrast(1.08) brightness(0.62); }
  .about-values { height: 17.45rem; }
  .about-industries { height: 18.35rem; }
  .about-closing { height: 18rem; min-height: 18rem; }
  .about-closing::before { filter: saturate(0.38) contrast(1.05) brightness(0.69); }
}

/* About strict visual correction pass 1: reference art direction and proportions. */
@media (min-width: 1101px) {
  .about-hero {
    height: 29.05rem;
    min-height: 29.05rem;
  }

  .about-hero-media {
    background:
      linear-gradient(90deg, rgba(0,0,0,0.97) 0%, rgba(0,0,0,0.82) 34%, rgba(0,0,0,0.2) 62%, rgba(0,0,0,0.13) 100%),
      url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") 66% 48% / cover;
    filter: saturate(0.45) contrast(1.14) brightness(0.72);
  }

  .about-hero-content {
    width: 44rem;
    padding-top: 6rem;
  }

  .about-hero h1 {
    max-width: 42.8rem;
    margin-bottom: 0.78rem;
    font-size: 3.82rem;
    line-height: 0.92;
  }

  .about-hero .lede {
    max-width: 32.2rem;
    font-size: 0.92rem;
    line-height: 1.31;
  }

  .about-hero .actions {
    margin-top: 1rem;
  }

  .about-hero-note {
    top: 6.05rem;
    right: 5.05rem;
  }

  .about-approach {
    height: 24.65rem;
    grid-template-columns: 25.8% 50.2% 16.2%;
    gap: 2.1rem;
    padding-top: 1.65rem;
    padding-bottom: 1.65rem;
  }

  .approach-copy h2 {
    margin-bottom: 4.62rem;
    font-size: 2.74rem;
    line-height: 0.98;
  }

  .approach-copy p:not(.eyebrow) {
    max-width: 20.2rem;
    font-size: 0.74rem;
  }

  .approach-image {
    height: 20.3rem;
  }

  .approach-image img {
    object-position: 48% 48%;
    filter: saturate(0.38) contrast(1.12) brightness(0.5);
  }

  .approach-note {
    padding-top: 2.15rem;
  }

  .approach-note p:not(.eyebrow) {
    font-size: 0.74rem;
    line-height: 1.45;
  }

  .about-values {
    height: 16.75rem;
    grid-template-columns: 25.2% 1fr;
    gap: 2.35rem;
    padding-top: 1.88rem;
    padding-bottom: 1.75rem;
  }

  .values-head h2 {
    font-size: 2.58rem;
    line-height: 0.97;
  }

  .values-grid article {
    padding: 0.74rem 1.45rem 0;
    grid-template-rows: 2.05rem 2.25rem 1fr 1rem;
    border-left-color: rgba(13,12,10,0.075);
  }

  .values-grid i {
    font-size: 1.55rem;
  }

  .values-grid h3 {
    margin: 0.14rem 0 0;
    font-size: 1.13rem;
  }

  .values-grid p {
    font-size: 0.68rem;
    line-height: 1.34;
  }

  .about-industries {
    height: 17.72rem;
    grid-template-columns: 25.8% 1fr;
    gap: 2.25rem;
    padding-top: 2.04rem;
    padding-bottom: 2rem;
  }

  .about-industries::before {
    filter: saturate(0.32) brightness(0.38) contrast(1.12);
  }

  .industries-copy h2 {
    font-size: 2.54rem;
  }

  .industries-copy p {
    font-size: 0.78rem;
  }

  .industry-grid {
    gap: 0.9rem;
  }

  .industry-grid article {
    height: 11.45rem;
  }

  .industry-grid img {
    filter: saturate(0.46) contrast(1.12) brightness(0.66);
  }

  .industry-grid article::after {
    background: linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.82));
  }

  .industry-grid h3 {
    font-size: 1.14rem;
  }

  .about-closing {
    height: 17.85rem;
    min-height: 17.85rem;
    grid-template-columns: 36% 1fr 15.5%;
  }

  .about-closing::before {
    background:
      radial-gradient(circle at 7% 46%, rgba(63,78,50,0.3), transparent 14rem),
      linear-gradient(90deg, rgba(0,0,0,0.58) 0%, rgba(0,0,0,0.25) 54%, rgba(0,0,0,0.72) 100%),
      url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=86") 46% 63% / cover;
    filter: saturate(0.36) contrast(1.08) brightness(0.62);
  }

  .closing-copy h2 {
    font-size: 2.56rem;
  }

  .closing-copy p {
    max-width: 27rem;
    font-size: 0.78rem;
  }

  .about-closing blockquote {
    margin-top: 2.45rem;
    font-size: 0.98rem;
  }
}

/* About strict visual correction pass 2: restore reference section rhythm. */
@media (min-width: 1101px) {
  .about-approach {
    height: 25.85rem;
  }

  .about-values {
    height: 20.35rem;
    padding-top: 2.12rem;
    padding-bottom: 2.05rem;
  }

  .values-grid article {
    grid-template-rows: 2.05rem 2.2rem 1fr 1rem;
  }

  .about-industries::before {
    filter: saturate(0.3) brightness(0.34) contrast(1.14);
  }

  .industry-grid img {
    filter: saturate(0.42) contrast(1.12) brightness(0.58);
  }

  .about-closing::before {
    filter: saturate(0.34) contrast(1.08) brightness(0.54);
  }
}

/* About closing: restore approved enquiry form layout. */
@media (min-width: 1101px) {
  .about-page-template .about-closing.contact {
    grid-template-columns: 30.8% 46.4% 14.2%;
    gap: 3rem;
    align-items: center;
  }

  .about-page-template .about-closing .closing-copy strong,
  .about-page-template .about-closing .closing-copy small {
    display: block;
    letter-spacing: 0.32em;
    text-transform: uppercase;
  }

  .about-page-template .about-closing .closing-copy strong {
    margin-top: 2.18rem;
    font-size: 1rem;
  }

  .about-page-template .about-closing .closing-copy small {
    margin-top: 0.52rem;
    font-size: 0.55rem;
    line-height: 1.7;
    letter-spacing: 0.5em;
  }

  .about-page-template .about-closing form {
    position: relative;
    z-index: 1;
    align-self: center;
    max-width: 34.7rem;
    transform: translateY(-0.1rem);
  }

  .about-page-template .about-closing blockquote {
    grid-column: 3;
  }
}

/* MeritSuite page only: page-specific composition based on the supplied MeritSuite reference. */
.meritsuite-page-template { background: #030302; }
.meritsuite-page-template .site-nav a.active { border-bottom: 1px solid currentColor; padding-bottom: 0.32rem; }

.suite-hero { position: relative; height: 30.4rem; min-height: 30.4rem; overflow: hidden; color: var(--paper); background: var(--coal); }
.suite-hero-media, .suite-hero::after { position: absolute; inset: 0; }
.suite-hero-media { background: linear-gradient(90deg, rgba(0,0,0,0.96) 0%, rgba(0,0,0,0.82) 32%, rgba(0,0,0,0.36) 60%, rgba(0,0,0,0.26) 100%), url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=90") 66% 50% / cover; filter: saturate(0.45) contrast(1.12) brightness(0.72); }
.suite-hero::after { content: ""; pointer-events: none; background: linear-gradient(0deg, rgba(0,0,0,0.7), transparent 34%); }
.suite-hero-content { position: relative; z-index: 2; width: 49rem; padding: 5.7rem 0 0 4.55rem; }
.suite-hero h1 { max-width: 50rem; margin-bottom: 0.82rem; font-size: 3.78rem; line-height: 0.94; letter-spacing: -0.018em; }
.suite-hero .lede { max-width: 36rem; font-size: 0.92rem; line-height: 1.32; }
.suite-play { display: inline-flex; align-items: center; gap: 1rem; color: rgba(241,238,231,0.88); font-size: 0.74rem; }
.suite-play span { display: inline-grid; place-items: center; width: 1.8rem; height: 1.8rem; border: 1px solid rgba(241,238,231,0.64); border-radius: 50%; font-size: 0.62rem; }
.suite-device { position: absolute; z-index: 2; right: 11.2rem; top: 4.9rem; width: 39rem; height: 18.35rem; padding: 0.5rem; border: 1px solid rgba(241,238,231,0.18); border-radius: 0.74rem 0.74rem 0.16rem 0.16rem; background: rgba(7,7,6,0.9); box-shadow: 0 1rem 0 -0.62rem #050504, 0 2rem 4.5rem rgba(0,0,0,0.72); transform: perspective(52rem) rotateX(2deg); overflow: hidden; }
.suite-device img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 18%; border-radius: 0.42rem 0.42rem 0.06rem 0.06rem; filter: saturate(0.9) contrast(1.03) brightness(0.84); }
.suite-hero-note { position: absolute; z-index: 2; right: 5.1rem; top: 8rem; display: grid; gap: 0.28rem; color: rgba(241,238,231,0.78); font-size: 0.52rem; line-height: 1.45; letter-spacing: 0.55em; text-transform: uppercase; }
.suite-hero-note i { display: block; width: 2rem; height: 1px; margin-top: 0.9rem; background: rgba(241,238,231,0.7); }

.suite-platform { height: 34.9rem; padding: 1.7rem 1.35rem 1.7rem; background: #f1eee7; }
.platform-head { display: grid; grid-template-columns: 31% 37% 17%; justify-content: space-between; align-items: center; padding: 0 3.2rem 1.55rem; }
.platform-head h2 { margin: 0; font-size: 3.02rem; line-height: 0.96; }
.platform-head > p { max-width: 27rem; margin: 2rem 0 0; color: var(--muted); font-size: 0.82rem; line-height: 1.42; }
.platform-head aside { justify-self: end; color: var(--muted); font-size: 0.55rem; line-height: 1.72; letter-spacing: 0.52em; text-transform: uppercase; }
.platform-head aside i { display: block; width: 2rem; height: 1px; margin-top: 1rem; background: rgba(13,12,10,0.55); }
.suite-feature-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0.95rem; }
.suite-feature-grid article { min-height: 20.2rem; display: grid; grid-template-rows: 9.2rem auto 1fr auto; padding: 0 0.45rem 0.25rem; border-left: 1px solid rgba(13,12,10,0.08); }
.feature-shot { position: relative; padding: 1.05rem; color: var(--paper); background: #10100f; overflow: hidden; border: 1px solid rgba(13,12,10,0.14); font-family: var(--sans); }
.feature-shot::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 78% 28%, rgba(233,217,189,0.16), transparent 34%), linear-gradient(135deg, rgba(255,255,255,0.08), rgba(0,0,0,0.08)); }
.feature-shot span, .feature-shot small { position: relative; z-index: 1; display: block; }
.feature-shot span { font-family: var(--serif); font-size: 1.1rem; line-height: 1.1; }
.feature-shot small { margin-top: 1rem; color: rgba(241,238,231,0.7); font-size: 0.56rem; line-height: 1.45; }
.feature-shot.projects { background: linear-gradient(rgba(0,0,0,0.28), rgba(0,0,0,0.65)), url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=500&q=80") center / cover; }
.feature-shot.analytics span { font-size: 2.1rem; }
.suite-feature-grid h3 { margin: 0.75rem 0 0.45rem; font-size: 1.58rem; line-height: 1; }
.suite-feature-grid p { margin: 0; color: var(--muted); font-size: 0.72rem; line-height: 1.35; }
.suite-feature-grid footer { display: flex; justify-content: space-between; align-items: end; color: var(--muted); font-size: 0.62rem; }

.suite-benefits { height: 19.75rem; min-height: 19.75rem; display: grid; grid-template-columns: 31% 43% 17%; gap: 2.3rem; align-items: center; padding: 2.35rem 4.55rem; color: var(--paper); overflow: hidden; }
.suite-benefits::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,0.94), rgba(0,0,0,0.64), rgba(0,0,0,0.86)), url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2200&q=86") center / cover; filter: saturate(0.36) brightness(0.48) contrast(1.1); }
.benefits-copy, .benefits-grid, .suite-benefits blockquote { position: relative; z-index: 1; }
.benefits-copy h2 { margin-bottom: 0.9rem; font-size: 2.84rem; line-height: 0.96; }
.benefits-copy p { max-width: 27rem; margin-bottom: 1.1rem; color: rgba(241,238,231,0.76); font-size: 0.78rem; line-height: 1.42; }
.benefits-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); height: 100%; }
.benefits-grid article { border-left: 1px solid rgba(241,238,231,0.16); padding: 2.1rem 1.8rem 0; }
.benefits-grid i { display: block; margin-bottom: 0.9rem; font-style: normal; font-size: 1.55rem; }
.benefits-grid h3 { margin-bottom: 0.6rem; font-size: 1.32rem; line-height: 1.02; }
.benefits-grid p { color: rgba(241,238,231,0.72); font-size: 0.68rem; line-height: 1.35; }
.suite-benefits blockquote { align-self: start; margin-top: 2.2rem; font-size: 1rem; line-height: 1.28; color: rgba(241,238,231,0.88); }
.suite-benefits blockquote::after { content: ""; display: block; width: 2rem; height: 1px; margin: 1.25rem 0 0.9rem; background: rgba(241,238,231,0.7); }
.suite-benefits cite { display: block; font-family: var(--sans); font-size: 0.52rem; font-style: normal; letter-spacing: 0.52em; text-transform: uppercase; }

.suite-pricing { height: 13.45rem; display: grid; grid-template-columns: 31% 20% 20% 23%; gap: 1.05rem; align-items: center; padding: 1.55rem 4.55rem; background: #f1eee7; }
.pricing-copy h2 { margin-bottom: 0.82rem; font-size: 2.48rem; line-height: 0.98; }
.pricing-copy p { max-width: 25rem; color: var(--muted); font-size: 0.72rem; line-height: 1.38; }
.suite-pricing article { height: 9.3rem; padding: 1rem 1.25rem; border: 1px solid rgba(13,12,10,0.1); background: transparent; }
.suite-pricing h3 { margin-bottom: 0.38rem; font-family: var(--sans); font-size: 0.82rem; font-weight: 600; line-height: 1; }
.suite-pricing article p { margin-bottom: 0.32rem; color: var(--ink); font-size: 0.7rem; }
.suite-pricing strong { font-family: var(--serif); font-size: 1.74rem; font-weight: 400; }
.suite-pricing small { display: block; color: var(--muted); font-size: 0.58rem; line-height: 1.35; }
.suite-pricing ul { margin: 0.62rem 0 0; padding-left: 1rem; color: var(--muted); font-size: 0.58rem; line-height: 1.45; }
.suite-pricing .tailored { display: grid; align-content: center; }
.suite-pricing .tailored p { font-family: var(--serif); font-size: 1.28rem; }
.suite-pricing .tailored .text-link { width: 11.5rem; justify-content: center; margin-top: 0.9rem; padding: 0.55rem 1rem; border: 1px solid rgba(13,12,10,0.35); }

.suite-demo { height: 17.9rem; min-height: 17.9rem; }
.suite-demo::before { background: radial-gradient(circle at 7% 46%, rgba(63,78,50,0.28), transparent 14rem), linear-gradient(90deg, rgba(0,0,0,0.56) 0%, rgba(0,0,0,0.66) 47%, rgba(0,0,0,0.68) 100%), url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=2200&q=86") 20% 62% / cover; filter: saturate(0.38) contrast(1.04) brightness(0.7); }
.suite-demo blockquote { margin-top: 3rem !important; }

@media (max-width: 1100px) {
  .suite-hero-content, .suite-benefits, .suite-pricing { padding-left: 1.25rem; padding-right: 1.25rem; }
  .suite-device { position: relative; right: auto; top: auto; margin: 2rem 1.25rem 0; width: auto; }
  .suite-platform, .suite-benefits, .suite-pricing { height: auto; min-height: 0; }
  .platform-head, .suite-benefits, .suite-pricing { grid-template-columns: 1fr; }
  .suite-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .suite-hero { height: auto; min-height: 48rem; }
  .suite-hero-content { width: auto; padding-top: 6.5rem; padding-bottom: 1rem; }
  .suite-hero h1 { font-size: clamp(3rem, 13vw, 4rem); }
  .suite-hero-note { display: none; }
  .suite-device { height: 12rem; }
  .suite-feature-grid, .benefits-grid { grid-template-columns: 1fr; }
  .suite-feature-grid article { min-height: auto; }
}

/* MeritSuite final visual correction pass - scoped to MeritSuite only */
body.meritsuite-page-template .suite-hero {
  height: 31.7rem;
  min-height: 31.7rem;
}
body.meritsuite-page-template .suite-hero-media {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.96) 0%, rgba(0,0,0,0.82) 30%, rgba(0,0,0,0.36) 50%, rgba(0,0,0,0.54) 100%),
    url('/assets/studio-hero.png') center / cover no-repeat;
}
body.meritsuite-page-template .suite-hero-content {
  padding-top: 5.45rem;
  width: 45rem;
}
body.meritsuite-page-template .suite-hero h1 {
  max-width: 43rem;
  font-size: 3.68rem;
  line-height: 0.96;
}
body.meritsuite-page-template .suite-device {
  right: 8.35rem;
  top: 4.2rem;
  width: 29.2rem;
  transform: perspective(1050px) rotateY(-6deg) rotateX(2deg);
  box-shadow: 0 1.8rem 3.6rem rgba(0,0,0,0.58), 0 0 0 1px rgba(238,228,207,0.16);
}
body.meritsuite-page-template .suite-device::after {
  height: 2.35rem;
  transform: perspective(30rem) rotateX(60deg) translateY(-0.22rem);
}
body.meritsuite-page-template .suite-hero-note {
  top: 7.6rem;
  right: 5rem;
}
body.meritsuite-page-template .suite-platform {
  height: 35.8rem;
  padding-top: 1.55rem;
}
body.meritsuite-page-template .platform-head {
  grid-template-columns: 31.5% 45.5% 16%;
  min-height: 8.6rem;
  margin-bottom: 1rem;
}
body.meritsuite-page-template .platform-head h2 {
  font-size: 2.86rem;
  line-height: 0.96;
}
body.meritsuite-page-template .platform-head p {
  max-width: 24rem;
  padding-top: 2.6rem;
}
body.meritsuite-page-template .suite-feature-grid {
  gap: 1.05rem;
}
body.meritsuite-page-template .feature-shot {
  height: 11.85rem;
}
body.meritsuite-page-template .suite-feature h3 {
  margin-top: 0.65rem;
  font-size: 1.42rem;
}
body.meritsuite-page-template .suite-feature p {
  max-width: 12.2rem;
  font-size: 0.72rem;
  line-height: 1.36;
}
body.meritsuite-page-template .suite-benefits {
  height: 20.2rem;
  min-height: 20.2rem;
}
body.meritsuite-page-template .suite-pricing {
  height: 15.2rem;
  grid-template-columns: 31% 20.8% 20.8% 23%;
  align-items: center;
}
body.meritsuite-page-template .suite-pricing article {
  height: 10.55rem;
  border-color: rgba(13,12,10,0.14);
  background: rgba(255,255,255,0.12);
}
body.meritsuite-page-template .suite-demo {
  height: 18.55rem;
  min-height: 18.55rem;
}
body.meritsuite-page-template .suite-demo::before {
  background:
    radial-gradient(circle at 8% 45%, rgba(63,78,50,0.24), transparent 15rem),
    linear-gradient(90deg, rgba(0,0,0,0.34), rgba(0,0,0,0.18) 42%, rgba(0,0,0,0.42)),
    url('/assets/contact-stone.png') center 49% / cover no-repeat;
}
body.meritsuite-page-template .suite-demo .contact-form {
  margin-top: 0.1rem;
}
body.meritsuite-page-template .site-footer {
  height: 3.75rem;
}

@media (max-width: 1100px) {
  body.meritsuite-page-template .suite-hero,
  body.meritsuite-page-template .suite-platform,
  body.meritsuite-page-template .suite-benefits,
  body.meritsuite-page-template .suite-pricing,
  body.meritsuite-page-template .suite-demo {
    height: auto;
    min-height: 0;
  }
}

/* MeritSuite mobile containment - scoped */
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-hero-content {
    width: auto;
    max-width: none;
    padding: 6.5rem 1.25rem 1rem;
  }
  body.meritsuite-page-template .suite-hero h1,
  body.meritsuite-page-template .suite-hero .lede,
  body.meritsuite-page-template .suite-hero .eyebrow,
  body.meritsuite-page-template .suite-hero .actions,
  body.meritsuite-page-template .suite-hero .button,
  body.meritsuite-page-template .suite-play {
    width: auto;
    max-width: 100%;
  }
  body.meritsuite-page-template .suite-device {
    left: 1.25rem;
    right: 1.25rem;
    top: 29rem;
    width: auto;
    transform: none;
  }
  body.meritsuite-page-template .suite-pricing {
    display: grid;
    grid-template-columns: 1fr;
  }
  body.meritsuite-page-template .suite-pricing article,
  body.meritsuite-page-template .suite-pricing .tailored {
    width: auto;
    max-width: 100%;
  }
  body.meritsuite-page-template .site-footer {
    min-width: 0;
  }
  body.meritsuite-page-template .site-footer p {
    max-width: 100%;
    overflow-wrap: anywhere;
  }
}

/* MeritSuite strict composition correction pass 2 - scoped to MeritSuite only */
body.meritsuite-page-template {
  --suite-paper: #f1eee7;
  --suite-line: rgba(24,22,18,0.11);
}
body.meritsuite-page-template .site-header {
  height: 4.18rem;
  padding-left: 4.75rem;
  padding-right: 4.75rem;
}
body.meritsuite-page-template .suite-hero {
  height: 31.55rem;
  min-height: 31.55rem;
}
body.meritsuite-page-template .suite-hero-media {
  background:
    radial-gradient(circle at 71% 28%, rgba(226,205,170,0.16), transparent 16rem),
    linear-gradient(90deg, rgba(0,0,0,0.97) 0%, rgba(0,0,0,0.83) 31%, rgba(0,0,0,0.30) 54%, rgba(0,0,0,0.45) 100%),
    url('/assets/studio-hero.png') center 45% / cover no-repeat;
  filter: saturate(0.58) contrast(1.08) brightness(0.86);
}
body.meritsuite-page-template .suite-hero::after {
  background: linear-gradient(0deg, rgba(0,0,0,0.68), transparent 36%);
}
body.meritsuite-page-template .suite-hero-content {
  width: 43.75rem;
  padding: 5.25rem 0 0 4.75rem;
}
body.meritsuite-page-template .suite-hero .eyebrow {
  margin-bottom: 0.62rem;
}
body.meritsuite-page-template .suite-hero h1 {
  max-width: 42.25rem;
  margin-bottom: 0.92rem;
  font-size: 3.86rem;
  line-height: 0.93;
  letter-spacing: -0.012em;
}
body.meritsuite-page-template .suite-hero .lede {
  max-width: 34.6rem;
  font-size: 0.93rem;
  line-height: 1.32;
}
body.meritsuite-page-template .suite-hero .actions {
  margin-top: 1.2rem;
  gap: 1.75rem;
}
body.meritsuite-page-template .suite-hero .button {
  min-width: 12.1rem;
  height: 2.6rem;
}
body.meritsuite-page-template .suite-device {
  right: 10.55rem;
  top: 4.35rem;
  width: 30.4rem;
  height: 18.85rem;
  padding: 0.42rem;
  border-radius: 0.48rem 0.48rem 0.12rem 0.12rem;
  border-color: rgba(236,226,207,0.2);
  background: linear-gradient(145deg, rgba(24,24,22,0.94), rgba(4,4,3,0.96));
  box-shadow: 0 1.15rem 0 -0.78rem rgba(2,2,2,0.92), 0 2.2rem 4.2rem rgba(0,0,0,0.7), inset 0 0 0 1px rgba(255,255,255,0.025);
  transform: perspective(72rem) rotateY(-4deg) rotateX(1.5deg);
}
body.meritsuite-page-template .suite-device::before {
  content: '';
  position: absolute;
  left: -4.5rem;
  right: -4.5rem;
  bottom: -1.45rem;
  height: 2rem;
  background: linear-gradient(90deg, transparent, rgba(8,8,7,0.78) 22%, rgba(52,48,42,0.36) 52%, rgba(4,4,3,0.8) 80%, transparent);
  filter: blur(0.6rem);
  z-index: -1;
}
body.meritsuite-page-template .suite-device::after {
  content: '';
  position: absolute;
  left: 8%;
  right: 8%;
  bottom: -1.42rem;
  height: 1.85rem;
  background: linear-gradient(180deg, rgba(45,43,39,0.9), rgba(5,5,4,0.92));
  transform: perspective(28rem) rotateX(58deg);
  transform-origin: top;
  border: 1px solid rgba(236,226,207,0.08);
}
body.meritsuite-page-template .suite-device img {
  object-position: 50% 0%;
  filter: saturate(0.82) contrast(1.05) brightness(0.78);
}
body.meritsuite-page-template .suite-hero-note {
  top: 8.15rem;
  right: 5.2rem;
  letter-spacing: 0.54em;
  color: rgba(241,238,231,0.75);
}
body.meritsuite-page-template .suite-platform {
  height: 35.25rem;
  padding: 1.72rem 1.28rem 1.34rem;
  background: var(--suite-paper);
}
body.meritsuite-page-template .platform-head {
  grid-template-columns: 31.2% 36.5% 17.2%;
  min-height: 9rem;
  margin-bottom: 0.72rem;
  padding: 0 3.15rem 1.1rem;
  align-items: start;
}
body.meritsuite-page-template .platform-head h2 {
  font-size: 3.05rem;
  line-height: 0.96;
  letter-spacing: -0.012em;
}
body.meritsuite-page-template .platform-head > p {
  max-width: 25.4rem;
  margin: 0;
  padding-top: 3.68rem;
  font-size: 0.82rem;
  line-height: 1.42;
}
body.meritsuite-page-template .platform-head aside {
  padding-top: 2.8rem;
  padding-left: 2.1rem;
  border-left: 1px solid var(--suite-line);
}
body.meritsuite-page-template .suite-feature-grid {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1.05rem;
}
body.meritsuite-page-template .suite-feature-grid article {
  min-height: 20.4rem;
  grid-template-rows: 11.55rem auto 1fr auto;
  padding: 0 0.42rem 0.12rem;
  border-left: 1px solid rgba(13,12,10,0.08);
}
body.meritsuite-page-template .suite-feature-grid article:first-child { border-left: 0; }
body.meritsuite-page-template .feature-shot {
  height: auto;
  min-height: 11.55rem;
  padding: 1rem;
  border: 1px solid rgba(13,12,10,0.12);
  background-color: #11110f;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.025);
}
body.meritsuite-page-template .feature-shot::before {
  opacity: 0.72;
  background: radial-gradient(circle at 76% 25%, rgba(224,205,169,0.12), transparent 34%), linear-gradient(140deg, rgba(255,255,255,0.055), rgba(0,0,0,0.05));
}
body.meritsuite-page-template .feature-shot span {
  font-size: 1.08rem;
  line-height: 1.08;
}
body.meritsuite-page-template .feature-shot small {
  font-size: 0.52rem;
  line-height: 1.48;
  color: rgba(241,238,231,0.66);
}
body.meritsuite-page-template .feature-shot.analytics span {
  font-size: 2.05rem;
}
body.meritsuite-page-template .suite-feature-grid h3 {
  margin: 0.72rem 0 0.38rem;
  font-size: 1.55rem;
  line-height: 0.98;
}
body.meritsuite-page-template .suite-feature-grid p {
  max-width: 11.9rem;
  font-size: 0.70rem;
  line-height: 1.38;
}
body.meritsuite-page-template .suite-feature-grid footer {
  padding-top: 0.65rem;
  font-size: 0.58rem;
}
body.meritsuite-page-template .suite-benefits {
  height: 20.05rem;
  min-height: 20.05rem;
  grid-template-columns: 31.4% 43.2% 17.4%;
  gap: 2.15rem;
  padding: 2.45rem 4.75rem 2.1rem;
}
body.meritsuite-page-template .suite-benefits::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.68) 39%, rgba(0,0,0,0.78) 74%, rgba(0,0,0,0.92) 100%),
    url('/assets/contact-stone.png') center 47% / cover no-repeat;
  filter: saturate(0.42) brightness(0.56) contrast(1.08);
}
body.meritsuite-page-template .benefits-copy h2 {
  font-size: 2.72rem;
  line-height: 0.96;
}
body.meritsuite-page-template .benefits-copy p {
  max-width: 25.5rem;
  font-size: 0.74rem;
  line-height: 1.4;
}
body.meritsuite-page-template .benefits-copy .button {
  width: 14.2rem;
  height: 2.25rem;
}
body.meritsuite-page-template .benefits-grid article {
  padding: 2.25rem 1.65rem 0;
  border-left: 1px solid rgba(241,238,231,0.18);
}
body.meritsuite-page-template .benefits-grid i {
  margin-bottom: 0.78rem;
  font-size: 1.42rem;
}
body.meritsuite-page-template .benefits-grid h3 {
  font-size: 1.25rem;
  line-height: 1.03;
}
body.meritsuite-page-template .benefits-grid p {
  max-width: 10.2rem;
  font-size: 0.66rem;
  line-height: 1.36;
}
body.meritsuite-page-template .suite-benefits blockquote {
  margin-top: 2.1rem;
  font-size: 0.98rem;
  line-height: 1.3;
}
body.meritsuite-page-template .suite-pricing {
  height: 13.95rem;
  grid-template-columns: 31% 20.4% 20.4% 22.6%;
  gap: 1.15rem;
  padding: 1.35rem 4.75rem;
}
body.meritsuite-page-template .pricing-copy h2 {
  font-size: 2.38rem;
  line-height: 0.98;
}
body.meritsuite-page-template .pricing-copy p {
  max-width: 24rem;
  font-size: 0.72rem;
}
body.meritsuite-page-template .suite-pricing article {
  height: 9.5rem;
  padding: 0.9rem 1.15rem;
  border: 1px solid rgba(13,12,10,0.12);
  background: transparent;
}
body.meritsuite-page-template .suite-pricing strong {
  font-size: 1.62rem;
}
body.meritsuite-page-template .suite-pricing small,
body.meritsuite-page-template .suite-pricing ul {
  font-size: 0.56rem;
}
body.meritsuite-page-template .suite-pricing .tailored .text-link {
  width: 11.25rem;
  height: 2.25rem;
  margin-top: 0.72rem;
  padding: 0.52rem 1rem;
}
body.meritsuite-page-template .suite-demo {
  height: 18.55rem;
  min-height: 18.55rem;
}
body.meritsuite-page-template .suite-demo::before {
  background:
    radial-gradient(circle at 8% 47%, rgba(64,79,48,0.24), transparent 14rem),
    linear-gradient(90deg, rgba(0,0,0,0.56) 0%, rgba(0,0,0,0.40) 35%, rgba(0,0,0,0.54) 68%, rgba(0,0,0,0.78) 100%),
    url('/assets/contact-stone.png') center 51% / cover no-repeat;
  filter: saturate(0.44) brightness(0.68) contrast(1.06);
}
body.meritsuite-page-template .suite-demo.contact {
  grid-template-columns: 30% 43.5% 17.5%;
  column-gap: 3.3rem;
  padding: 2.55rem 4.75rem 2rem;
}
body.meritsuite-page-template .suite-demo h2 {
  font-size: 2.72rem;
  line-height: 0.98;
}
body.meritsuite-page-template .suite-demo > div > p:not(.eyebrow) {
  max-width: 27rem;
}
body.meritsuite-page-template .suite-demo form {
  margin-top: 0.22rem;
  gap: 0.48rem 0.62rem;
}
body.meritsuite-page-template .suite-demo input,
body.meritsuite-page-template .suite-demo select {
  height: 2.05rem;
}
body.meritsuite-page-template .suite-demo textarea {
  min-height: 4.65rem;
}
body.meritsuite-page-template .suite-demo form .button {
  width: 13.55rem;
  height: 2.35rem;
}
body.meritsuite-page-template .suite-demo blockquote {
  margin-top: 3.15rem !important;
  font-size: 1.08rem;
}

@media (max-width: 1100px) {
  body.meritsuite-page-template .site-header { padding-left: 1.25rem; padding-right: 1.25rem; }
  body.meritsuite-page-template .suite-platform,
  body.meritsuite-page-template .suite-benefits,
  body.meritsuite-page-template .suite-pricing,
  body.meritsuite-page-template .suite-demo.contact { padding-left: 1.25rem; padding-right: 1.25rem; }
}

/* MeritSuite final mobile containment after desktop visual overrides */
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-hero-content {
    width: auto !important;
    max-width: none !important;
    padding: 6.5rem 1.25rem 1rem !important;
  }
  body.meritsuite-page-template .suite-hero .eyebrow,
  body.meritsuite-page-template .suite-hero h1,
  body.meritsuite-page-template .suite-hero .lede,
  body.meritsuite-page-template .suite-hero .actions,
  body.meritsuite-page-template .suite-hero .button,
  body.meritsuite-page-template .suite-play {
    width: auto !important;
    max-width: 100% !important;
  }
  body.meritsuite-page-template .suite-hero h1 {
    font-size: clamp(2.8rem, 12vw, 3.7rem) !important;
  }
  body.meritsuite-page-template .suite-device {
    left: 1.25rem !important;
    right: 1.25rem !important;
    top: 29rem !important;
    width: auto !important;
    max-width: none !important;
    transform: none !important;
  }
  body.meritsuite-page-template .platform-head,
  body.meritsuite-page-template .suite-feature-grid,
  body.meritsuite-page-template .suite-benefits,
  body.meritsuite-page-template .benefits-grid,
  body.meritsuite-page-template .suite-pricing,
  body.meritsuite-page-template .suite-demo.contact {
    grid-template-columns: 1fr !important;
  }
  body.meritsuite-page-template .platform-head {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.meritsuite-page-template .platform-head > p,
  body.meritsuite-page-template .platform-head aside {
    padding-top: 0 !important;
  }
  body.meritsuite-page-template .suite-feature-grid article,
  body.meritsuite-page-template .suite-pricing article,
  body.meritsuite-page-template .suite-pricing .tailored {
    width: auto !important;
    max-width: 100% !important;
  }
  body.meritsuite-page-template .feature-shot {
    width: auto !important;
  }
  body.meritsuite-page-template .suite-benefits blockquote,
  body.meritsuite-page-template .suite-demo blockquote {
    margin-left: 0 !important;
    width: auto !important;
    max-width: 100% !important;
  }
  body.meritsuite-page-template .site-footer,
  body.meritsuite-page-template .site-footer * {
    max-width: 100% !important;
  }
}

/* MeritSuite strict refinement pass 3: product-module fidelity and page rhythm */
body.meritsuite-page-template .suite-hero {
  height: 31.15rem;
  min-height: 31.15rem;
}
body.meritsuite-page-template .suite-hero-content {
  padding-top: 5.38rem;
}
body.meritsuite-page-template .suite-device {
  top: 3.72rem;
  right: 9.05rem;
  width: 32.15rem;
  height: 19.55rem;
  border-radius: 0.42rem 0.42rem 0.08rem 0.08rem;
}
body.meritsuite-page-template .suite-hero-note {
  top: 7.1rem;
  right: 4.6rem;
}
body.meritsuite-page-template .suite-platform {
  height: 34.35rem;
  padding: 1.45rem 1.25rem 1.18rem;
}
body.meritsuite-page-template .platform-head {
  min-height: 8.55rem;
  margin-bottom: 0.56rem;
  padding-left: 3.45rem;
  padding-right: 3.45rem;
}
body.meritsuite-page-template .platform-head h2 {
  font-size: 2.9rem;
}
body.meritsuite-page-template .platform-head > p {
  padding-top: 3.45rem;
}
body.meritsuite-page-template .suite-feature-grid {
  gap: 0.98rem;
  align-items: stretch;
}
body.meritsuite-page-template .suite-feature-grid article {
  position: relative;
  min-height: 19.75rem;
  grid-template-rows: 10.9rem auto 1fr auto;
  padding: 0 0.36rem 0.1rem;
  border-left-color: rgba(16,14,12,0.075);
}
body.meritsuite-page-template .feature-shot {
  min-height: 10.9rem;
  padding: 0;
  border-color: rgba(18,16,13,0.16);
  background: #0e0e0d;
  overflow: hidden;
}
body.meritsuite-page-template .feature-shot::before,
body.meritsuite-page-template .feature-shot::after {
  pointer-events: none;
}
body.meritsuite-page-template .feature-shot::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: 1;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0) 28%),
    radial-gradient(circle at 80% 10%, rgba(226,205,169,0.12), transparent 36%),
    linear-gradient(145deg, #171715, #090909 72%);
}
body.meritsuite-page-template .feature-shot::after {
  content: '';
  position: absolute;
  inset: 0.74rem;
  border: 1px solid rgba(241,238,231,0.07);
  background: linear-gradient(180deg, rgba(255,255,255,0.035), rgba(255,255,255,0.01));
}
body.meritsuite-page-template .feature-shot span,
body.meritsuite-page-template .feature-shot small {
  z-index: 2;
}
body.meritsuite-page-template .feature-shot span {
  position: absolute;
  left: 1rem;
  top: 1rem;
  font-size: 0.95rem;
  line-height: 1.05;
  color: rgba(241,238,231,0.96);
}
body.meritsuite-page-template .feature-shot small {
  position: absolute;
  left: 1rem;
  right: 1rem;
  bottom: 0.98rem;
  margin: 0;
  font-family: var(--sans);
  font-size: 0.48rem;
  line-height: 1.52;
  color: rgba(241,238,231,0.58);
}
body.meritsuite-page-template .feature-shot.proposal::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.54) 0 48%, transparent 48%),
    linear-gradient(180deg, rgba(0,0,0,0.12), rgba(0,0,0,0.5)),
    url('/assets/contact-stone.png') 68% 52% / cover no-repeat;
  filter: saturate(0.35) brightness(0.72) contrast(1.08);
}
body.meritsuite-page-template .feature-shot.proposal::after {
  inset: 0.72rem 0.72rem 0.72rem 51%;
  background: linear-gradient(180deg, rgba(241,238,231,0.12), rgba(40,39,36,0.38)), url('/assets/project-atelier.png') center / cover no-repeat;
  border-color: rgba(241,238,231,0.11);
}
body.meritsuite-page-template .feature-shot.proposal small {
  width: 3.4rem;
  font-family: var(--serif);
  font-size: 0.78rem;
  color: rgba(241,238,231,0.9);
}
body.meritsuite-page-template .feature-shot.clients::after {
  inset: 1rem 0.9rem auto 0.9rem;
  height: 6.8rem;
  border: 0;
  background:
    linear-gradient(rgba(241,238,231,0.065), rgba(241,238,231,0.065)) 0 0.4rem / 100% 1px no-repeat,
    linear-gradient(rgba(241,238,231,0.065), rgba(241,238,231,0.065)) 0 2.25rem / 100% 1px no-repeat,
    linear-gradient(rgba(241,238,231,0.065), rgba(241,238,231,0.065)) 0 4.1rem / 100% 1px no-repeat,
    linear-gradient(rgba(241,238,231,0.065), rgba(241,238,231,0.065)) 0 5.95rem / 100% 1px no-repeat,
    radial-gradient(circle at 0.55rem 1.1rem, rgba(226,188,80,0.82) 0 0.16rem, transparent 0.17rem),
    radial-gradient(circle at 0.55rem 2.95rem, rgba(241,238,231,0.42) 0 0.16rem, transparent 0.17rem),
    radial-gradient(circle at 0.55rem 4.8rem, rgba(241,238,231,0.34) 0 0.16rem, transparent 0.17rem);
}
body.meritsuite-page-template .feature-shot.clients span { font-family: var(--sans); font-size: 0.58rem; top: 0.86rem; }
body.meritsuite-page-template .feature-shot.clients small { bottom: 1.24rem; left: 2rem; }
body.meritsuite-page-template .feature-shot.projects::before {
  background:
    linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.52)),
    url('/assets/project-atelier.png') center 42% / cover no-repeat;
  filter: saturate(0.45) brightness(0.72) contrast(1.04);
}
body.meritsuite-page-template .feature-shot.projects::after {
  inset: auto 0.86rem 0.82rem 0.86rem;
  height: 2.5rem;
  border-color: rgba(241,238,231,0.09);
  background: rgba(11,12,10,0.72);
}
body.meritsuite-page-template .feature-shot.projects span { top: auto; bottom: 1.58rem; font-family: var(--sans); font-size: 0.6rem; }
body.meritsuite-page-template .feature-shot.projects small {
  left: 1rem;
  bottom: 0.82rem;
  width: max-content;
  padding: 0.2rem 0.42rem;
  border-radius: 1rem;
  color: rgba(197,224,183,0.78);
  background: rgba(65,115,75,0.32);
}
body.meritsuite-page-template .feature-shot.invoice::after {
  inset: 1rem 1rem auto 1rem;
  height: 7.2rem;
  border: 0;
  background:
    linear-gradient(rgba(241,238,231,0.08), rgba(241,238,231,0.08)) 0 1.75rem / 100% 1px no-repeat,
    linear-gradient(rgba(241,238,231,0.08), rgba(241,238,231,0.08)) 0 3.45rem / 100% 1px no-repeat,
    linear-gradient(rgba(241,238,231,0.08), rgba(241,238,231,0.08)) 0 5.15rem / 100% 1px no-repeat,
    linear-gradient(90deg, transparent 0 58%, rgba(241,238,231,0.14) 58% 59%, transparent 59%);
}
body.meritsuite-page-template .feature-shot.invoice span { font-family: var(--sans); font-size: 0.52rem; }
body.meritsuite-page-template .feature-shot.invoice small { font-size: 0.8rem; color: rgba(241,238,231,0.92); }
body.meritsuite-page-template .feature-shot.analytics span {
  top: 2.25rem;
  font-family: var(--serif);
  font-size: 2.1rem;
}
body.meritsuite-page-template .feature-shot.analytics small { bottom: auto; top: 4.95rem; }
body.meritsuite-page-template .feature-shot.analytics::after {
  inset: auto 1.05rem 1.05rem 1.05rem;
  height: 4.6rem;
  border: 0;
  background:
    linear-gradient(to top, rgba(241,238,231,0.13) 0 22%, transparent 22%) 0 100% / 0.9rem 100% no-repeat,
    linear-gradient(to top, rgba(241,238,231,0.14) 0 36%, transparent 36%) 1.35rem 100% / 0.9rem 100% no-repeat,
    linear-gradient(to top, rgba(241,238,231,0.18) 0 52%, transparent 52%) 2.7rem 100% / 0.9rem 100% no-repeat,
    linear-gradient(to top, rgba(241,238,231,0.22) 0 72%, transparent 72%) 4.05rem 100% / 0.9rem 100% no-repeat,
    linear-gradient(to top, rgba(241,238,231,0.26) 0 86%, transparent 86%) 5.4rem 100% / 0.9rem 100% no-repeat;
}
body.meritsuite-page-template .feature-shot.templates span { font-family: var(--sans); font-size: 0.54rem; }
body.meritsuite-page-template .feature-shot.templates::after {
  inset: 1rem 0.95rem auto 0.95rem;
  height: 7.4rem;
  border: 0;
  background:
    linear-gradient(rgba(241,238,231,0.07), rgba(241,238,231,0.07)) 0 1.7rem / 100% 1px no-repeat,
    linear-gradient(rgba(241,238,231,0.07), rgba(241,238,231,0.07)) 0 3.4rem / 100% 1px no-repeat,
    linear-gradient(rgba(241,238,231,0.07), rgba(241,238,231,0.07)) 0 5.1rem / 100% 1px no-repeat,
    linear-gradient(90deg, rgba(241,238,231,0.055), rgba(241,238,231,0.025));
}
body.meritsuite-page-template .suite-feature-grid h3 {
  margin-top: 0.62rem;
  margin-bottom: 0.32rem;
  font-size: 1.46rem;
}
body.meritsuite-page-template .suite-feature-grid p {
  font-size: 0.68rem;
  line-height: 1.37;
}
body.meritsuite-page-template .suite-feature-grid footer {
  align-items: center;
  padding-top: 0.42rem;
  color: rgba(58,54,48,0.78);
}
body.meritsuite-page-template .suite-benefits {
  height: 19.6rem;
  min-height: 19.6rem;
  padding-top: 2.25rem;
  padding-bottom: 1.85rem;
}
body.meritsuite-page-template .suite-pricing {
  height: 13.65rem;
}
body.meritsuite-page-template .suite-demo {
  height: 18.35rem;
  min-height: 18.35rem;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .feature-shot::after { inset: 0.74rem; }
}

/* MeritSuite strict refinement pass 4: compact platform header and demo form proportions */
@media (min-width: 721px) {
  body.meritsuite-page-template .platform-head {
    height: 8.95rem;
    min-height: 0;
    margin-bottom: 0.58rem;
    padding-bottom: 0;
    overflow: visible;
  }
  body.meritsuite-page-template .platform-head h2 {
    font-size: 2.86rem;
    line-height: 0.95;
  }
  body.meritsuite-page-template .platform-head > p {
    padding-top: 3.1rem;
    line-height: 1.38;
  }
  body.meritsuite-page-template .platform-head aside {
    padding-top: 2.42rem;
  }
  body.meritsuite-page-template .suite-feature-grid article {
    min-height: 20.15rem;
    grid-template-rows: 10.9rem auto 1fr auto;
  }
  body.meritsuite-page-template .suite-platform {
    height: 34.05rem;
  }
  body.meritsuite-page-template .suite-demo {
    height: 15.95rem;
    min-height: 15.95rem;
  }
  body.meritsuite-page-template .suite-demo.contact {
    padding-top: 2rem;
    padding-bottom: 1.55rem;
  }
  body.meritsuite-page-template .suite-demo h2 {
    font-size: 2.54rem;
  }
  body.meritsuite-page-template .suite-demo > div > p:not(.eyebrow) {
    max-width: 25.6rem;
    font-size: 0.74rem;
    line-height: 1.36;
  }
  body.meritsuite-page-template .suite-demo form {
    gap: 0.34rem 0.58rem;
    margin-top: 0.05rem;
  }
  body.meritsuite-page-template .suite-demo input,
  body.meritsuite-page-template .suite-demo select {
    height: 1.78rem;
    font-size: 0.62rem;
  }
  body.meritsuite-page-template .suite-demo textarea {
    min-height: 3.58rem;
    font-size: 0.62rem;
  }
  body.meritsuite-page-template .suite-demo form .button {
    height: 2.04rem;
    width: 13rem;
  }
  body.meritsuite-page-template .suite-demo form p {
    align-self: center;
    font-size: 0.54rem;
  }
  body.meritsuite-page-template .suite-demo blockquote {
    margin-top: 2.62rem !important;
    font-size: 1rem;
  }
}

/* MeritSuite visual-content restoration: six feature previews */
body.meritsuite-page-template .feature-shot {
  min-height: 11.05rem;
  background: linear-gradient(145deg, #151513 0%, #0a0a09 72%);
}
body.meritsuite-page-template .feature-shot::before {
  background:
    radial-gradient(circle at 82% 16%, rgba(231,210,174,0.14), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,0.06), transparent 32%),
    linear-gradient(145deg, #181815, #090909 72%);
}
body.meritsuite-page-template .feature-shot::after { display: none; }
body.meritsuite-page-template .feature-shot .proposal-preview,
body.meritsuite-page-template .feature-shot .ui-preview,
body.meritsuite-page-template .feature-shot .project-preview {
  position: relative;
  z-index: 3;
  width: 100%;
  height: 100%;
  min-height: 11.05rem;
  color: rgba(241,238,231,0.9);
  font-family: var(--sans);
}
body.meritsuite-page-template .feature-shot .proposal-preview *,
body.meritsuite-page-template .feature-shot .ui-preview *,
body.meritsuite-page-template .feature-shot .project-preview * {
  box-sizing: border-box;
}
body.meritsuite-page-template .feature-shot .proposal-preview span,
body.meritsuite-page-template .feature-shot .proposal-preview small,
body.meritsuite-page-template .feature-shot .ui-preview span,
body.meritsuite-page-template .feature-shot .ui-preview small,
body.meritsuite-page-template .feature-shot .project-preview span,
body.meritsuite-page-template .feature-shot .project-preview small {
  position: static;
  display: block;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  margin: 0;
}
body.meritsuite-page-template .proposal-preview {
  display: grid;
  grid-template-columns: 47% 53%;
  background: linear-gradient(90deg, rgba(14,14,13,0.96), rgba(25,24,22,0.74));
}
body.meritsuite-page-template .proposal-preview > div {
  padding: 1.22rem 0.9rem 0.9rem 1rem;
  border-right: 1px solid rgba(241,238,231,0.1);
}
body.meritsuite-page-template .proposal-preview span {
  font-family: var(--serif);
  font-size: 1rem;
  line-height: 1.05;
  color: rgba(241,238,231,0.97);
}
body.meritsuite-page-template .proposal-preview small {
  max-width: 5.6rem;
  margin-top: 0.58rem !important;
  font-size: 0.45rem !important;
  line-height: 1.45 !important;
  color: rgba(241,238,231,0.54) !important;
}
body.meritsuite-page-template .proposal-preview figure,
body.meritsuite-page-template .project-preview figure {
  margin: 0;
  min-width: 0;
}
body.meritsuite-page-template .proposal-preview figure {
  margin: 0.78rem 0.78rem 0.78rem 0.68rem;
  border: 1px solid rgba(241,238,231,0.12);
  background:
    linear-gradient(180deg, rgba(0,0,0,0.05), rgba(0,0,0,0.42)),
    url('/assets/meritsuite-dashboard-v2.png') 70% 40% / 220% auto no-repeat;
  filter: grayscale(0.35) sepia(0.08) brightness(0.82);
}
body.meritsuite-page-template .proposal-preview strong {
  position: absolute;
  left: 1rem;
  bottom: 0.86rem;
  font-family: var(--serif);
  font-size: 0.8rem;
  font-weight: 400;
  color: rgba(241,238,231,0.88);
}
body.meritsuite-page-template .ui-preview {
  padding: 0.82rem 0.9rem;
  background: linear-gradient(180deg, rgba(255,255,255,0.035), rgba(255,255,255,0.005));
}
body.meritsuite-page-template .ui-preview header,
body.meritsuite-page-template .ui-preview p,
body.meritsuite-page-template .ui-preview footer {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
}
body.meritsuite-page-template .ui-preview header {
  height: 1.45rem;
  margin-bottom: 0.45rem;
}
body.meritsuite-page-template .ui-preview header span {
  font-size: 0.54rem;
  color: rgba(241,238,231,0.9);
}
body.meritsuite-page-template .ui-preview header b,
body.meritsuite-page-template .invoice-ui header b {
  padding: 0.25rem 0.45rem;
  border: 1px solid rgba(241,238,231,0.08);
  border-radius: 0.22rem;
  background: rgba(241,238,231,0.06);
  color: rgba(241,238,231,0.72);
  font-size: 0.42rem;
  font-weight: 400;
}
body.meritsuite-page-template .clients-ui p,
body.meritsuite-page-template .invoice-ui p,
body.meritsuite-page-template .templates-ui p {
  min-height: 1.48rem;
  padding: 0.28rem 0;
  border-top: 1px solid rgba(241,238,231,0.07);
}
body.meritsuite-page-template .clients-ui p i,
body.meritsuite-page-template .templates-ui p i {
  flex: 0 0 0.78rem;
  height: 0.78rem;
  margin-right: 0.42rem;
  border: 1px solid rgba(241,238,231,0.14);
  border-radius: 0.15rem;
  background: rgba(241,238,231,0.05);
}
body.meritsuite-page-template .clients-ui p strong,
body.meritsuite-page-template .invoice-ui p strong {
  flex: 1;
  overflow: hidden;
  color: rgba(241,238,231,0.82);
  font-size: 0.48rem;
  font-weight: 400;
  white-space: nowrap;
  text-overflow: ellipsis;
}
body.meritsuite-page-template .clients-ui p small,
body.meritsuite-page-template .invoice-ui p small {
  position: static;
  width: auto;
  color: rgba(241,238,231,0.44) !important;
  font-size: 0.4rem !important;
}
body.meritsuite-page-template .project-preview {
  display: grid;
  align-content: end;
  padding: 0.72rem;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.58)),
    url('/assets/meritsuite-dashboard-v2.png') 55% 38% / 190% auto no-repeat;
}
body.meritsuite-page-template .project-preview figure {
  position: absolute;
  inset: 0.7rem 0.7rem 3.8rem 0.7rem;
  border: 1px solid rgba(241,238,231,0.1);
  background:
    linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.42)),
    url('/assets/meritsuite-dashboard-v2.png') 61% 44% / 235% auto no-repeat;
  filter: grayscale(0.25) sepia(0.08) brightness(0.86);
}
body.meritsuite-page-template .project-preview > div {
  position: relative;
  min-height: 2.9rem;
  padding: 0.62rem 0.72rem;
  border: 1px solid rgba(241,238,231,0.09);
  background: rgba(8,9,8,0.72);
}
body.meritsuite-page-template .project-preview span {
  font-size: 0.52rem;
  color: rgba(241,238,231,0.88);
}
body.meritsuite-page-template .project-preview small {
  display: inline-block !important;
  width: max-content !important;
  margin-top: 0.35rem !important;
  padding: 0.18rem 0.36rem;
  border-radius: 1rem;
  background: rgba(65,115,75,0.34);
  color: rgba(198,226,183,0.82) !important;
  font-size: 0.38rem !important;
}
body.meritsuite-page-template .project-preview em {
  position: absolute;
  right: 0.72rem;
  bottom: 0.74rem;
  width: 0.72rem;
  height: 0.12rem;
  background: radial-gradient(circle, rgba(241,238,231,0.55) 0 0.08rem, transparent 0.09rem) 0 0 / 0.28rem 0.12rem repeat-x;
}
body.meritsuite-page-template .invoice-ui p small { color: rgba(241,238,231,0.78) !important; }
body.meritsuite-page-template .invoice-ui footer {
  min-height: 1.6rem;
  margin-top: 0.4rem;
  padding-top: 0.46rem;
  border-top: 1px solid rgba(241,238,231,0.12);
}
body.meritsuite-page-template .invoice-ui footer span,
body.meritsuite-page-template .invoice-ui footer strong {
  position: static;
  font-family: var(--sans);
  font-size: 0.54rem;
  font-weight: 400;
}
body.meritsuite-page-template .invoice-ui footer strong { color: rgba(241,238,231,0.94); }
body.meritsuite-page-template .invoice-ui header b {
  border-color: rgba(129,180,132,0.22);
  background: rgba(54,102,62,0.44);
  color: rgba(199,231,197,0.9);
}
body.meritsuite-page-template .analytics-ui header small {
  position: static;
  width: auto;
  padding: 0.22rem 0.36rem;
  border-radius: 0.16rem;
  background: rgba(241,238,231,0.05);
  font-size: 0.36rem !important;
}
body.meritsuite-page-template .analytics-ui > strong {
  display: block;
  margin-top: 0.6rem;
  font-family: var(--serif);
  font-size: 2.15rem;
  font-weight: 400;
  line-height: 1;
  color: rgba(241,238,231,0.96);
}
body.meritsuite-page-template .analytics-ui > p {
  position: absolute;
  top: 4.58rem;
  left: 4.4rem;
  color: rgba(135,207,132,0.9);
  font-size: 0.54rem;
}
body.meritsuite-page-template .analytics-ui .bars {
  position: absolute;
  left: 0.95rem;
  right: 0.95rem;
  bottom: 0.9rem;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  align-items: end;
  gap: 0.42rem;
  height: 3.9rem;
  padding-top: 0.55rem;
  border-top: 1px solid rgba(241,238,231,0.07);
}
body.meritsuite-page-template .analytics-ui .bars i {
  display: block;
  min-height: 28%;
  background: linear-gradient(180deg, rgba(241,238,231,0.25), rgba(241,238,231,0.08));
}
body.meritsuite-page-template .analytics-ui .bars i:nth-child(2) { height: 40%; }
body.meritsuite-page-template .analytics-ui .bars i:nth-child(3) { height: 56%; }
body.meritsuite-page-template .analytics-ui .bars i:nth-child(4) { height: 76%; }
body.meritsuite-page-template .analytics-ui .bars i:nth-child(5) { height: 92%; }
body.meritsuite-page-template .analytics-ui .bars i:nth-child(6) { height: 68%; }
body.meritsuite-page-template .templates-ui header {
  height: 1.8rem;
  padding: 0 0.55rem;
  border-radius: 0.18rem;
  background: rgba(241,238,231,0.06);
}
body.meritsuite-page-template .templates-ui p {
  justify-content: flex-start;
  color: rgba(241,238,231,0.76);
  font-size: 0.48rem;
}
body.meritsuite-page-template .templates-ui p i {
  display: inline-block;
}
body.meritsuite-page-template .suite-feature-grid h3 {
  margin-top: 0.68rem;
  font-size: 1.5rem;
}
body.meritsuite-page-template .suite-feature-grid p {
  font-size: 0.69rem;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .feature-shot .proposal-preview,
  body.meritsuite-page-template .feature-shot .ui-preview,
  body.meritsuite-page-template .feature-shot .project-preview { min-height: 12rem; }
}

/* MeritSuite visual-content pass 2: increase preview legibility and richness */
@media (min-width: 721px) {
  body.meritsuite-page-template .suite-platform {
    height: 34.6rem;
  }
  body.meritsuite-page-template .suite-feature-grid article {
    min-height: 20.7rem;
    grid-template-rows: 11.45rem auto 1fr auto;
  }
}
body.meritsuite-page-template .feature-shot {
  min-height: 11.45rem;
  border-color: rgba(18,16,13,0.22);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.035), 0 0.55rem 1.1rem rgba(15,13,10,0.08);
}
body.meritsuite-page-template .feature-shot .proposal-preview,
body.meritsuite-page-template .feature-shot .ui-preview,
body.meritsuite-page-template .feature-shot .project-preview {
  min-height: 11.45rem;
}
body.meritsuite-page-template .proposal-preview > div {
  padding-top: 1.34rem;
  background: linear-gradient(180deg, rgba(241,238,231,0.035), transparent 44%);
}
body.meritsuite-page-template .proposal-preview span {
  font-size: 1.06rem;
}
body.meritsuite-page-template .proposal-preview figure {
  margin: 0.66rem 0.7rem 0.66rem 0.6rem;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.045), 0 0.6rem 1.2rem rgba(0,0,0,0.22);
}
body.meritsuite-page-template .ui-preview {
  padding: 0.78rem 0.82rem;
}
body.meritsuite-page-template .ui-preview header {
  margin-bottom: 0.36rem;
}
body.meritsuite-page-template .clients-ui p,
body.meritsuite-page-template .invoice-ui p,
body.meritsuite-page-template .templates-ui p {
  min-height: 1.55rem;
  margin-bottom: 0.18rem;
  padding: 0.3rem 0.38rem;
  border: 1px solid rgba(241,238,231,0.055);
  border-radius: 0.18rem;
  background: rgba(241,238,231,0.032);
}
body.meritsuite-page-template .clients-ui p strong,
body.meritsuite-page-template .invoice-ui p strong,
body.meritsuite-page-template .templates-ui p {
  color: rgba(241,238,231,0.88);
}
body.meritsuite-page-template .clients-ui p small,
body.meritsuite-page-template .invoice-ui p small {
  color: rgba(241,238,231,0.58) !important;
}
body.meritsuite-page-template .clients-ui p i,
body.meritsuite-page-template .templates-ui p i {
  background: linear-gradient(180deg, rgba(226,205,169,0.14), rgba(241,238,231,0.03));
}
body.meritsuite-page-template .project-preview figure {
  inset: 0.66rem 0.66rem 3.58rem 0.66rem;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.03), rgba(0,0,0,0.30)),
    url('/assets/meritsuite-dashboard-v2.png') 58% 43% / 215% auto no-repeat;
}
body.meritsuite-page-template .project-preview > div {
  min-height: 3.05rem;
  background: rgba(8,9,8,0.78);
  box-shadow: 0 -0.4rem 1.1rem rgba(0,0,0,0.22);
}
body.meritsuite-page-template .invoice-ui footer {
  margin-top: 0.24rem;
  padding: 0.45rem 0.42rem 0;
}
body.meritsuite-page-template .analytics-ui > strong {
  margin-top: 0.76rem;
  font-size: 2.28rem;
}
body.meritsuite-page-template .analytics-ui > p {
  top: 4.74rem;
  left: 4.75rem;
}
body.meritsuite-page-template .analytics-ui .bars {
  bottom: 0.78rem;
  height: 4.3rem;
  gap: 0.34rem;
}
body.meritsuite-page-template .analytics-ui .bars i {
  background: linear-gradient(180deg, rgba(226,205,169,0.28), rgba(241,238,231,0.075));
}
body.meritsuite-page-template .templates-ui header {
  margin-bottom: 0.44rem;
  border: 1px solid rgba(241,238,231,0.055);
}
body.meritsuite-page-template .templates-ui p {
  padding-left: 0.44rem;
}
body.meritsuite-page-template .suite-feature-grid h3 {
  margin-top: 0.58rem;
  margin-bottom: 0.28rem;
}
body.meritsuite-page-template .suite-feature-grid footer {
  padding-top: 0.28rem;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .feature-shot,
  body.meritsuite-page-template .feature-shot .proposal-preview,
  body.meritsuite-page-template .feature-shot .ui-preview,
  body.meritsuite-page-template .feature-shot .project-preview { min-height: 12.2rem; }
}

/* MeritSuite cinematic art-direction pass: hero, benefits, demo backgrounds */
body.meritsuite-page-template .suite-hero {
  height: 31.9rem;
  min-height: 31.9rem;
  background: #050504;
  isolation: isolate;
}
body.meritsuite-page-template .suite-hero-media {
  background:
    radial-gradient(circle at 66% 17%, rgba(232,214,177,0.22), transparent 11rem),
    radial-gradient(circle at 82% 48%, rgba(196,164,112,0.14), transparent 12rem),
    linear-gradient(90deg, rgba(0,0,0,0.97) 0%, rgba(0,0,0,0.86) 31%, rgba(0,0,0,0.42) 54%, rgba(0,0,0,0.66) 100%),
    linear-gradient(90deg, #050505 0 40%, #1c1a17 40% 41%, #0c0b0a 41% 58%, #22201c 58% 59%, #0b0a09 59% 100%),
    repeating-linear-gradient(96deg, rgba(255,255,255,0.026) 0 1px, transparent 1px 3.2rem),
    repeating-linear-gradient(8deg, rgba(255,255,255,0.018) 0 1px, transparent 1px 2.4rem),
    #070706;
  filter: saturate(0.74) contrast(1.08) brightness(0.96);
}
body.meritsuite-page-template .suite-hero::before {
  content: '';
  position: absolute;
  z-index: 1;
  left: 34%;
  right: -6%;
  bottom: -0.6rem;
  height: 9.8rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0) 18%),
    radial-gradient(ellipse at 54% 5%, rgba(232,214,177,0.22), transparent 26rem),
    linear-gradient(10deg, #1a1815 0%, #0a0908 64%, #050504 100%),
    repeating-linear-gradient(105deg, rgba(255,255,255,0.045) 0 1px, transparent 1px 2.1rem);
  clip-path: polygon(0 23%, 100% 0, 100% 100%, 0 100%);
  box-shadow: inset 0 1px 0 rgba(241,238,231,0.12), 0 -1.8rem 3rem rgba(0,0,0,0.36);
}
body.meritsuite-page-template .suite-hero::after {
  z-index: 1;
  background:
    linear-gradient(0deg, rgba(0,0,0,0.72), transparent 38%),
    linear-gradient(90deg, rgba(0,0,0,0.26), transparent 49%, rgba(0,0,0,0.34));
}
body.meritsuite-page-template .suite-hero-content {
  z-index: 4;
  padding-top: 5.45rem;
}
body.meritsuite-page-template .suite-device {
  z-index: 3;
  top: 4.35rem;
  right: 8.8rem;
  width: 33.35rem;
  height: 20.1rem;
  transform: perspective(76rem) rotateY(-4deg) rotateX(1.1deg) translateY(0.35rem);
  box-shadow:
    0 1.2rem 0 -0.72rem rgba(4,4,3,0.95),
    0 2.7rem 4.4rem rgba(0,0,0,0.74),
    0 0 0 1px rgba(238,228,207,0.15),
    inset 0 0 0 1px rgba(255,255,255,0.028);
}
body.meritsuite-page-template .suite-device::before {
  left: -5.8rem;
  right: -5.8rem;
  bottom: -1.75rem;
  height: 2.55rem;
  background: radial-gradient(ellipse at 50% 0%, rgba(0,0,0,0.86), rgba(0,0,0,0.44) 48%, transparent 72%);
  filter: blur(0.45rem);
}
body.meritsuite-page-template .suite-device::after {
  bottom: -1.66rem;
  height: 2.1rem;
  background: linear-gradient(180deg, rgba(56,53,47,0.95), rgba(8,8,7,0.95));
}
body.meritsuite-page-template .suite-hero-note {
  z-index: 4;
  top: 7.55rem;
  right: 3.45rem;
  color: rgba(241,238,231,0.7);
}
body.meritsuite-page-template .suite-platform {
  padding-top: 1.25rem;
}
@media (min-width: 721px) {
  body.meritsuite-page-template .platform-head {
    height: 8.2rem;
    margin-bottom: 0.48rem;
  }
  body.meritsuite-page-template .platform-head > p {
    padding-top: 2.78rem;
  }
  body.meritsuite-page-template .platform-head aside {
    padding-top: 2.1rem;
  }
}
body.meritsuite-page-template .suite-benefits::before {
  background:
    radial-gradient(circle at 40% 0%, rgba(221,201,163,0.13), transparent 15rem),
    radial-gradient(circle at 88% 56%, rgba(186,150,92,0.10), transparent 13rem),
    linear-gradient(90deg, rgba(0,0,0,0.96) 0%, rgba(0,0,0,0.73) 42%, rgba(0,0,0,0.82) 75%, rgba(0,0,0,0.94) 100%),
    linear-gradient(90deg, #050504 0 36%, #171512 36% 37%, #0d0c0b 37% 64%, #211f1a 64% 65%, #090908 65% 100%),
    repeating-linear-gradient(101deg, rgba(255,255,255,0.032) 0 1px, transparent 1px 2.4rem),
    repeating-linear-gradient(3deg, rgba(255,255,255,0.018) 0 1px, transparent 1px 3.1rem),
    #070706;
  filter: saturate(0.68) brightness(0.82) contrast(1.08);
}
body.meritsuite-page-template .suite-benefits::after {
  content: '';
  position: absolute;
  z-index: 0;
  left: 25%;
  right: -5%;
  bottom: -1rem;
  height: 4.3rem;
  background:
    linear-gradient(180deg, rgba(241,238,231,0.08), transparent 20%),
    linear-gradient(8deg, rgba(58,54,47,0.72), rgba(10,9,8,0.94));
  clip-path: polygon(0 30%, 100% 0, 100% 100%, 0 100%);
  box-shadow: inset 0 1px 0 rgba(241,238,231,0.09);
}
body.meritsuite-page-template .benefits-copy,
body.meritsuite-page-template .benefits-grid,
body.meritsuite-page-template .suite-benefits blockquote {
  z-index: 2;
}
body.meritsuite-page-template .suite-demo::before {
  background:
    radial-gradient(circle at 6% 24%, rgba(88,108,64,0.28), transparent 8rem),
    radial-gradient(circle at 60% 16%, rgba(224,205,166,0.12), transparent 15rem),
    radial-gradient(circle at 87% 62%, rgba(172,128,72,0.10), transparent 12rem),
    linear-gradient(90deg, rgba(0,0,0,0.54) 0%, rgba(0,0,0,0.36) 34%, rgba(0,0,0,0.54) 68%, rgba(0,0,0,0.80) 100%),
    linear-gradient(90deg, #0a0908 0 28%, #1a1815 28% 29%, #0d0c0b 29% 63%, #22201c 63% 64%, #090807 64% 100%),
    repeating-linear-gradient(110deg, rgba(255,255,255,0.034) 0 1px, transparent 1px 2.7rem),
    repeating-linear-gradient(0deg, rgba(255,255,255,0.018) 0 1px, transparent 1px 3.4rem),
    #070706;
  filter: saturate(0.72) brightness(0.9) contrast(1.08);
}
body.meritsuite-page-template .suite-demo::after {
  content: '';
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 4% 55%, rgba(73,99,58,0.34), transparent 8.5rem),
    linear-gradient(72deg, transparent 0 3.6rem, rgba(92,119,70,0.16) 3.7rem 3.86rem, transparent 4rem 100%),
    linear-gradient(112deg, transparent 0 4.7rem, rgba(92,119,70,0.13) 4.8rem 5rem, transparent 5.2rem 100%),
    linear-gradient(180deg, transparent 0 54%, rgba(0,0,0,0.20) 100%);
  mask-image: linear-gradient(90deg, #000 0 18%, transparent 35%);
}
body.meritsuite-page-template .suite-demo > *,
body.meritsuite-page-template .suite-demo form,
body.meritsuite-page-template .suite-demo blockquote {
  position: relative;
  z-index: 2;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-hero::before { left: 0; height: 7rem; }
  body.meritsuite-page-template .suite-device { transform: none !important; }
}

/* MeritSuite cinematic pass 2: final product placement and background depth */
body.meritsuite-page-template .suite-device {
  top: 4.72rem;
  right: 10.75rem;
  width: 33.15rem;
  height: 20rem;
}
body.meritsuite-page-template .suite-hero-note {
  top: 7.35rem;
  right: 3rem;
}
body.meritsuite-page-template .suite-hero::before {
  left: 31.5%;
  height: 10.25rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.10), rgba(255,255,255,0) 17%),
    radial-gradient(ellipse at 56% 5%, rgba(232,214,177,0.25), transparent 28rem),
    linear-gradient(10deg, #1d1b17 0%, #0b0a09 62%, #050504 100%),
    repeating-linear-gradient(105deg, rgba(255,255,255,0.052) 0 1px, transparent 1px 2.1rem);
}
body.meritsuite-page-template .suite-hero-media {
  background:
    radial-gradient(circle at 64% 18%, rgba(232,214,177,0.24), transparent 11.5rem),
    radial-gradient(circle at 84% 48%, rgba(196,164,112,0.16), transparent 12rem),
    linear-gradient(90deg, rgba(0,0,0,0.97) 0%, rgba(0,0,0,0.86) 31%, rgba(0,0,0,0.40) 54%, rgba(0,0,0,0.66) 100%),
    linear-gradient(90deg, #050505 0 39%, #201e1a 39% 40%, #0c0b0a 40% 57%, #25221e 57% 58%, #0a0908 58% 100%),
    repeating-linear-gradient(96deg, rgba(255,255,255,0.03) 0 1px, transparent 1px 3.2rem),
    repeating-linear-gradient(8deg, rgba(255,255,255,0.02) 0 1px, transparent 1px 2.4rem),
    #070706;
}
body.meritsuite-page-template .suite-benefits::before {
  background:
    radial-gradient(circle at 43% 0%, rgba(221,201,163,0.16), transparent 16rem),
    radial-gradient(circle at 86% 58%, rgba(186,150,92,0.12), transparent 13rem),
    linear-gradient(90deg, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.70) 42%, rgba(0,0,0,0.79) 75%, rgba(0,0,0,0.93) 100%),
    linear-gradient(90deg, #050504 0 35%, #1b1814 35% 36%, #0d0c0b 36% 63%, #25221d 63% 64%, #090908 64% 100%),
    repeating-linear-gradient(101deg, rgba(255,255,255,0.037) 0 1px, transparent 1px 2.4rem),
    repeating-linear-gradient(3deg, rgba(255,255,255,0.02) 0 1px, transparent 1px 3.1rem),
    #070706;
}
body.meritsuite-page-template .suite-demo::before {
  background:
    radial-gradient(circle at 6% 24%, rgba(88,108,64,0.32), transparent 8.5rem),
    radial-gradient(circle at 60% 16%, rgba(224,205,166,0.15), transparent 15rem),
    radial-gradient(circle at 88% 62%, rgba(172,128,72,0.12), transparent 12rem),
    linear-gradient(90deg, rgba(0,0,0,0.52) 0%, rgba(0,0,0,0.34) 34%, rgba(0,0,0,0.52) 68%, rgba(0,0,0,0.78) 100%),
    linear-gradient(90deg, #0a0908 0 27%, #1d1a16 27% 28%, #0d0c0b 28% 62%, #25221e 62% 63%, #090807 63% 100%),
    repeating-linear-gradient(110deg, rgba(255,255,255,0.038) 0 1px, transparent 1px 2.7rem),
    repeating-linear-gradient(0deg, rgba(255,255,255,0.02) 0 1px, transparent 1px 3.4rem),
    #070706;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-device {
    right: 1.25rem !important;
    top: 29rem !important;
    width: auto !important;
    height: 12rem !important;
  }
}

/* MeritSuite final mobile containment after cinematic desktop pass */
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-hero {
    height: 48rem !important;
    min-height: 48rem !important;
  }
  body.meritsuite-page-template .suite-device {
    position: absolute !important;
    left: 1.25rem !important;
    right: 1.25rem !important;
    top: 29rem !important;
    width: auto !important;
    height: 12rem !important;
    margin: 0 !important;
    transform: none !important;
  }
}

/* MeritSuite targeted fix: frameless hero dashboard and sharper feature previews */
body.meritsuite-page-template .suite-device {
  top: 4.35rem;
  right: 8.7rem;
  width: 36.4rem;
  height: 21.4rem;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0.32rem !important;
  background: transparent !important;
  box-shadow: 0 2.2rem 4rem rgba(0,0,0,0.58), 0 0 0 1px rgba(241,238,231,0.08) !important;
  overflow: visible !important;
  transform: perspective(76rem) rotateY(-3.5deg) rotateX(1deg) translateY(0.55rem) !important;
}
body.meritsuite-page-template .suite-device::before {
  content: '';
  position: absolute;
  z-index: -1;
  left: -3.5rem;
  right: -3.5rem;
  bottom: -1.95rem;
  height: 3.1rem;
  background: radial-gradient(ellipse at 50% 10%, rgba(0,0,0,0.78), rgba(0,0,0,0.32) 52%, transparent 74%);
  filter: blur(0.45rem);
}
body.meritsuite-page-template .suite-device::after {
  display: none !important;
  content: none !important;
}
body.meritsuite-page-template .suite-device img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0%;
  border: 1px solid rgba(241,238,231,0.11);
  border-radius: 0.32rem;
  filter: saturate(0.98) contrast(1.12) brightness(0.9) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.035), 0 0.65rem 1.4rem rgba(0,0,0,0.34);
}
body.meritsuite-page-template .suite-hero-note {
  right: 2.9rem;
  top: 7.2rem;
}
body.meritsuite-page-template .feature-shot {
  background: #0b0b0a;
  border-color: rgba(13,12,10,0.28);
}
body.meritsuite-page-template .feature-shot::before {
  background:
    radial-gradient(circle at 78% 15%, rgba(232,214,177,0.13), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,0.075), transparent 30%),
    linear-gradient(145deg, #171714, #080808 76%);
}
body.meritsuite-page-template .proposal-preview figure {
  background:
    linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0.28)),
    linear-gradient(90deg, rgba(241,238,231,0.08) 0 1px, transparent 1px 100%) 35% 0 / 100% 100%,
    url('/assets/meritsuite-dashboard-v2.png') 72% 24% / 175% auto no-repeat;
  filter: saturate(0.35) contrast(1.15) brightness(0.98);
}
body.meritsuite-page-template .project-preview,
body.meritsuite-page-template .project-preview figure {
  background-image:
    linear-gradient(180deg, rgba(0,0,0,0.02), rgba(0,0,0,0.28)),
    url('/assets/meritsuite-dashboard-v2.png');
  background-position: 54% 25%;
  background-size: 170% auto;
  filter: saturate(0.92) contrast(1.08) brightness(0.9);
}
body.meritsuite-page-template .project-preview > div,
body.meritsuite-page-template .ui-preview {
  backdrop-filter: blur(0.2px);
}
body.meritsuite-page-template .ui-preview header span,
body.meritsuite-page-template .clients-ui p strong,
body.meritsuite-page-template .invoice-ui p strong,
body.meritsuite-page-template .templates-ui p {
  color: rgba(241,238,231,0.94);
}
body.meritsuite-page-template .clients-ui p,
body.meritsuite-page-template .invoice-ui p,
body.meritsuite-page-template .templates-ui p,
body.meritsuite-page-template .templates-ui header {
  border-color: rgba(241,238,231,0.085);
  background: rgba(241,238,231,0.045);
}
body.meritsuite-page-template .invoice-ui footer {
  border-top-color: rgba(241,238,231,0.16);
}
body.meritsuite-page-template .analytics-ui > strong {
  color: rgba(241,238,231,1);
  text-shadow: 0 0.5rem 1.4rem rgba(0,0,0,0.35);
}
body.meritsuite-page-template .analytics-ui .bars i {
  background: linear-gradient(180deg, rgba(232,214,177,0.42), rgba(241,238,231,0.1));
}
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-device {
    left: 1.25rem !important;
    right: 1.25rem !important;
    top: 29rem !important;
    width: auto !important;
    height: 13.25rem !important;
    transform: none !important;
  }
}

/* MeritSuite targeted correction: stronger hero dashboard, no feature-intro overlap, sharper previews */
body.meritsuite-page-template .suite-device {
  top: 3.55rem !important;
  right: 6.8rem !important;
  width: 41.8rem !important;
  height: 24.1rem !important;
  transform: perspective(80rem) rotateY(-3deg) rotateX(0.8deg) translateY(0.35rem) !important;
  box-shadow: 0 2.5rem 5rem rgba(0,0,0,0.62), 0 0 0 1px rgba(241,238,231,0.10) !important;
}
body.meritsuite-page-template .suite-device img {
  object-position: 50% 0%;
  filter: saturate(1.08) contrast(1.2) brightness(0.98) !important;
  image-rendering: auto;
}
body.meritsuite-page-template .suite-hero-note {
  right: 2.55rem !important;
  top: 7.45rem !important;
}
body.meritsuite-page-template .suite-hero::before {
  left: 29%;
  height: 10.85rem;
}
@media (min-width: 721px) {
  body.meritsuite-page-template .suite-platform {
    height: 37.6rem !important;
    padding-top: 1.65rem !important;
  }
  body.meritsuite-page-template .platform-head {
    height: 12.15rem !important;
    min-height: 12.15rem !important;
    margin-bottom: 0.9rem !important;
    overflow: visible !important;
  }
  body.meritsuite-page-template .platform-head h2 {
    max-width: 29rem;
    font-size: 2.78rem !important;
    line-height: 0.97 !important;
  }
  body.meritsuite-page-template .platform-head > p {
    padding-top: 3.05rem !important;
    max-width: 25.5rem;
  }
  body.meritsuite-page-template .platform-head aside {
    padding-top: 2.48rem !important;
  }
  body.meritsuite-page-template .suite-feature-grid {
    margin-top: 0 !important;
  }
}
body.meritsuite-page-template .proposal-preview {
  grid-template-columns: 45% 55%;
  background: linear-gradient(90deg, #0b0b0a 0 45%, #171614 45% 100%);
}
body.meritsuite-page-template .proposal-preview > div {
  padding: 1.18rem 0.8rem 0.8rem 0.95rem;
  background: linear-gradient(180deg, rgba(241,238,231,0.045), transparent 58%);
}
body.meritsuite-page-template .proposal-preview figure {
  position: relative;
  margin: 0.68rem 0.72rem 0.68rem 0.6rem;
  border: 1px solid rgba(241,238,231,0.16);
  background:
    linear-gradient(180deg, rgba(241,238,231,0.16), rgba(241,238,231,0.05)) 74% 0.85rem / 0.8rem 6.6rem no-repeat,
    linear-gradient(90deg, transparent 0 62%, rgba(241,238,231,0.10) 62% 63%, transparent 63% 100%),
    linear-gradient(180deg, rgba(255,255,255,0.05), rgba(0,0,0,0.12)),
    #1a1916;
  filter: none !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.035), 0 0.65rem 1.2rem rgba(0,0,0,0.22);
}
body.meritsuite-page-template .proposal-preview figure::before,
body.meritsuite-page-template .proposal-preview figure::after {
  content: '';
  position: absolute;
  left: 0.7rem;
  right: 2.2rem;
  height: 1px;
  background: rgba(241,238,231,0.18);
  box-shadow: 0 0.95rem 0 rgba(241,238,231,0.13), 0 1.9rem 0 rgba(241,238,231,0.10), 0 2.85rem 0 rgba(241,238,231,0.08);
}
body.meritsuite-page-template .proposal-preview figure::before { top: 1.2rem; }
body.meritsuite-page-template .proposal-preview figure::after {
  left: 0.7rem;
  right: 3.4rem;
  top: 5.9rem;
  box-shadow: 0 0.75rem 0 rgba(241,238,231,0.10), 0 1.5rem 0 rgba(241,238,231,0.08);
}
body.meritsuite-page-template .project-preview,
body.meritsuite-page-template .project-preview figure {
  filter: none !important;
}
body.meritsuite-page-template .project-preview {
  background:
    linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0.50)),
    linear-gradient(135deg, #333027 0 28%, #151411 28% 44%, #4b4638 44% 58%, #1a1814 58% 100%);
}
body.meritsuite-page-template .project-preview figure {
  inset: 0.66rem 0.66rem 3.58rem 0.66rem;
  border-color: rgba(241,238,231,0.13);
  background:
    linear-gradient(180deg, rgba(0,0,0,0.0), rgba(0,0,0,0.28)),
    linear-gradient(90deg, transparent 0 58%, rgba(241,238,231,0.10) 58% 59%, transparent 59% 100%),
    linear-gradient(135deg, #544f40 0 30%, #22201a 30% 48%, #77705a 48% 58%, #2a271f 58% 100%);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.035);
}
body.meritsuite-page-template .clients-ui p,
body.meritsuite-page-template .invoice-ui p,
body.meritsuite-page-template .templates-ui p {
  background: rgba(241,238,231,0.06);
  border-color: rgba(241,238,231,0.105);
}
body.meritsuite-page-template .clients-ui p strong,
body.meritsuite-page-template .invoice-ui p strong,
body.meritsuite-page-template .templates-ui p,
body.meritsuite-page-template .ui-preview header span {
  color: rgba(241,238,231,0.98);
}
body.meritsuite-page-template .analytics-ui .bars i {
  background: linear-gradient(180deg, rgba(232,214,177,0.5), rgba(241,238,231,0.13));
}
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-hero {
    height: 50rem !important;
    min-height: 50rem !important;
  }
  body.meritsuite-page-template .suite-device {
    left: 1.25rem !important;
    right: 1.25rem !important;
    top: 29.5rem !important;
    width: auto !important;
    height: 14rem !important;
    transform: none !important;
  }
}

/* MeritSuite targeted correction pass 2: prevent feature-intro overlap */
@media (min-width: 721px) {
  body.meritsuite-page-template .suite-platform {
    height: 41.2rem !important;
  }
  body.meritsuite-page-template .platform-head {
    height: 16rem !important;
    min-height: 16rem !important;
    margin-bottom: 1rem !important;
  }
  body.meritsuite-page-template .platform-head h2 {
    max-width: 30rem;
    font-size: 2.7rem !important;
    line-height: 0.98 !important;
  }
  body.meritsuite-page-template .platform-head > p {
    padding-top: 3.2rem !important;
  }
  body.meritsuite-page-template .platform-head aside {
    padding-top: 2.7rem !important;
  }
}

/* MeritSuite final nudge: dashboard 2cm left and maximum clarity */
body.meritsuite-page-template .suite-device {
  right: 11.5rem !important;
}
body.meritsuite-page-template .suite-device img {
  object-fit: contain !important;
  object-position: center center !important;
  filter: contrast(1.16) brightness(1.03) saturate(1.04) !important;
  background: #050505;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-device {
    right: 1.25rem !important;
  }
}


/* MeritSuite Everything you need: luxury visual refinement only */
body.meritsuite-page-template .suite-platform {
  background:
    radial-gradient(circle at 38% 4%, rgba(215,196,160,0.18), transparent 18rem),
    linear-gradient(180deg, #f3f0e8 0%, #eeeae1 100%) !important;
}
body.meritsuite-page-template .suite-feature-grid {
  gap: 1.02rem !important;
}
body.meritsuite-page-template .suite-feature-grid article {
  padding: 0 0.5rem 0.22rem !important;
  border-left: 1px solid rgba(34,30,25,0.095) !important;
}
body.meritsuite-page-template .suite-feature-grid article:first-child {
  border-left: 0 !important;
}
body.meritsuite-page-template .feature-shot {
  min-height: 11.7rem !important;
  border: 1px solid rgba(16,14,12,0.34) !important;
  background:
    radial-gradient(circle at 80% 14%, rgba(230,204,158,0.17), transparent 36%),
    linear-gradient(145deg, #171612 0%, #090908 72%) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.045),
    inset 0 1px 0 rgba(241,238,231,0.07),
    0 0.75rem 1.6rem rgba(33,28,20,0.12) !important;
}
body.meritsuite-page-template .feature-shot .proposal-preview,
body.meritsuite-page-template .feature-shot .ui-preview,
body.meritsuite-page-template .feature-shot .project-preview {
  min-height: 11.7rem !important;
}
body.meritsuite-page-template .feature-shot::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0) 28%),
    radial-gradient(circle at 83% 18%, rgba(226,198,151,0.15), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,0.03), rgba(0,0,0,0.02)) !important;
}
body.meritsuite-page-template .proposal-preview {
  grid-template-columns: 46% 54% !important;
  background:
    linear-gradient(90deg, rgba(8,8,7,0.98) 0 46%, rgba(27,25,21,0.96) 46% 100%) !important;
}
body.meritsuite-page-template .proposal-preview > div {
  padding: 1.22rem 0.88rem 0.82rem 0.98rem !important;
  border-right: 1px solid rgba(241,238,231,0.12) !important;
  background:
    radial-gradient(circle at 22% 0%, rgba(226,198,151,0.13), transparent 5.8rem),
    linear-gradient(180deg, rgba(241,238,231,0.045), transparent 62%) !important;
}
body.meritsuite-page-template .proposal-preview span {
  color: rgba(248,244,235,0.98) !important;
  font-size: 1.08rem !important;
  letter-spacing: -0.01em;
}
body.meritsuite-page-template .proposal-preview small {
  color: rgba(226,211,180,0.66) !important;
}
body.meritsuite-page-template .proposal-preview strong {
  color: rgba(241,229,205,0.92) !important;
}
body.meritsuite-page-template .proposal-preview figure {
  margin: 0.72rem !important;
  border-color: rgba(241,238,231,0.18) !important;
  background:
    linear-gradient(180deg, rgba(241,238,231,0.18), rgba(241,238,231,0.055)) 72% 0.85rem / 0.9rem 7rem no-repeat,
    linear-gradient(90deg, transparent 0 58%, rgba(241,238,231,0.105) 58% 59%, transparent 59% 100%),
    radial-gradient(circle at 73% 28%, rgba(226,198,151,0.20), transparent 2.8rem),
    linear-gradient(180deg, rgba(255,255,255,0.07), rgba(0,0,0,0.08)),
    #201e19 !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.05), 0 0.85rem 1.45rem rgba(0,0,0,0.28) !important;
}
body.meritsuite-page-template .proposal-preview figure::before,
body.meritsuite-page-template .proposal-preview figure::after {
  background: rgba(241,232,211,0.24) !important;
}
body.meritsuite-page-template .proposal-preview figure::before {
  box-shadow: 0 0.95rem 0 rgba(241,232,211,0.16), 0 1.9rem 0 rgba(241,232,211,0.12), 0 2.85rem 0 rgba(241,232,211,0.10) !important;
}
body.meritsuite-page-template .proposal-preview figure::after {
  box-shadow: 0 0.75rem 0 rgba(241,232,211,0.13), 0 1.5rem 0 rgba(241,232,211,0.10) !important;
}
body.meritsuite-page-template .ui-preview {
  padding: 0.86rem 0.88rem !important;
  background:
    radial-gradient(circle at 80% 5%, rgba(226,198,151,0.11), transparent 5rem),
    linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.01)) !important;
}
body.meritsuite-page-template .ui-preview header {
  height: 1.58rem !important;
  margin-bottom: 0.46rem !important;
}
body.meritsuite-page-template .ui-preview header span {
  color: rgba(248,244,235,0.98) !important;
  font-size: 0.56rem !important;
}
body.meritsuite-page-template .ui-preview header b,
body.meritsuite-page-template .analytics-ui header small {
  border-color: rgba(226,198,151,0.18) !important;
  background: rgba(226,198,151,0.085) !important;
  color: rgba(231,214,181,0.88) !important;
}
body.meritsuite-page-template .clients-ui p,
body.meritsuite-page-template .invoice-ui p,
body.meritsuite-page-template .templates-ui p {
  min-height: 1.58rem !important;
  margin-bottom: 0.2rem !important;
  border-color: rgba(241,238,231,0.115) !important;
  background: linear-gradient(180deg, rgba(241,238,231,0.072), rgba(241,238,231,0.035)) !important;
}
body.meritsuite-page-template .clients-ui p i,
body.meritsuite-page-template .templates-ui p i {
  border-color: rgba(226,198,151,0.24) !important;
  background: linear-gradient(180deg, rgba(226,198,151,0.18), rgba(241,238,231,0.035)) !important;
}
body.meritsuite-page-template .clients-ui p strong,
body.meritsuite-page-template .invoice-ui p strong,
body.meritsuite-page-template .templates-ui p {
  color: rgba(248,244,235,0.96) !important;
}
body.meritsuite-page-template .clients-ui p small,
body.meritsuite-page-template .invoice-ui p small {
  color: rgba(226,211,180,0.72) !important;
}
body.meritsuite-page-template .project-preview {
  background:
    linear-gradient(180deg, rgba(0,0,0,0.04), rgba(0,0,0,0.52)),
    radial-gradient(circle at 74% 18%, rgba(230,206,164,0.20), transparent 3.2rem),
    linear-gradient(135deg, #635d4d 0 26%, #211f19 26% 44%, #8a826b 44% 56%, #2c2921 56% 100%) !important;
}
body.meritsuite-page-template .project-preview figure {
  inset: 0.66rem 0.66rem 3.55rem 0.66rem !important;
  border-color: rgba(241,238,231,0.16) !important;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.02), rgba(0,0,0,0.26)),
    linear-gradient(90deg, transparent 0 58%, rgba(241,238,231,0.12) 58% 59%, transparent 59% 100%),
    radial-gradient(circle at 70% 25%, rgba(238,218,178,0.22), transparent 3rem),
    linear-gradient(135deg, #5f5949 0 30%, #25221b 30% 48%, #9a9279 48% 58%, #322f26 58% 100%) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.04), 0 0.65rem 1.2rem rgba(0,0,0,0.22) !important;
}
body.meritsuite-page-template .project-preview > div {
  border-color: rgba(241,238,231,0.12) !important;
  background: rgba(8,8,7,0.82) !important;
}
body.meritsuite-page-template .invoice-ui footer {
  margin-top: 0.34rem !important;
  border-top-color: rgba(226,198,151,0.22) !important;
}
body.meritsuite-page-template .invoice-ui footer strong {
  color: rgba(248,244,235,1) !important;
}
body.meritsuite-page-template .analytics-ui > strong {
  color: rgba(248,244,235,1) !important;
  font-size: 2.34rem !important;
}
body.meritsuite-page-template .analytics-ui > p {
  color: rgba(177,232,150,0.94) !important;
}
body.meritsuite-page-template .analytics-ui .bars i {
  background: linear-gradient(180deg, rgba(230,206,164,0.58), rgba(241,238,231,0.14)) !important;
  box-shadow: 0 -0.4rem 1.1rem rgba(226,198,151,0.08);
}
body.meritsuite-page-template .templates-ui header {
  border-color: rgba(226,198,151,0.18) !important;
  background: linear-gradient(180deg, rgba(226,198,151,0.12), rgba(241,238,231,0.035)) !important;
}
body.meritsuite-page-template .suite-feature-grid h3 {
  margin-top: 0.66rem !important;
  margin-bottom: 0.34rem !important;
  font-size: 1.48rem !important;
}
body.meritsuite-page-template .suite-feature-grid p {
  color: rgba(56,52,46,0.82) !important;
  font-size: 0.69rem !important;
  line-height: 1.38 !important;
}
body.meritsuite-page-template .suite-feature-grid footer {
  padding-top: 0.42rem !important;
  color: rgba(58,54,48,0.78) !important;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .feature-shot,
  body.meritsuite-page-template .feature-shot .proposal-preview,
  body.meritsuite-page-template .feature-shot .ui-preview,
  body.meritsuite-page-template .feature-shot .project-preview {
    min-height: 12.35rem !important;
  }
}

/* MeritSuite Everything you need: replace six previews with luxury editorial image set */
body.meritsuite-page-template .feature-shot {
  min-height: 11.7rem !important;
  background-image: url('/assets/meritsuite-feature-visuals-luxury.png') !important;
  background-size: 300% 200% !important;
  background-repeat: no-repeat !important;
  border: 1px solid rgba(20,17,13,0.36) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.045), 0 0.8rem 1.55rem rgba(31,26,18,0.13) !important;
}
body.meritsuite-page-template .feature-shot > * {
  display: none !important;
}
body.meritsuite-page-template .feature-shot::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  pointer-events: none !important;
  background: linear-gradient(180deg, rgba(0,0,0,0.02), rgba(0,0,0,0.24) 100%), radial-gradient(circle at 78% 12%, rgba(232,214,177,0.08), transparent 38%) !important;
}
body.meritsuite-page-template .feature-shot::after {
  content: '' !important;
  position: absolute !important;
  inset: 0.55rem !important;
  display: block !important;
  pointer-events: none !important;
  border: 1px solid rgba(241,238,231,0.09) !important;
  background: transparent !important;
}
body.meritsuite-page-template .feature-shot.proposal { background-position: 0% 0% !important; }
body.meritsuite-page-template .feature-shot.clients { background-position: 50% 0% !important; }
body.meritsuite-page-template .feature-shot.projects { background-position: 100% 0% !important; }
body.meritsuite-page-template .feature-shot.invoice { background-position: 0% 100% !important; }
body.meritsuite-page-template .feature-shot.analytics { background-position: 50% 100% !important; }
body.meritsuite-page-template .feature-shot.templates { background-position: 100% 100% !important; }
body.meritsuite-page-template .suite-feature-grid h3 {
  margin-top: 0.66rem !important;
  margin-bottom: 0.34rem !important;
}
body.meritsuite-page-template .suite-feature-grid footer {
  padding-top: 0.42rem !important;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .feature-shot {
    min-height: 12.35rem !important;
  }
}

/* MeritSuite hero dashboard quality fix: native ratio, no side gutters */
body.meritsuite-page-template .suite-device {
  width: 38.4rem !important;
  height: 25.6rem !important;
  right: 9.2rem !important;
  top: 3.05rem !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  border-radius: 0.34rem !important;
  overflow: visible !important;
  transform: translateY(0.2rem) !important;
  box-shadow: 0 2.2rem 4.8rem rgba(0,0,0,0.58) !important;
}
body.meritsuite-page-template .suite-device::after {
  display: none !important;
  content: none !important;
}
body.meritsuite-page-template .suite-device::before {
  left: -2.8rem !important;
  right: -2.8rem !important;
  bottom: -1.65rem !important;
  height: 2.4rem !important;
  background: radial-gradient(ellipse at 50% 15%, rgba(0,0,0,0.68), rgba(0,0,0,0.26) 54%, transparent 76%) !important;
}
body.meritsuite-page-template .suite-device img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0.34rem !important;
  background: transparent !important;
  filter: none !important;
  image-rendering: auto !important;
  box-shadow: 0 0 0 1px rgba(241,238,231,0.11), inset 0 0 0 1px rgba(255,255,255,0.035) !important;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-device {
    left: 1.25rem !important;
    right: 1.25rem !important;
    top: 29.5rem !important;
    width: auto !important;
    height: 14.2rem !important;
    transform: none !important;
  }
}

/* MeritSuite hero dashboard placement fix: clear right editorial text */
body.meritsuite-page-template .suite-device {
  right: 16.25rem !important;
  top: 3.25rem !important;
}
body.meritsuite-page-template .suite-hero-note {
  right: 2.55rem !important;
}
@media (max-width: 720px) {
  body.meritsuite-page-template .suite-device {
    left: 1.25rem !important;
    right: 1.25rem !important;
  }
}

/* MeritSuite: remove yellow/gold glow across this page only */
body.meritsuite-page-template .suite-hero-media {
  background:
    radial-gradient(circle at 64% 18%, rgba(210,215,214,0.08), transparent 11.5rem),
    radial-gradient(circle at 84% 48%, rgba(170,174,170,0.06), transparent 12rem),
    linear-gradient(90deg, rgba(0,0,0,0.97) 0%, rgba(0,0,0,0.86) 31%, rgba(0,0,0,0.42) 54%, rgba(0,0,0,0.66) 100%),
    linear-gradient(90deg, #050505 0 39%, #171818 39% 40%, #0c0c0b 40% 57%, #1b1c1b 57% 58%, #090909 58% 100%),
    repeating-linear-gradient(96deg, rgba(255,255,255,0.022) 0 1px, transparent 1px 3.2rem),
    repeating-linear-gradient(8deg, rgba(255,255,255,0.016) 0 1px, transparent 1px 2.4rem),
    #070707 !important;
}
body.meritsuite-page-template .suite-hero::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.075), rgba(255,255,255,0) 17%),
    radial-gradient(ellipse at 56% 5%, rgba(205,210,207,0.10), transparent 28rem),
    linear-gradient(10deg, #191a19 0%, #0a0a09 62%, #050505 100%),
    repeating-linear-gradient(105deg, rgba(255,255,255,0.036) 0 1px, transparent 1px 2.1rem) !important;
}
body.meritsuite-page-template .suite-platform {
  background:
    radial-gradient(circle at 38% 4%, rgba(210,210,205,0.10), transparent 18rem),
    linear-gradient(180deg, #f2f0e9 0%, #eeeae2 100%) !important;
}
body.meritsuite-page-template .feature-shot::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.062), rgba(255,255,255,0) 28%),
    radial-gradient(circle at 83% 18%, rgba(210,214,211,0.08), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,0.025), rgba(0,0,0,0.02)) !important;
}
body.meritsuite-page-template .feature-shot::after {
  border-color: rgba(241,238,231,0.07) !important;
}
body.meritsuite-page-template .suite-feature-grid h3,
body.meritsuite-page-template .suite-feature-grid p,
body.meritsuite-page-template .suite-feature-grid footer {
  text-shadow: none !important;
}
body.meritsuite-page-template .suite-benefits::before {
  background:
    radial-gradient(circle at 43% 0%, rgba(205,210,207,0.08), transparent 16rem),
    radial-gradient(circle at 86% 58%, rgba(180,184,178,0.05), transparent 13rem),
    linear-gradient(90deg, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.72) 42%, rgba(0,0,0,0.80) 75%, rgba(0,0,0,0.93) 100%),
    linear-gradient(90deg, #050505 0 35%, #171817 35% 36%, #0d0d0c 36% 63%, #1c1d1b 63% 64%, #090909 64% 100%),
    repeating-linear-gradient(101deg, rgba(255,255,255,0.028) 0 1px, transparent 1px 2.4rem),
    repeating-linear-gradient(3deg, rgba(255,255,255,0.016) 0 1px, transparent 1px 3.1rem),
    #070707 !important;
}
body.meritsuite-page-template .suite-benefits::after {
  background:
    linear-gradient(180deg, rgba(241,238,231,0.055), transparent 20%),
    linear-gradient(8deg, rgba(48,50,48,0.72), rgba(9,9,8,0.94)) !important;
}
body.meritsuite-page-template .suite-demo::before {
  background:
    radial-gradient(circle at 6% 24%, rgba(92,108,92,0.16), transparent 8.5rem),
    radial-gradient(circle at 60% 16%, rgba(205,210,207,0.08), transparent 15rem),
    radial-gradient(circle at 88% 62%, rgba(180,184,178,0.05), transparent 12rem),
    linear-gradient(90deg, rgba(0,0,0,0.52) 0%, rgba(0,0,0,0.34) 34%, rgba(0,0,0,0.52) 68%, rgba(0,0,0,0.78) 100%),
    linear-gradient(90deg, #0a0a09 0 27%, #181918 27% 28%, #0d0d0c 28% 62%, #1c1d1b 62% 63%, #090909 63% 100%),
    repeating-linear-gradient(110deg, rgba(255,255,255,0.028) 0 1px, transparent 1px 2.7rem),
    repeating-linear-gradient(0deg, rgba(255,255,255,0.016) 0 1px, transparent 1px 3.4rem),
    #070707 !important;
}
body.meritsuite-page-template .suite-demo::after {
  background:
    radial-gradient(ellipse at 4% 55%, rgba(78,98,75,0.18), transparent 8.5rem),
    linear-gradient(72deg, transparent 0 3.6rem, rgba(92,108,86,0.08) 3.7rem 3.86rem, transparent 4rem 100%),
    linear-gradient(112deg, transparent 0 4.7rem, rgba(92,108,86,0.07) 4.8rem 5rem, transparent 5.2rem 100%),
    linear-gradient(180deg, transparent 0 54%, rgba(0,0,0,0.20) 100%) !important;
}
body.meritsuite-page-template .analytics-ui .bars i,
body.meritsuite-page-template .clients-ui p i,
body.meritsuite-page-template .templates-ui p i {
  box-shadow: none !important;
}
body.meritsuite-page-template .button-light {
  box-shadow: none !important;
}

/* MeritSuite: luxury photographic hero background */
body.meritsuite-page-template .suite-hero-media {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.98) 0%, rgba(0,0,0,0.93) 27%, rgba(0,0,0,0.62) 48%, rgba(0,0,0,0.36) 70%, rgba(0,0,0,0.70) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.28) 0%, rgba(0,0,0,0.04) 42%, rgba(0,0,0,0.45) 100%),
    url('/assets/meritsuite-hero-luxury-bg.png') center center / cover no-repeat !important;
}

body.meritsuite-page-template .suite-hero::before {
  opacity: 0 !important;
}

body.meritsuite-page-template .suite-hero::after {
  background:
    linear-gradient(0deg, rgba(0,0,0,0.62) 0%, rgba(0,0,0,0.08) 36%, rgba(0,0,0,0.22) 100%),
    radial-gradient(ellipse at 72% 45%, rgba(255,255,255,0.045), transparent 28rem) !important;
}

body.meritsuite-page-template .suite-device {
  box-shadow: 0 2.2rem 5rem rgba(0,0,0,0.46), 0 0 0 1px rgba(241,238,231,0.08) !important;
}

/* MeritSuite: luxury photographic benefits background */
body.meritsuite-page-template .suite-benefits {
  background: #050505 !important;
  overflow: hidden !important;
}

body.meritsuite-page-template .suite-benefits::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.90) 0%, rgba(0,0,0,0.68) 28%, rgba(0,0,0,0.48) 55%, rgba(0,0,0,0.76) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.22) 0%, rgba(0,0,0,0.08) 42%, rgba(0,0,0,0.62) 100%),
    url('/assets/meritsuite-benefits-luxury-bg.png') center center / cover no-repeat !important;
  opacity: 1 !important;
}

body.meritsuite-page-template .suite-benefits::after {
  background:
    linear-gradient(180deg, rgba(241,238,231,0.035), transparent 24%),
    linear-gradient(90deg, transparent 0%, rgba(0,0,0,0.16) 54%, rgba(0,0,0,0.32) 100%) !important;
}

/* MeritSuite: luxury photographic demo background */
body.meritsuite-page-template .suite-demo {
  background: #050505 !important;
  overflow: hidden !important;
}

body.meritsuite-page-template .suite-demo::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.66) 0%, rgba(0,0,0,0.42) 34%, rgba(0,0,0,0.50) 68%, rgba(0,0,0,0.74) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.20) 0%, rgba(0,0,0,0.08) 44%, rgba(0,0,0,0.55) 100%),
    url('/assets/meritsuite-demo-luxury-bg.png') center center / cover no-repeat !important;
  opacity: 1 !important;
}

body.meritsuite-page-template .suite-demo::after {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.18) 0%, transparent 28%, rgba(0,0,0,0.20) 100%),
    linear-gradient(180deg, transparent 0 62%, rgba(0,0,0,0.28) 100%) !important;
}

/* Contact page only: page-specific composition. */
.contact-page-template { background: #030302; }

.contact-hero {
  position: relative;
  height: 31rem;
  min-height: 31rem;
  overflow: hidden;
  color: var(--paper);
  background: #050505;
}

.contact-hero-media,
.contact-hero::after {
  position: absolute;
  inset: 0;
}

.contact-hero-media {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.96) 0%, rgba(0,0,0,0.86) 31%, rgba(0,0,0,0.42) 58%, rgba(0,0,0,0.20) 74%, rgba(0,0,0,0.60) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.20) 0%, rgba(0,0,0,0.08) 45%, rgba(0,0,0,0.52) 100%),
    url('/assets/contact-hero-luxury-bg.png') center center / cover no-repeat;
  filter: saturate(0.72) contrast(1.05) brightness(0.82);
}

.contact-hero::after {
  content: "";
  pointer-events: none;
  background: linear-gradient(0deg, rgba(0,0,0,0.70) 0%, transparent 34%);
}

.contact-hero-content {
  position: relative;
  z-index: 2;
  width: 45rem;
  padding: 6.9rem 0 0 4.55rem;
}

.contact-hero h1 {
  max-width: 34rem;
  margin-bottom: 0.9rem;
  font-size: 4.15rem;
  line-height: 0.94;
  letter-spacing: -0.018em;
}

.contact-hero .lede {
  max-width: 34rem;
  margin-bottom: 1.15rem;
  color: rgba(241,238,231,0.88);
  font-size: 0.96rem;
  line-height: 1.36;
}

.contact-hero .actions {
  display: flex;
  align-items: center;
  gap: 2.05rem;
}

.contact-hero-note {
  position: absolute;
  z-index: 2;
  right: 5.25rem;
  top: 8.05rem;
  display: grid;
  gap: 0.32rem;
  max-width: 9rem;
  color: rgba(241,238,231,0.78);
  font-size: 0.52rem;
  line-height: 1.52;
  letter-spacing: 0.55em;
  text-transform: uppercase;
}

.contact-hero-note i,
.contact-closing aside i {
  display: block;
  width: 2rem;
  height: 1px;
  margin-top: 1rem;
  background: rgba(241,238,231,0.72);
}

.contact-main {
  display: grid;
  grid-template-columns: 27% 43% 1fr;
  gap: 2.45rem;
  align-items: stretch;
  min-height: 25.2rem;
  padding: 3.6rem 4.55rem 3.35rem;
  background: #f1eee7;
  border-bottom: 1px solid rgba(13,12,10,0.08);
}

.contact-main-copy h2 {
  margin-bottom: 1.1rem;
  font-size: 3rem;
  line-height: 0.98;
}

.contact-main-copy p:not(.eyebrow) {
  max-width: 22rem;
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.45;
}

.contact-form-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
  gap: 0.64rem 0.7rem;
  padding-top: 0.18rem;
}

.contact-form-panel label {
  display: grid;
}

.contact-form-panel label span {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.contact-form-panel .wide {
  grid-column: 1 / -1;
}

.contact-form-panel input,
.contact-form-panel select,
.contact-form-panel textarea {
  width: 100%;
  border: 1px solid rgba(13,12,10,0.26);
  border-radius: 0;
  background: rgba(255,255,255,0.26);
  color: #15130f;
  outline: none;
  font-size: 0.78rem;
  line-height: 1.25;
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.contact-form-panel input,
.contact-form-panel select {
  height: 2.05rem;
  padding: 0 0.78rem;
}

.contact-form-panel textarea {
  min-height: 6.7rem;
  padding: 0.72rem 0.78rem;
  resize: vertical;
}

.contact-form-panel input::placeholder,
.contact-form-panel textarea::placeholder,
.contact-form-panel select:invalid {
  color: rgba(21,19,15,0.62);
  opacity: 1;
}

.contact-form-panel input:focus,
.contact-form-panel select:focus,
.contact-form-panel textarea:focus,
.contact-form-panel input:focus-visible,
.contact-form-panel select:focus-visible,
.contact-form-panel textarea:focus-visible {
  border-color: rgba(123,107,82,0.78);
  background: rgba(255,255,255,0.36);
  box-shadow: 0 0 0 1px rgba(123,107,82,0.16);
}

.contact-form-panel .button {
  width: 13.5rem;
  min-height: 2.45rem;
  margin-top: 0.18rem;
}

.contact-form-panel > p {
  align-self: center;
  margin: 0;
  color: var(--muted);
  font-size: 0.63rem;
}

.contact-panel {
  position: relative;
  overflow: hidden;
  padding: 2.15rem 2rem;
  color: var(--paper);
  background: #070706;
  border: 1px solid rgba(13,12,10,0.1);
}

.contact-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.78), rgba(0,0,0,0.48)),
    url('/assets/contact-cta-luxury-bg.png') 62% 50% / cover no-repeat;
  filter: saturate(0.7) brightness(0.72);
}

.contact-panel > * {
  position: relative;
  z-index: 1;
}

.contact-panel h2 {
  margin: 4.4rem 0 3.4rem;
  font-size: 2.45rem;
  line-height: 0.98;
}

.contact-panel div {
  display: grid;
  gap: 0.65rem;
  padding-top: 1.2rem;
  border-top: 1px solid rgba(241,238,231,0.44);
}

.contact-panel span {
  color: rgba(241,238,231,0.68);
  font-size: 0.56rem;
  letter-spacing: 0.44em;
  text-transform: uppercase;
}

.contact-panel strong {
  font-family: var(--serif);
  font-size: 1.35rem;
  font-weight: 400;
}

.contact-values {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-height: 12.1rem;
  padding: 2.05rem 4.55rem;
  background: #f1eee7;
  border-bottom: 1px solid rgba(13,12,10,0.08);
}

.contact-values article {
  display: grid;
  grid-template-columns: 2.2rem 1fr;
  grid-template-rows: auto auto 1fr;
  column-gap: 1rem;
  padding: 0.8rem 2rem 0.3rem;
  border-left: 1px solid rgba(13,12,10,0.1);
}

.contact-values article:first-child {
  border-left: 0;
  padding-left: 0;
}

.contact-values span {
  grid-row: 1 / 4;
  color: var(--muted);
  font-size: 0.62rem;
}

.contact-values i {
  margin-bottom: 1.1rem;
  font-style: normal;
  font-size: 1.65rem;
  line-height: 1;
}

.contact-values h3 {
  margin: 0 0 0.55rem;
  font-size: 1.45rem;
  line-height: 1;
}

.contact-values p {
  max-width: 15rem;
  margin: 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.38;
}

.contact-closing {
  position: relative;
  min-height: 19rem;
  display: grid;
  grid-template-columns: 36% 1fr 16%;
  align-items: center;
  gap: 2rem;
  padding: 3.2rem 4.55rem;
  overflow: hidden;
  color: var(--paper);
  background: #050505;
}

.contact-closing::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.82) 0%, rgba(0,0,0,0.38) 54%, rgba(0,0,0,0.74) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.50)),
    url('/assets/contact-cta-luxury-bg.png') center center / cover no-repeat;
  filter: saturate(0.75) brightness(0.78);
}

.contact-closing > * {
  position: relative;
  z-index: 1;
}

.contact-closing h2 {
  margin-bottom: 0.8rem;
  font-size: 3rem;
}

.contact-closing p:not(.eyebrow) {
  max-width: 24rem;
  margin-bottom: 1.25rem;
  color: rgba(241,238,231,0.82);
  font-size: 0.92rem;
  line-height: 1.38;
}

.contact-closing aside {
  grid-column: 3;
  color: rgba(241,238,231,0.78);
  font-size: 0.6rem;
  letter-spacing: 0.48em;
  line-height: 1.55;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  .contact-hero { height: auto; min-height: 44rem; }
  .contact-hero-content { width: auto; padding: 6.4rem 1.25rem 0; }
  .contact-hero h1 { font-size: clamp(3.2rem, 15vw, 4.35rem); }
  .contact-hero .actions { flex-wrap: wrap; gap: 1rem; }
  .contact-hero-note { display: none; }
  .contact-main { grid-template-columns: 1fr; padding: 3rem 1.25rem; }
  .contact-form-panel { grid-template-columns: 1fr; }
  .contact-values { grid-template-columns: 1fr; padding: 1.7rem 1.25rem; }
  .contact-values article { border-left: 0; border-top: 1px solid rgba(13,12,10,0.1); padding: 1.4rem 0; }
  .contact-values article:first-child { border-top: 0; }
  .contact-closing { grid-template-columns: 1fr; padding: 3rem 1.25rem; }
  .contact-closing aside { grid-column: 1; }
}

/* Contact page visual QA correction pass: tighter editorial proportions. */
.contact-page-template .contact-main {
  grid-template-columns: 26.5% 42.5% 1fr;
  min-height: 24.4rem;
  padding-top: 3.25rem;
  padding-bottom: 3.05rem;
}

.contact-page-template .contact-panel {
  padding: 2rem 1.9rem;
}

.contact-page-template .contact-panel h2 {
  margin-top: 3.85rem;
  margin-bottom: 3.15rem;
}

.contact-page-template .contact-values {
  min-height: 11.55rem;
  padding-top: 1.82rem;
  padding-bottom: 1.82rem;
}

.contact-page-template .contact-closing {
  min-height: 18.35rem;
}

/* Contact page final polish: lighter integrated panels and tighter rhythm. */
.contact-page-template .site-header {
  background: linear-gradient(180deg, rgba(0,0,0,0.74), rgba(0,0,0,0.12) 72%, rgba(0,0,0,0));
}

.contact-page-template .contact-hero-content {
  padding-top: 7.05rem;
}

.contact-page-template .contact-main {
  grid-template-columns: 26% 43.5% 1fr;
  min-height: 22.6rem;
  padding-top: 2.85rem;
  padding-bottom: 2.55rem;
  align-items: start;
}

.contact-page-template .contact-main-copy,
.contact-page-template .contact-form-panel,
.contact-page-template .contact-panel {
  align-self: start;
}

.contact-page-template .contact-main-copy h2 {
  margin-bottom: 0.92rem;
}

.contact-page-template .contact-form-panel {
  gap: 0.56rem 0.65rem;
  padding-top: 0.05rem;
}

.contact-page-template .contact-form-panel textarea {
  min-height: 6.1rem;
}

.contact-page-template .contact-panel {
  min-height: 17.8rem;
  padding: 1.85rem 1.85rem;
  background: rgba(13,12,10,0.58) !important;
  border-color: rgba(13,12,10,0.07);
  box-shadow: inset 1px 0 0 rgba(241,238,231,0.045);
}

.contact-page-template .contact-panel::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.52), rgba(0,0,0,0.24) 48%, rgba(0,0,0,0.42)),
    url('/assets/contact-cta-luxury-bg.png') 58% 50% / cover no-repeat !important;
  filter: saturate(0.68) brightness(0.88) contrast(0.98);
  opacity: 0.72;
}

.contact-page-template .contact-panel h2 {
  margin-top: 3.1rem;
  margin-bottom: 2.55rem;
  font-size: 2.32rem;
}

.contact-page-template .contact-panel div {
  padding-top: 1rem;
  border-top-color: rgba(241,238,231,0.34);
}

.contact-page-template .contact-values {
  min-height: 10.4rem;
  padding-top: 1.45rem;
  padding-bottom: 1.42rem;
}

.contact-page-template .contact-values article {
  grid-template-columns: 2rem 1fr;
  column-gap: 0.86rem;
  padding-top: 0.55rem;
  padding-bottom: 0.1rem;
  padding-left: 1.75rem;
  padding-right: 1.75rem;
  align-content: start;
}

.contact-page-template .contact-values article:first-child {
  padding-left: 0;
}

.contact-page-template .contact-values span {
  padding-top: 0.18rem;
}

.contact-page-template .contact-values i {
  margin-bottom: 0.72rem;
  font-size: 1.42rem;
}

.contact-page-template .contact-values h3 {
  margin-bottom: 0.45rem;
  font-size: 1.32rem;
}

.contact-page-template .contact-values p {
  font-size: 0.72rem;
  line-height: 1.34;
}

.contact-page-template .contact-closing {
  min-height: 17.2rem;
  grid-template-columns: 38% 1fr 18%;
  padding-top: 2.9rem;
  padding-bottom: 2.75rem;
}

.contact-page-template .contact-closing::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.80) 0%, rgba(0,0,0,0.34) 47%, rgba(0,0,0,0.46) 74%, rgba(0,0,0,0.58) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.12), rgba(0,0,0,0.40)),
    url('/assets/contact-cta-luxury-bg.png') center center / cover no-repeat !important;
  filter: saturate(0.74) brightness(0.86) contrast(1.02);
}

.contact-page-template .contact-closing h2 {
  margin-bottom: 0.7rem;
  font-size: 2.86rem;
}

.contact-page-template .contact-closing aside {
  justify-self: start;
  color: rgba(241,238,231,0.74);
}

/* Site-wide responsive QA pass: mobile/tablet only, desktop visuals remain intact. */
@media (max-width: 1100px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  section,
  main,
  footer,
  header {
    max-width: 100vw;
  }

  img,
  video,
  canvas,
  svg {
    max-width: 100%;
  }

  [id] {
    scroll-margin-top: 5.8rem;
  }

  .site-header,
  body.meritsuite-page-template .site-header,
  .contact-page-template .site-header {
    grid-template-columns: auto auto;
    align-items: center;
    min-height: 4.25rem;
    height: auto;
    padding: 0.9rem 1.25rem;
    background: linear-gradient(180deg, rgba(0,0,0,0.86), rgba(0,0,0,0.22) 80%, rgba(0,0,0,0));
  }

  .brand {
    max-width: calc(100vw - 5.5rem);
    overflow: hidden;
    font-size: clamp(0.98rem, 2.5vw, 1.18rem);
    letter-spacing: 0.24em;
    text-overflow: ellipsis;
  }

  .nav-toggle {
    display: inline-grid;
    width: 2.6rem;
    height: 2.6rem;
    place-content: center;
    gap: 0.33rem;
    border: 1px solid rgba(241,238,231,0.36);
    border-radius: 999px;
    background: rgba(5,5,4,0.38);
    color: var(--paper);
    backdrop-filter: blur(12px);
  }

  .nav-toggle span {
    display: block;
    width: 1.08rem;
    height: 1px;
    background: currentColor;
    transition: transform 180ms ease, opacity 180ms ease;
  }

  .site-header.menu-open {
    inset: 0;
    align-content: start;
    grid-template-rows: auto auto auto;
    background:
      linear-gradient(180deg, rgba(5,5,4,0.98), rgba(5,5,4,0.94)),
      radial-gradient(circle at 78% 10%, rgba(241,238,231,0.08), transparent 16rem);
  }

  .site-header.menu-open .nav-toggle span:first-child {
    transform: translateY(0.2rem) rotate(38deg);
  }

  .site-header.menu-open .nav-toggle span:last-child {
    transform: translateY(-0.2rem) rotate(-38deg);
  }

  .site-nav,
  .header-actions {
    display: none;
  }

  .site-header.menu-open .site-nav,
  .site-header.menu-open .header-actions {
    grid-column: 1 / -1;
    display: flex;
    width: 100%;
    align-items: stretch;
  }

  .site-header.menu-open .site-nav {
    flex-direction: column;
    gap: 0;
    margin-top: 3rem;
    border-top: 1px solid rgba(241,238,231,0.16);
  }

  .site-header.menu-open .site-nav a {
    padding: 1.05rem 0;
    border-bottom: 1px solid rgba(241,238,231,0.13);
    font-family: var(--serif);
    font-size: clamp(2rem, 7vw, 3.2rem);
    line-height: 0.95;
  }

  .site-header.menu-open .header-actions {
    flex-direction: row;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1.4rem;
    padding: 0;
  }

  .site-header.menu-open .header-actions .button {
    min-height: 2.85rem;
    padding-inline: 1.2rem;
  }

  h1 {
    line-height: 0.94;
  }

  h2 {
    line-height: 0.97;
  }

  .section,
  .light-section,
  .dark-band,
  .work-index,
  .services-main,
  .about-approach,
  .about-values,
  .about-industries,
  .suite-platform,
  .suite-benefits,
  .suite-pricing,
  .suite-demo,
  .contact-main,
  .contact-values,
  .contact-closing {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .site-footer {
    grid-template-columns: 1fr auto;
    gap: 1rem 1.4rem;
    padding: 1.35rem 1.5rem;
  }

  .site-footer nav {
    grid-column: 1 / -1;
    justify-content: start;
    flex-wrap: wrap;
    gap: 0.9rem 1.2rem;
    order: 3;
  }

  .site-footer p {
    margin: 0;
  }
}

@media (max-width: 900px) {
  .project-grid,
  .featured-projects,
  .expanded-projects,
  .work-project-grid,
  .service-row,
  .detail-grid,
  .pricing,
  .feature-grid,
  .journal,
  .services-detail-grid,
  .process-timeline,
  .expect-grid,
  .values-grid,
  .industry-grid,
  .suite-feature-grid,
  .benefits-grid,
  .contact-form-panel,
  .contact form {
    grid-template-columns: 1fr !important;
  }

  .hero,
  .work-hero,
  .services-hero,
  .about-hero,
  .suite-hero,
  .contact-hero {
    height: auto !important;
    min-height: 42rem !important;
  }

  .hero-content,
  .work-hero-content,
  .services-hero-content,
  .about-hero-content,
  body.meritsuite-page-template .suite-hero-content,
  .contact-hero-content {
    width: auto !important;
    max-width: none !important;
    padding: 6.6rem 1.5rem 2.2rem !important;
  }

  .hero h1,
  .work-hero h1,
  .services-hero h1,
  .about-hero h1,
  body.meritsuite-page-template .suite-hero h1,
  .contact-hero h1 {
    max-width: 9.2ch !important;
    font-size: clamp(3.35rem, 12vw, 5.2rem) !important;
    line-height: 0.92 !important;
  }

  .hero .lede,
  .work-hero .lede,
  .services-hero .lede,
  .about-hero .lede,
  body.meritsuite-page-template .suite-hero .lede,
  .contact-hero .lede {
    max-width: 35rem !important;
    font-size: 0.98rem !important;
    line-height: 1.38 !important;
  }

  .hero-note,
  .work-hero-note,
  .services-hero-note,
  .about-hero-note,
  body.meritsuite-page-template .suite-hero-note,
  .contact-hero-note {
    display: none !important;
  }

  .actions,
  .contact-hero .actions,
  body.meritsuite-page-template .suite-hero .actions {
    display: flex !important;
    flex-wrap: wrap;
    gap: 0.9rem 1.2rem !important;
  }

  .button {
    min-height: 2.8rem;
  }

  .ticker,
  .services-ticker {
    overflow-x: auto;
    white-space: nowrap;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .project-card,
  .expanded-projects .project-card,
  .work-project-card {
    height: 18rem !important;
    min-height: 18rem !important;
  }

  .work-filter-row nav,
  .filters {
    display: flex;
    gap: 1.15rem;
    overflow-x: auto;
    padding-bottom: 0.35rem;
    white-space: nowrap;
  }

  .work-featured,
  .services-process,
  .expect-section,
  .about-approach,
  .about-values,
  .about-industries,
  .about-closing,
  .contact-main,
  .contact-closing {
    height: auto !important;
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
  }

  .work-featured,
  .services-process,
  .about-industries,
  .contact-closing {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .approach-image {
    height: 18rem !important;
  }

  .about-approach {
    gap: 1.4rem !important;
    padding-top: 2.4rem !important;
    padding-bottom: 2.4rem !important;
  }

  .approach-copy h2,
  .values-head h2,
  .industries-copy h2,
  .benefits-copy h2,
  .pricing-copy h2,
  .contact-main-copy h2,
  .contact-closing h2 {
    font-size: clamp(2.55rem, 8vw, 3.6rem) !important;
  }

  .values-grid article,
  .services-detail-grid article,
  .expect-grid article,
  .suite-feature-grid article,
  .benefits-grid article,
  .contact-values article {
    border-left: 0 !important;
    border-top: 1px solid rgba(13,12,10,0.11) !important;
    padding: 1.25rem 0 !important;
  }

  .values-grid article:first-child,
  .services-detail-grid article:first-child,
  .expect-grid article:first-child,
  .suite-feature-grid article:first-child,
  .benefits-grid article:first-child,
  .contact-values article:first-child {
    border-top: 0 !important;
  }

  .services-process ol,
  .process-timeline {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  .services-process li,
  .process-timeline li {
    display: grid;
    grid-template-columns: 3rem 1fr;
    gap: 0.8rem 1rem;
    padding: 1rem 0;
    border-top: 1px solid rgba(241,238,231,0.14);
  }

  .services-process li:first-child,
  .process-timeline li:first-child {
    border-top: 0;
  }

  .process-timeline li::after,
  .services-process li::after {
    display: none !important;
  }

  body.meritsuite-page-template .suite-hero {
    min-height: 48rem !important;
  }

  body.meritsuite-page-template .suite-device {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    width: calc(100% - 3rem) !important;
    height: auto !important;
    aspect-ratio: 3 / 2 !important;
    margin: 0.3rem 1.5rem 3rem !important;
    transform: none !important;
    padding: 0 !important;
    border-radius: 0.32rem !important;
  }

  body.meritsuite-page-template .suite-device::before,
  body.meritsuite-page-template .suite-device::after {
    display: none !important;
  }

  body.meritsuite-page-template .suite-platform {
    height: auto !important;
    padding-top: 2.4rem !important;
    padding-bottom: 2.2rem !important;
  }

  body.meritsuite-page-template .platform-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    height: auto !important;
    min-height: 0 !important;
    gap: 1.2rem !important;
    padding: 0 !important;
    margin-bottom: 1.5rem !important;
  }

  body.meritsuite-page-template .platform-head h2 {
    font-size: clamp(2.55rem, 8vw, 3.7rem) !important;
  }

  body.meritsuite-page-template .platform-head > p {
    margin: 0 !important;
    max-width: 34rem !important;
  }

  body.meritsuite-page-template .platform-head aside {
    justify-self: start !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(13,12,10,0.16);
    padding: 1rem 0 0 !important;
  }

  body.meritsuite-page-template .feature-shot {
    height: 15rem !important;
  }

  body.meritsuite-page-template .suite-benefits,
  body.meritsuite-page-template .suite-demo {
    display: grid !important;
    grid-template-columns: 1fr !important;
    height: auto !important;
    min-height: 0 !important;
    gap: 1.6rem !important;
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  body.meritsuite-page-template .suite-pricing {
    display: grid !important;
    grid-template-columns: 1fr !important;
    height: auto !important;
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }

  body.meritsuite-page-template .suite-pricing article,
  body.meritsuite-page-template .suite-pricing .tailored {
    width: auto !important;
    min-height: 0 !important;
  }

  .contact-page-template .contact-main,
  .contact-page-template .contact-form-panel,
  .contact-page-template .contact-values,
  .contact-page-template .contact-closing {
    grid-template-columns: 1fr !important;
  }

  .contact-page-template .contact-panel {
    min-height: 16rem !important;
  }

  .contact-page-template .contact-form-panel label,
  .contact form label,
  .about-closing form label,
  .suite-demo form label {
    grid-column: 1 / -1 !important;
  }

  .contact input,
  .contact select,
  .contact textarea,
  .contact-form-panel input,
  .contact-form-panel select,
  .contact-form-panel textarea {
    min-height: 2.7rem;
    font-size: 0.92rem !important;
  }

  .contact textarea,
  .contact-form-panel textarea {
    min-height: 7.5rem !important;
  }
}

@media (max-width: 520px) {
  .site-header,
  body.meritsuite-page-template .site-header,
  .contact-page-template .site-header {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .brand {
    font-size: 0.98rem;
    letter-spacing: 0.2em;
  }

  .section,
  .light-section,
  .dark-band,
  .work-index,
  .services-main,
  .about-approach,
  .about-values,
  .about-industries,
  .suite-platform,
  .suite-benefits,
  .suite-pricing,
  .suite-demo,
  .contact-main,
  .contact-values,
  .contact-closing {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .hero-content,
  .work-hero-content,
  .services-hero-content,
  .about-hero-content,
  body.meritsuite-page-template .suite-hero-content,
  .contact-hero-content {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .hero h1,
  .work-hero h1,
  .services-hero h1,
  .about-hero h1,
  body.meritsuite-page-template .suite-hero h1,
  .contact-hero h1 {
    font-size: clamp(3rem, 15vw, 4.05rem) !important;
  }

  h2,
  .service-intro h2,
  .split-head h2,
  .pricing h2,
  .contact h2,
  .about-approach h2,
  .services-process h2,
  .expect-section h2,
  .platform-head h2,
  .benefits-copy h2,
  .pricing-copy h2,
  .contact-main-copy h2,
  .contact-closing h2 {
    font-size: clamp(2.35rem, 11vw, 3.2rem) !important;
  }

  .eyebrow {
    font-size: 0.62rem;
    letter-spacing: 0.38em;
  }

  .button,
  .contact-form-panel .button,
  .contact form .button,
  body.meritsuite-page-template .suite-hero .button {
    width: 100%;
    min-width: 0 !important;
    justify-content: center;
  }

  .text-link {
    font-size: 0.86rem;
  }

  .project-card,
  .expanded-projects .project-card,
  .work-project-card {
    height: 15.8rem !important;
    min-height: 15.8rem !important;
    padding: 1rem !important;
  }

  .project-card h2,
  .project-card h3,
  .work-project-card h2 {
    font-size: 1.55rem !important;
  }

  .site-header.menu-open .site-nav a {
    font-size: clamp(2.05rem, 11vw, 3rem);
  }

  .site-header.menu-open .header-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .site-footer {
    grid-template-columns: 1fr;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .site-footer nav {
    grid-column: auto;
  }

  body.meritsuite-page-template .suite-device {
    width: calc(100% - 2rem) !important;
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }

  body.meritsuite-page-template .feature-shot {
    height: 12.5rem !important;
  }

  .approach-image,
  .industry-grid article,
  .about-industries article {
    height: 15rem !important;
  }
}

/* Functional form submission states: no layout redesign. */
.form-honeypot {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

button[disabled] {
  cursor: progress;
  opacity: 0.72;
  transform: none !important;
}

.form-status {
  grid-column: 1 / -1;
  min-height: 1rem;
  margin: 0.35rem 0 0 !important;
  color: rgba(241, 238, 231, 0.72) !important;
  font-size: 0.66rem !important;
  line-height: 1.35 !important;
}

.form-status:empty {
  display: none;
}

.form-status[data-state="success"] {
  color: rgba(232, 220, 199, 0.88) !important;
}

.form-status[data-state="error"] {
  color: rgba(238, 184, 170, 0.9) !important;
}

.contact-form-panel .form-status {
  color: rgba(21, 19, 15, 0.68) !important;
}

.contact-form-panel .form-status[data-state="success"] {
  color: rgba(73, 82, 63, 0.92) !important;
}

.contact-form-panel .form-status[data-state="error"] {
  color: rgba(128, 55, 42, 0.92) !important;
}

.form-submit-frame {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  border: 0 !important;
  pointer-events: none !important;
}


/* Production fixes: language switcher and natural investment sizing */
.language-switcher {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: inherit;
  letter-spacing: 0.04em;
  text-transform: lowercase;
}

.language-switcher button {
  appearance: none;
  border: 0;
  padding: 0;
  color: currentColor;
  background: transparent;
  font: inherit;
  cursor: pointer;
  opacity: 0.58;
  text-transform: uppercase;
}

.language-switcher button.active {
  opacity: 1;
  text-decoration: underline;
  text-underline-offset: 0.28rem;
}

.language-switcher button:focus-visible {
  outline: 1px solid currentColor;
  outline-offset: 0.22rem;
}

.project-card a,
.work-project-card a {
  cursor: pointer;
}

.project-card a {
  padding: 0.35rem 0 0.35rem 0.9rem;
}

@media (min-width: 1101px) {
  body:not(.meritsuite-page-template) .pricing {
    height: auto !important;
    min-height: 14rem !important;
    overflow: visible !important;
    align-items: center;
  }

  body:not(.meritsuite-page-template) .pricing article {
    height: auto !important;
  }
}

@media (max-width: 1100px) {
  body:not(.meritsuite-page-template) .pricing {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }
}

/* Vantage case study page: scoped automotive editorial system. */
.vantage-page-template {
  background: #050504;
}

.vantage-page-template .site-header {
  background: linear-gradient(180deg, rgba(3,3,3,0.84), rgba(3,3,3,0.12) 86%, transparent);
}

.vantage-hero,
.vantage-visual,
.vantage-mobile,
.vantage-result {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--paper);
}

.vantage-hero {
  min-height: 48rem;
  display: grid;
  grid-template-columns: 48% 1fr 13rem;
  align-items: center;
  padding: 6.5rem 5.05rem 4.4rem;
  border-bottom: 1px solid rgba(241,238,231,0.12);
}

.vantage-hero-media,
.vantage-hero::after,
.vantage-visual::before,
.vantage-mobile::before,
.vantage-result::before {
  position: absolute;
  inset: 0;
  z-index: -2;
  content: "";
}

.vantage-hero-media {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.86) 0%, rgba(0,0,0,0.58) 39%, rgba(0,0,0,0.24) 70%, rgba(0,0,0,0.74) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.2), rgba(0,0,0,0.55)),
    url("https://images.unsplash.com/photo-1619767886558-efdc259cde1a?auto=format&fit=crop&w=2400&q=86") 62% 52% / cover no-repeat;
  filter: saturate(0.64) contrast(1.1) brightness(0.7);
}

.vantage-hero::after {
  z-index: -1;
  background:
    radial-gradient(circle at 73% 54%, rgba(220,60,38,0.15), transparent 14rem),
    linear-gradient(90deg, rgba(0,0,0,0.34), transparent 62%);
}

.vantage-hero-content {
  max-width: 44rem;
}

.vantage-hero h1 {
  max-width: 9.7ch;
  margin: 1rem 0 1rem;
  font-size: clamp(4.9rem, 7.4vw, 7.6rem);
  line-height: 0.86;
  letter-spacing: -0.02em;
}

.vantage-hero .lede {
  max-width: 30rem;
  color: rgba(241,238,231,0.8);
  font-size: 1.03rem;
  line-height: 1.45;
}

.vantage-hero-note {
  justify-self: end;
  display: grid;
  gap: 0.34rem;
  max-width: 9.5rem;
  margin-top: 1.5rem;
  color: rgba(241,238,231,0.74);
  font-size: 0.66rem;
  letter-spacing: 0.48em;
  line-height: 1.75;
  text-transform: uppercase;
}

.vantage-hero-note::after,
.vantage-visual aside i {
  width: 2rem;
  height: 1px;
  margin-top: 1.2rem;
  background: currentColor;
  content: "";
}

.vantage-meta {
  position: absolute;
  left: 5.05rem;
  right: 5.05rem;
  bottom: 2.1rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(241,238,231,0.22);
  color: rgba(241,238,231,0.76);
  font-size: 0.67rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.vantage-meta span {
  padding-top: 1rem;
  border-right: 1px solid rgba(241,238,231,0.16);
}

.vantage-meta span:last-child {
  border-right: 0;
}

.vantage-meta b {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--paper);
  font-weight: 400;
}

.vantage-intro,
.vantage-direction,
.vantage-digital,
.vantage-details,
.vantage-next {
  padding: clamp(4.4rem, 6vw, 6.4rem) 5.05rem;
}

.vantage-intro {
  display: grid;
  grid-template-columns: 45% 23% 23%;
  gap: 4rem;
  align-items: start;
}

.vantage-intro h2,
.vantage-split h2,
.vantage-direction h2,
.vantage-visual h2,
.vantage-digital h2,
.vantage-mobile h2,
.vantage-details h2,
.vantage-result h2 {
  margin: 0;
  font-size: clamp(3.1rem, 4vw, 4.4rem);
  line-height: 0.94;
}

.vantage-intro p,
.vantage-direction p,
.vantage-digital p,
.vantage-mobile p,
.vantage-result p,
.vantage-split p {
  margin: 0;
  color: rgba(21,19,15,0.72);
  line-height: 1.5;
}

.vantage-split {
  min-height: 27rem;
  display: grid;
  grid-template-columns: 38% 1fr;
  gap: 6rem;
  align-items: center;
  padding: 4.8rem 5.05rem;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.84), rgba(0,0,0,0.52)),
    url("https://images.unsplash.com/photo-1518987048-93e29699e79a?auto=format&fit=crop&w=2200&q=85") center / cover;
}

.vantage-split p,
.vantage-mobile p,
.vantage-result p {
  color: rgba(241,238,231,0.76);
}

.vantage-points {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-left: 1px solid rgba(241,238,231,0.18);
}

.vantage-points article {
  min-height: 13rem;
  padding: 0 2rem;
  border-right: 1px solid rgba(241,238,231,0.18);
}

.vantage-points span,
.vantage-detail-grid span {
  display: block;
  margin-bottom: 2.7rem;
  color: rgba(241,238,231,0.62);
  font-size: 0.72rem;
}

.vantage-direction {
  display: grid;
  grid-template-columns: 32% 1fr;
  gap: 5rem;
  align-items: end;
}

.vantage-direction-copy p,
.vantage-digital-copy p {
  max-width: 27rem;
  margin-top: 1.35rem;
}

.vantage-system {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(13,12,10,0.13);
  border-bottom: 1px solid rgba(13,12,10,0.13);
}

.vantage-system article {
  min-height: 12rem;
  padding: 1.6rem 1.8rem;
  border-left: 1px solid rgba(13,12,10,0.13);
}

.vantage-system span {
  display: block;
  margin-bottom: 4.2rem;
  color: var(--muted);
  font-size: 0.66rem;
  letter-spacing: 0.34em;
  text-transform: uppercase;
}

.vantage-system strong {
  font-family: var(--serif);
  font-size: 1.65rem;
  font-weight: 400;
  line-height: 1;
}

.vantage-visual {
  min-height: 37rem;
  display: grid;
  grid-template-columns: 34% 1fr 12rem;
  align-items: end;
  padding: 4.8rem 5.05rem;
}

.vantage-visual::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.78) 0%, rgba(0,0,0,0.16) 52%, rgba(0,0,0,0.74) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.1), rgba(0,0,0,0.52)),
    url("https://images.unsplash.com/photo-1503376780353-7e6692767b70?auto=format&fit=crop&w=2400&q=88") center 58% / cover no-repeat;
  filter: saturate(0.68) contrast(1.14) brightness(0.72);
}

.vantage-visual aside {
  grid-column: 3;
  display: grid;
  gap: 0.32rem;
  color: rgba(241,238,231,0.7);
  font-size: 0.64rem;
  letter-spacing: 0.42em;
  line-height: 1.78;
  text-transform: uppercase;
}

.vantage-digital {
  display: grid;
  grid-template-columns: 32% 1fr;
  gap: 5rem;
  align-items: center;
}

.vantage-screen {
  min-height: 28rem;
  display: grid;
  grid-template-rows: auto 1fr auto;
  padding: 1.35rem;
  color: var(--paper);
  border: 1px solid rgba(13,12,10,0.18);
  background:
    linear-gradient(90deg, rgba(4,4,4,0.92), rgba(4,4,4,0.46)),
    url("https://images.unsplash.com/photo-1492144534655-ae79c964c9d7?auto=format&fit=crop&w=1800&q=86") center / cover;
  box-shadow: 0 1.6rem 4rem rgba(0,0,0,0.18);
}

.screen-nav,
.screen-stats {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  color: rgba(241,238,231,0.72);
  font-size: 0.64rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.screen-hero {
  align-self: center;
}

.screen-hero span {
  color: rgba(241,238,231,0.72);
  font-size: 0.68rem;
  letter-spacing: 0.42em;
}

.screen-hero h3 {
  margin: 0.8rem 0 0.7rem;
  font-size: clamp(3.2rem, 5vw, 5.6rem);
  line-height: 0.88;
}

.screen-hero p,
.screen-stats {
  color: rgba(241,238,231,0.76);
}

.screen-stats b {
  display: block;
  color: var(--paper);
  font-family: var(--serif);
  font-size: 2.2rem;
  font-weight: 400;
  letter-spacing: 0;
}

.vantage-mobile {
  min-height: 31rem;
  display: grid;
  grid-template-columns: 36% 1fr;
  gap: 7rem;
  align-items: center;
  padding: 4.8rem 5.05rem;
}

.vantage-mobile::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.88), rgba(0,0,0,0.56)),
    url("https://images.unsplash.com/photo-1606220945770-b5b6c2c55bf1?auto=format&fit=crop&w=2200&q=84") center / cover;
  filter: saturate(0.5) contrast(1.08) brightness(0.54);
}

.phone-mockup {
  justify-self: center;
  width: min(22rem, 100%);
  min-height: 30rem;
  display: grid;
  align-content: space-between;
  padding: 1.35rem;
  border: 1px solid rgba(241,238,231,0.26);
  border-radius: 1.8rem;
  background:
    linear-gradient(180deg, rgba(5,5,5,0.1), rgba(5,5,5,0.82)),
    url("https://images.unsplash.com/photo-1542362567-b07e54358753?auto=format&fit=crop&w=1000&q=86") center / cover;
  box-shadow: 0 2rem 5rem rgba(0,0,0,0.34);
}

.phone-mockup span,
.phone-mockup p {
  color: rgba(241,238,231,0.72);
  font-size: 0.66rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
}

.phone-mockup h3 {
  margin: 7rem 0 0;
  font-size: 4rem;
  line-height: 0.9;
}

.phone-mockup button {
  min-height: 2.8rem;
  color: var(--ink);
  border: 0;
  background: var(--champagne);
  font: inherit;
}

.vantage-details {
  display: grid;
  grid-template-columns: 32% 1fr;
  gap: 5rem;
  align-items: start;
}

.vantage-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-left: 1px solid rgba(13,12,10,0.12);
}

.vantage-detail-grid article {
  min-height: 14rem;
  padding: 0.35rem 1.45rem 0;
  border-right: 1px solid rgba(13,12,10,0.12);
}

.vantage-detail-grid span {
  color: var(--muted);
}

.vantage-detail-grid h3 {
  margin: 0 0 0.8rem;
  font-size: 1.35rem;
}

.vantage-detail-grid p {
  margin: 0;
  color: rgba(21,19,15,0.68);
  line-height: 1.42;
}

.vantage-result {
  min-height: 25rem;
  display: grid;
  grid-template-columns: 43% 1fr;
  gap: 6rem;
  align-items: center;
  padding: 4.8rem 5.05rem;
}

.vantage-result::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.88), rgba(0,0,0,0.48)),
    url("https://images.unsplash.com/photo-1519752594763-2633d8d4ea29?auto=format&fit=crop&w=2200&q=84") center / cover;
  filter: saturate(0.42) contrast(1.08) brightness(0.58);
}

.vantage-result aside {
  display: grid;
  gap: 1.2rem;
  border-left: 1px solid rgba(241,238,231,0.18);
}

.vantage-result aside span {
  padding: 0.3rem 0 0.3rem 1.6rem;
  color: rgba(241,238,231,0.78);
  font-size: 0.72rem;
  letter-spacing: 0.32em;
  text-transform: uppercase;
}

.vantage-next {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  border-bottom: 1px solid rgba(13,12,10,0.12);
}

.vantage-next h2 {
  margin: 0;
  font-size: clamp(3rem, 5vw, 5rem);
}

.vantage-next nav {
  display: flex;
  gap: 2rem;
}

@media (max-width: 1100px) {
  .vantage-hero,
  .vantage-intro,
  .vantage-split,
  .vantage-direction,
  .vantage-visual,
  .vantage-digital,
  .vantage-mobile,
  .vantage-details,
  .vantage-result,
  .vantage-next {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .vantage-hero {
    min-height: 44rem;
    grid-template-columns: 1fr;
    padding-top: 7rem;
  }

  .vantage-hero h1 {
    font-size: clamp(4rem, 11vw, 6.4rem);
  }

  .vantage-hero-note {
    display: none;
  }

  .vantage-meta {
    left: 1.5rem;
    right: 1.5rem;
  }
}

@media (max-width: 900px) {
  .vantage-intro,
  .vantage-split,
  .vantage-direction,
  .vantage-digital,
  .vantage-mobile,
  .vantage-details,
  .vantage-result,
  .vantage-next {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .vantage-intro {
    padding-top: 3.4rem;
    padding-bottom: 3.4rem;
  }

  .vantage-meta,
  .vantage-points,
  .vantage-system,
  .vantage-detail-grid {
    grid-template-columns: 1fr;
  }

  .vantage-meta {
    position: static;
    margin-top: 3rem;
  }

  .vantage-meta span,
  .vantage-points article,
  .vantage-system article,
  .vantage-detail-grid article {
    border-right: 0;
    border-bottom: 1px solid rgba(241,238,231,0.16);
  }

  .vantage-system article,
  .vantage-detail-grid article {
    border-bottom-color: rgba(13,12,10,0.12);
  }

  .vantage-visual {
    min-height: 30rem;
    grid-template-columns: 1fr;
  }

  .vantage-visual aside {
    grid-column: auto;
  }

  .vantage-screen {
    min-height: 23rem;
  }

  .vantage-next nav {
    flex-direction: column;
    align-items: start;
    gap: 0.9rem;
  }
}

@media (max-width: 520px) {
  .vantage-hero,
  .vantage-intro,
  .vantage-split,
  .vantage-direction,
  .vantage-visual,
  .vantage-digital,
  .vantage-mobile,
  .vantage-details,
  .vantage-result,
  .vantage-next {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .vantage-hero {
    min-height: 40rem;
  }

  .vantage-hero h1,
  .vantage-intro h2,
  .vantage-split h2,
  .vantage-direction h2,
  .vantage-visual h2,
  .vantage-digital h2,
  .vantage-mobile h2,
  .vantage-details h2,
  .vantage-result h2 {
    font-size: clamp(2.85rem, 13vw, 4rem);
  }

  .screen-nav,
  .screen-stats {
    flex-direction: column;
  }
}

/* Final Vantage premium polish pass: scoped only to the case-study page. */
.vantage-page-template .site-header {
  z-index: 60;
  background:
    linear-gradient(180deg, rgba(4,4,3,0.9), rgba(4,4,3,0.64) 62%, rgba(4,4,3,0.08));
  border-bottom: 1px solid rgba(241,238,231,0.08);
  backdrop-filter: blur(10px);
}

.vantage-page-template main > section {
  scroll-margin-top: 5.6rem;
}

.vantage-page-template .site-header .site-nav a,
.vantage-page-template .site-header .header-actions {
  text-shadow: 0 0.5rem 1.5rem rgba(0,0,0,0.45);
}

.vantage-hero {
  min-height: 48.5rem;
  grid-template-columns: 44% 1fr 12rem;
  padding-top: 7.1rem;
}

.vantage-hero-media {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.62) 35%, rgba(0,0,0,0.17) 68%, rgba(0,0,0,0.72) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.12), rgba(0,0,0,0.55)),
    url("https://images.unsplash.com/photo-1619767886558-efdc259cde1a?auto=format&fit=crop&w=2600&q=90") 66% 53% / cover no-repeat;
  filter: saturate(0.62) contrast(1.14) brightness(0.72);
}

.vantage-hero h1 {
  max-width: 9.3ch;
  font-size: clamp(4.45rem, 6.75vw, 6.85rem);
  line-height: 0.84;
}

.vantage-hero .lede {
  max-width: 28.5rem;
  color: rgba(241,238,231,0.75);
  font-size: 0.98rem;
  line-height: 1.42;
}

.vantage-meta {
  bottom: 2.35rem;
}

.vantage-intro {
  grid-template-columns: 39% 24% 24%;
  gap: 3.4rem;
  padding-top: 4.15rem;
  padding-bottom: 4.35rem;
  align-items: center;
}

.vantage-intro h2 {
  font-size: clamp(2.85rem, 3.55vw, 3.95rem);
  line-height: 0.95;
}

.vantage-intro p {
  max-width: 20.5rem;
  align-self: center;
  font-size: 0.94rem;
  line-height: 1.48;
}

.vantage-split {
  min-height: 25.5rem;
  grid-template-columns: 37% 1fr;
  gap: 5.2rem;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.74) 38%, rgba(0,0,0,0.5) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.36)),
    url("https://images.unsplash.com/photo-1518987048-93e29699e79a?auto=format&fit=crop&w=2400&q=88") center / cover;
}

.vantage-split h2 {
  font-size: clamp(2.9rem, 3.8vw, 4.05rem);
}

.vantage-points {
  align-items: stretch;
}

.vantage-points article {
  min-height: 12.2rem;
  display: grid;
  align-content: start;
  padding: 0.2rem 1.85rem 0;
}

.vantage-points span {
  margin-bottom: 3.05rem;
  color: rgba(241,238,231,0.7);
  letter-spacing: 0.2em;
}

.vantage-points p {
  max-width: 14rem;
  font-size: 0.86rem;
  line-height: 1.42;
}

.vantage-visual {
  min-height: 38rem;
  grid-template-columns: 29% 1fr 12.5rem;
  padding-top: 4.55rem;
  padding-bottom: 4.55rem;
}

.vantage-visual::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0.1) 48%, rgba(0,0,0,0.7) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.52)),
    url("https://images.unsplash.com/photo-1503376780353-7e6692767b70?auto=format&fit=crop&w=2600&q=90") center 60% / cover no-repeat;
  filter: saturate(0.7) contrast(1.18) brightness(0.74);
}

.vantage-visual h2 {
  font-size: clamp(2.75rem, 3.45vw, 3.85rem);
}

.vantage-visual aside {
  align-self: center;
  padding-top: 1.2rem;
}

.vantage-digital {
  grid-template-columns: 29% 1fr;
  gap: 4.4rem;
  padding-top: 5.2rem;
  padding-bottom: 5.2rem;
}

.vantage-digital h2 {
  font-size: clamp(2.85rem, 3.75vw, 4.1rem);
}

.vantage-screen {
  min-height: 31rem;
  padding: 1.55rem;
  border-color: rgba(13,12,10,0.2);
  background:
    linear-gradient(90deg, rgba(3,3,3,0.94), rgba(3,3,3,0.5) 48%, rgba(3,3,3,0.18)),
    url("https://images.unsplash.com/photo-1492144534655-ae79c964c9d7?auto=format&fit=crop&w=2200&q=90") center 48% / cover;
  box-shadow: 0 2rem 4.6rem rgba(0,0,0,0.24);
}

.screen-nav,
.screen-stats {
  font-size: 0.68rem;
}

.screen-hero h3 {
  font-size: clamp(3.7rem, 5.4vw, 6.15rem);
}

.vantage-mobile {
  min-height: 33.5rem;
  grid-template-columns: 35% 1fr;
  gap: 6rem;
}

.vantage-mobile::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.9), rgba(0,0,0,0.5) 55%, rgba(0,0,0,0.7)),
    url("https://images.unsplash.com/photo-1542362567-b07e54358753?auto=format&fit=crop&w=2400&q=90") center 58% / cover;
  filter: saturate(0.54) contrast(1.15) brightness(0.56);
}

.phone-mockup {
  width: min(23rem, 100%);
  min-height: 31.5rem;
  padding: 1.45rem;
  border-radius: 1.55rem;
  border-color: rgba(241,238,231,0.32);
  background:
    linear-gradient(180deg, rgba(4,4,4,0.06), rgba(4,4,4,0.86)),
    linear-gradient(90deg, rgba(4,4,4,0.25), transparent),
    url("https://images.unsplash.com/photo-1494905998402-395d579af36f?auto=format&fit=crop&w=1200&q=90") center / cover;
  box-shadow: 0 2.3rem 5.4rem rgba(0,0,0,0.42);
}

.phone-mockup h3 {
  margin-top: 8rem;
  font-size: 4.35rem;
}

.phone-mockup button {
  min-height: 3rem;
  letter-spacing: 0.04em;
}

.vantage-details {
  grid-template-columns: 30% 1fr;
  gap: 4.3rem;
  padding-top: 4.75rem;
  padding-bottom: 4.85rem;
}

.vantage-details h2 {
  font-size: clamp(2.85rem, 3.65vw, 4.05rem);
}

.vantage-detail-grid article {
  min-height: 12.8rem;
  padding: 0.25rem 1.35rem 0;
}

.vantage-detail-grid span {
  margin-bottom: 2.4rem;
  letter-spacing: 0.18em;
}

.vantage-detail-grid h3 {
  margin-bottom: 0.7rem;
  font-size: 1.26rem;
  line-height: 1.05;
}

.vantage-detail-grid p {
  max-width: 12.5rem;
  font-size: 0.83rem;
}

.vantage-result {
  min-height: 25.8rem;
  grid-template-columns: 40% 1fr;
}

.vantage-result::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.88), rgba(0,0,0,0.42) 56%, rgba(0,0,0,0.68)),
    url("https://images.unsplash.com/photo-1541348263662-e068662d82af?auto=format&fit=crop&w=2400&q=90") center 50% / cover;
  filter: saturate(0.58) contrast(1.16) brightness(0.58);
}

.vantage-next {
  grid-template-columns: 35% 1fr;
  gap: 4.2rem;
  align-items: stretch;
  min-height: 24rem;
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}

.vantage-next-copy {
  align-self: center;
  padding: 4.3rem 0;
}

.vantage-next-copy nav {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 0.95rem;
  margin-top: 2.2rem;
}

.vantage-next-image {
  min-height: 24rem;
  background:
    linear-gradient(90deg, rgba(246,243,236,0.05), rgba(0,0,0,0.12)),
    url("https://images.unsplash.com/photo-1615874694520-474822394e73?auto=format&fit=crop&w=2000&q=88") center / cover;
  filter: saturate(0.65) contrast(1.04) brightness(0.88);
}

.vantage-page-template .contact {
  height: auto;
  min-height: 18.4rem;
  align-items: center;
}

.vantage-page-template .contact input,
.vantage-page-template .contact select,
.vantage-page-template .contact textarea {
  border-color: rgba(241,238,231,0.28);
  background: rgba(8,8,7,0.38);
  color: rgba(241,238,231,0.95);
}

.vantage-page-template .contact input::placeholder,
.vantage-page-template .contact textarea::placeholder {
  color: rgba(241,238,231,0.58);
}

.vantage-page-template .contact form .button {
  align-self: start;
}

.vantage-page-template .contact blockquote {
  margin-top: 0.65rem;
}

@media (max-width: 1100px) {
  .vantage-page-template .site-header {
    background: linear-gradient(180deg, rgba(4,4,3,0.94), rgba(4,4,3,0.7) 72%, rgba(4,4,3,0.12));
  }

  .vantage-hero {
    min-height: 43rem;
    padding-top: 7.4rem;
  }

  .vantage-hero h1 {
    font-size: clamp(3.75rem, 10vw, 5.7rem);
  }

  .vantage-intro,
  .vantage-digital,
  .vantage-details {
    gap: 2.8rem;
  }

  .vantage-next {
    padding-right: 1.5rem;
  }
}

@media (max-width: 900px) {
  .vantage-intro {
    align-items: start;
  }

  .vantage-points article {
    min-height: 0;
    padding: 1.35rem 0;
  }

  .vantage-points span,
  .vantage-detail-grid span {
    margin-bottom: 1.2rem;
  }

  .vantage-next {
    padding-top: 3rem;
    padding-bottom: 3rem;
    padding-right: 1.5rem;
  }

  .vantage-next-copy {
    padding: 0;
  }

  .vantage-next-image {
    min-height: 18rem;
  }
}

@media (max-width: 520px) {
  .vantage-page-template main > section {
    scroll-margin-top: 5rem;
  }

  .vantage-hero h1 {
    font-size: clamp(2.85rem, 12vw, 3.75rem);
  }

  .vantage-hero .lede,
  .vantage-intro p,
  .vantage-split p,
  .vantage-digital p,
  .vantage-mobile p,
  .vantage-result p {
    font-size: 0.92rem;
  }

  .vantage-screen {
    min-height: 25rem;
    padding: 1rem;
  }

  .phone-mockup {
    min-height: 28rem;
  }

  .phone-mockup h3 {
    font-size: 3.5rem;
  }

  .vantage-next {
    padding-right: 1rem;
  }
}

/* CoreOne case study page: premium dark editorial fitness/product system. */
.coreone-page-template {
  --core-black: #050504;
  --core-charcoal: #11100e;
  --core-line: rgba(238,226,204,0.22);
  --core-gold: #ead6b4;
  background: var(--core-black);
  color: var(--paper);
}

.coreone-page-template .site-header {
  z-index: 60;
  background: linear-gradient(180deg, rgba(3,3,3,0.9), rgba(3,3,3,0.58) 68%, transparent);
  border-bottom: 1px solid rgba(241,238,231,0.08);
  backdrop-filter: blur(10px);
}

.coreone-page-template main > section {
  scroll-margin-top: 5.6rem;
}

.core-hero,
.core-result,
.core-challenge-solution,
.core-lifestyle,
.core-identity,
.core-mobile-presentation,
.core-next-steps,
.core-next-project {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--paper);
  background: #050504;
}

.core-hero {
  min-height: 46rem;
  display: grid;
  grid-template-columns: 45% 1fr;
  align-items: center;
  padding: 7.1rem 5.05rem 5.2rem;
  border-bottom: 1px solid var(--core-line);
}

.core-hero-media,
.core-hero::after,
.core-challenge::before,
.core-lifestyle-media,
.core-next-steps::before,
.core-next-project::before {
  position: absolute;
  inset: 0;
  z-index: -2;
  content: "";
}

.core-hero-media {
  left: 36%;
  background:
    linear-gradient(90deg, rgba(5,5,4,0.55), rgba(5,5,4,0.12) 46%, rgba(5,5,4,0.72) 100%),
    linear-gradient(180deg, rgba(5,5,4,0.08), rgba(5,5,4,0.45)),
    url("https://images.unsplash.com/photo-1517836357463-d25dfeac3438?auto=format&fit=crop&w=2200&q=90") center 34% / cover no-repeat;
  filter: saturate(0.45) contrast(1.18) brightness(0.62);
}

.core-hero::after {
  z-index: -1;
  background: linear-gradient(90deg, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.66) 38%, rgba(0,0,0,0.16) 74%, rgba(0,0,0,0.62));
}

.core-hero-content {
  max-width: 33rem;
}

.core-hero h1 {
  margin: 1.25rem 0 1rem;
  font-size: clamp(5.4rem, 8vw, 8.6rem);
  line-height: 0.86;
}

.core-descriptor {
  margin: 0 0 1.25rem;
  color: rgba(241,238,231,0.76);
  font-size: 0.72rem;
  letter-spacing: 0.52em;
  line-height: 1.9;
  text-transform: uppercase;
}

.core-hero .lede {
  max-width: 29rem;
  margin-bottom: 1.6rem;
  color: rgba(241,238,231,0.82);
  font-size: 1.02rem;
  line-height: 1.5;
}

.core-signature {
  position: absolute;
  right: 16.5rem;
  bottom: 8.6rem;
  color: rgba(234,214,180,0.86);
  font-family: var(--serif);
  font-size: 2.1rem;
  font-style: italic;
  line-height: 0.92;
  transform: rotate(-10deg);
}

.core-meta {
  position: absolute;
  left: 5.05rem;
  right: 5.05rem;
  bottom: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--core-line);
  background: rgba(5,5,4,0.42);
}

.core-meta span {
  min-height: 4.8rem;
  padding: 1.1rem 1.2rem;
  border-right: 1px solid var(--core-line);
  color: rgba(241,238,231,0.82);
  font-size: 0.72rem;
  line-height: 1.35;
}

.core-meta b {
  display: block;
  margin-bottom: 0.44rem;
  color: rgba(234,214,180,0.9);
  font-size: 0.56rem;
  font-weight: 400;
  letter-spacing: 0.36em;
  text-transform: uppercase;
}

.core-result {
  min-height: 37rem;
  display: grid;
  grid-template-columns: 56% 1fr;
  border-bottom: 1px solid var(--core-line);
}

.core-phone-hand {
  display: grid;
  place-items: center;
  min-height: 37rem;
  background:
    radial-gradient(circle at 52% 48%, rgba(234,214,180,0.12), transparent 18rem),
    linear-gradient(90deg, rgba(255,255,255,0.02), rgba(0,0,0,0.5)),
    url("https://images.unsplash.com/photo-1534258936925-c58bed479fcb?auto=format&fit=crop&w=1800&q=88") center / cover;
  filter: saturate(0.55) contrast(1.12) brightness(0.7);
}

.core-result-copy {
  display: grid;
  align-content: center;
  padding: 5rem 5.05rem 5rem 3.9rem;
  border-left: 1px solid var(--core-line);
}

.core-result-copy h2,
.core-challenge h2,
.core-solution h2,
.core-section-copy h2,
.core-identity h2,
.core-mobile-copy h2,
.core-next-steps h2,
.core-next-project h2 {
  margin: 0 0 1.35rem;
  font-size: clamp(3.3rem, 4.6vw, 5rem);
  line-height: 0.94;
}

.core-result-copy p,
.core-challenge p,
.core-solution p,
.core-section-copy p,
.core-identity p,
.core-mobile-copy p,
.core-next-steps p {
  max-width: 27rem;
  margin: 0;
  color: rgba(241,238,231,0.78);
  line-height: 1.5;
}

.core-qualities {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem 1.8rem;
  margin-top: 2.3rem;
}

.core-qualities span {
  padding-top: 0.8rem;
  border-top: 1px solid rgba(234,214,180,0.28);
  color: rgba(234,214,180,0.9);
  font-size: 0.66rem;
  letter-spacing: 0.32em;
  text-transform: uppercase;
}

.core-phone {
  position: relative;
  overflow: hidden;
  color: var(--paper);
  border: 1px solid rgba(234,214,180,0.36);
  border-radius: 2rem;
  background:
    radial-gradient(circle at 70% 10%, rgba(234,214,180,0.12), transparent 9rem),
    linear-gradient(180deg, #11100f, #050505 72%);
  box-shadow: 0 2rem 4rem rgba(0,0,0,0.4);
}


.core-phone-shot {
  position: relative;
  overflow: hidden;
  flex: 0 0 auto;
  width: 10.8rem;
  aspect-ratio: 590 / 1280;
  border: 1px solid rgba(234,214,180,0.36);
  border-radius: 1.35rem;
  background: #050504;
  box-shadow: 0 1.2rem 2.5rem rgba(0,0,0,0.45);
}

.core-phone-shot-main {
  width: min(21rem, 72vw);
  border-radius: 2rem;
  transform: rotate(-6deg);
  box-shadow: 0 2rem 4rem rgba(0,0,0,0.46);
}

.core-phone-shot img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.core-phone-row .core-phone-shot:nth-child(2) {
  transform: translateY(1.3rem);
}

.core-phone-row .core-phone-shot:nth-child(3) {
  transform: translateY(0.2rem);
}
.core-phone.large {
  width: 21rem;
  min-height: 34rem;
  padding: 1.3rem;
  transform: rotate(-6deg);
}

.core-phone-top {
  display: flex;
  justify-content: space-between;
  color: var(--core-gold);
  font-size: 0.78rem;
}

.core-phone p,
.core-phone small,
.core-phone span {
  color: rgba(241,238,231,0.72);
}

.core-phone h3 {
  margin: 0.2rem 0 1.1rem;
  font-size: 1.6rem;
  line-height: 1;
}

.core-plan,
.core-list span,
.core-feed,
.core-macros span {
  display: grid;
  gap: 0.25rem;
  padding: 0.9rem;
  border: 1px solid rgba(241,238,231,0.1);
  background: rgba(255,255,255,0.045);
}

.core-plan strong {
  color: var(--paper);
  font-weight: 400;
}

.core-rings,
.core-macros {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.65rem;
  margin: 1.1rem 0;
}

.core-rings span {
  display: grid;
  place-items: center;
  aspect-ratio: 1;
  border: 2px solid rgba(234,214,180,0.78);
  border-radius: 999px;
  font-size: 0.52rem;
  text-align: center;
}

.core-rings b,
.core-donut b {
  display: block;
  color: var(--paper);
  font-family: var(--serif);
  font-size: 1.2rem;
  font-weight: 400;
}

.core-phone button {
  width: 100%;
  min-height: 2.8rem;
  margin-top: 0.6rem;
  color: #17120b;
  border: 0;
  background: var(--champagne);
  font: inherit;
}

.core-phone nav {
  position: absolute;
  left: 1.4rem;
  right: 1.4rem;
  bottom: 1rem;
  display: flex;
  justify-content: space-between;
  color: rgba(241,238,231,0.6);
}

.core-challenge-solution {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-bottom: 1px solid var(--core-line);
}

.core-challenge,
.core-solution {
  position: relative;
  min-height: 34rem;
  padding: 4.6rem 5.05rem;
  overflow: hidden;
}

.core-challenge {
  display: grid;
  grid-template-columns: 45% 1fr;
  align-items: center;
  border-right: 1px solid var(--core-line);
}

.core-challenge::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.9), rgba(0,0,0,0.38)),
    url("https://images.unsplash.com/photo-1583454110551-21f2fa2afe61?auto=format&fit=crop&w=1600&q=88") center / cover;
  filter: saturate(0.45) contrast(1.16) brightness(0.56);
}

.core-challenge aside {
  justify-self: end;
  color: rgba(234,214,180,0.8);
  font-size: 0.72rem;
  letter-spacing: 0.52em;
  line-height: 1.9;
  text-transform: uppercase;
}

.core-solution {
  display: grid;
  grid-template-columns: 34% 1fr;
  gap: 2.3rem;
  align-items: center;
}

.core-phone-row {
  display: flex;
  align-items: end;
  justify-content: end;
  gap: 0.85rem;
}

.core-phone.small {
  width: 10.8rem;
  min-height: 23rem;
  padding: 0.82rem;
  border-radius: 1.35rem;
}

.core-list {
  display: grid;
  gap: 0.55rem;
  margin-top: 1.3rem;
}

.core-donut {
  display: grid;
  place-items: center;
  width: 7rem;
  aspect-ratio: 1;
  margin: 2.1rem auto 1rem;
  border: 0.45rem solid rgba(234,214,180,0.82);
  border-radius: 999px;
}

.core-feed img {
  width: 100%;
  height: 8.5rem;
  object-fit: cover;
  filter: saturate(0.58) brightness(0.78);
}

.core-experiences {
  display: grid;
  grid-template-columns: 30% 1fr;
  gap: 4rem;
  padding: 4.8rem 5.05rem;
}

.core-experiences h2,
.core-experience-grid h3 {
  color: var(--ink);
}

.core-section-copy p {
  color: rgba(21,19,15,0.72);
}

.core-experience-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-left: 1px solid rgba(13,12,10,0.12);
}

.core-experience-grid article {
  min-height: 13rem;
  padding: 0.3rem 1.4rem 0;
  border-right: 1px solid rgba(13,12,10,0.12);
}

.core-experience-grid span {
  display: block;
  margin-bottom: 2.6rem;
  color: var(--muted);
}

.core-experience-grid p {
  color: rgba(21,19,15,0.68);
  line-height: 1.44;
}

.core-lifestyle {
  min-height: 28rem;
  display: grid;
  grid-template-columns: 1fr 34%;
  align-items: center;
  border-top: 1px solid var(--core-line);
  border-bottom: 1px solid var(--core-line);
}

.core-lifestyle-media {
  right: 34%;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.22), rgba(0,0,0,0.7)),
    url("https://images.unsplash.com/photo-1518611012118-696072aa579a?auto=format&fit=crop&w=2200&q=88") center 35% / cover;
  filter: saturate(0.55) contrast(1.08) brightness(0.72);
}

.core-lifestyle blockquote {
  grid-column: 2;
  margin: 0 5.05rem 0 0;
  color: rgba(241,238,231,0.9);
  font-size: clamp(2.4rem, 3.4vw, 4rem);
  line-height: 0.98;
}

.core-identity {
  display: grid;
  grid-template-columns: 35% 1fr;
  gap: 4rem;
  padding: 4.6rem 5.05rem;
  border-bottom: 1px solid var(--core-line);
}

.core-brand-board {
  display: grid;
  grid-template-columns: 1fr 1fr 1.1fr;
  grid-template-rows: 1fr 1fr;
  border: 1px solid var(--core-line);
}

.core-brand-board article {
  min-height: 10.5rem;
  padding: 1.25rem;
  border-right: 1px solid var(--core-line);
  border-bottom: 1px solid var(--core-line);
}

.brand-word strong {
  color: var(--core-gold);
  font-size: 1.8rem;
  font-weight: 400;
}

.brand-word div {
  display: flex;
  gap: 0.7rem;
  margin-top: 2.3rem;
}

.brand-word span {
  width: 2rem;
  aspect-ratio: 1;
  border-radius: 999px;
  background: #171716;
}

.brand-word span:nth-child(2) { background: #24221f; }
.brand-word span:nth-child(3) { background: #d6c29f; }
.brand-word span:nth-child(4) { background: #f1eadc; }

.brand-type strong {
  font-family: var(--serif);
  font-size: 4.3rem;
  font-weight: 400;
}

.brand-image {
  background: url("https://images.unsplash.com/photo-1534438327276-14e5300c3a48?auto=format&fit=crop&w=900&q=86") center / cover;
  filter: saturate(0.42) brightness(0.7);
}

.brand-values {
  color: rgba(234,214,180,0.9);
  font-size: 0.7rem;
  letter-spacing: 0.5em;
  line-height: 1.8;
  text-transform: uppercase;
}

.brand-icon {
  display: grid;
  place-items: center;
  color: var(--core-gold);
  font-family: var(--serif);
  font-size: 4rem;
}

.brand-icon span {
  display: block;
  font-family: var(--sans);
  font-size: 0.7rem;
  letter-spacing: 0.08em;
}

.core-mobile-presentation {
  min-height: 34rem;
  display: grid;
  grid-template-columns: 34% 1fr;
  gap: 4rem;
  align-items: center;
  padding: 4.8rem 5.05rem;
  border-bottom: 1px solid var(--core-line);
}

.core-device-stack {
  position: relative;
  min-height: 31rem;
}

.core-phone.tall {
  position: absolute;
  left: 18%;
  top: 0;
  width: 15rem;
  min-height: 28rem;
  padding: 1rem;
  transform: rotate(-8deg);
  background:
    linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.72)),
    url("https://images.unsplash.com/photo-1534438327276-14e5300c3a48?auto=format&fit=crop&w=900&q=88") center / cover;
}

.core-phone.tall h3 {
  margin-top: 6.2rem;
  font-size: 2.7rem;
}

.core-phone.secondary {
  left: 42%;
  top: 3.2rem;
  transform: rotate(7deg);
}

.core-phone.tertiary {
  left: 61%;
  top: 1.4rem;
  transform: rotate(2deg);
}

.meal-card {
  min-height: 9rem;
  margin: 5rem 0 1.2rem;
  background: url("https://images.unsplash.com/photo-1546069901-ba9599a7e63c?auto=format&fit=crop&w=700&q=85") center / cover;
}


.core-device-shot {
  position: absolute;
  top: 0.2rem;
  width: 12.2rem;
  border-radius: 1.45rem;
}

.core-device-shot-home {
  left: 2%;
  transform: rotate(-8deg);
  z-index: 1;
}

.core-device-shot-workout {
  left: 26%;
  top: 2.8rem;
  transform: rotate(5deg);
  z-index: 2;
}

.core-device-shot-nutrition {
  left: 49%;
  top: 0.9rem;
  transform: rotate(-2deg);
  z-index: 3;
}

.core-device-shot-community {
  left: 71%;
  top: 2rem;
  transform: rotate(6deg);
  z-index: 2;
}
.core-next-steps {
  min-height: 25rem;
  display: grid;
  align-items: center;
  padding: 4.5rem 5.05rem;
  border-bottom: 1px solid var(--core-line);
}

.core-next-steps::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.92), rgba(0,0,0,0.58) 52%, rgba(0,0,0,0.42)),
    url("https://images.unsplash.com/photo-1526506118085-60ce8714f8c5?auto=format&fit=crop&w=2200&q=88") 68% 42% / cover;
  filter: saturate(0.52) contrast(1.12) brightness(0.58);
}

.core-next-steps .button {
  margin-top: 1.5rem;
}

.core-next-project {
  min-height: 23rem;
  display: grid;
  align-items: center;
  padding: 4.2rem 5.05rem;
  border-bottom: 1px solid var(--core-line);
}

.core-next-project::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.88), rgba(0,0,0,0.4) 48%, rgba(0,0,0,0.15)),
    url("https://images.unsplash.com/photo-1503376780353-7e6692767b70?auto=format&fit=crop&w=2200&q=88") 76% 58% / cover;
  filter: saturate(0.62) contrast(1.12) brightness(0.68);
}

.core-next-project nav {
  display: flex;
  gap: 2rem;
}

.coreone-page-template .contact {
  height: auto;
  min-height: 18.4rem;
}

.coreone-page-template .contact input,
.coreone-page-template .contact select,
.coreone-page-template .contact textarea {
  border-color: rgba(241,238,231,0.28);
  background: rgba(8,8,7,0.38);
}

@media (max-width: 1100px) {
  .core-hero,
  .core-result-copy,
  .core-challenge,
  .core-solution,
  .core-experiences,
  .core-identity,
  .core-mobile-presentation,
  .core-next-steps,
  .core-next-project {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .core-meta {
    left: 1.5rem;
    right: 1.5rem;
  }

  .core-hero h1 {
    font-size: clamp(4.5rem, 11vw, 7rem);
  }
}

@media (max-width: 900px) {
  .core-hero,
  .core-result,
  .core-challenge-solution,
  .core-challenge,
  .core-solution,
  .core-experiences,
  .core-identity,
  .core-mobile-presentation {
    grid-template-columns: 1fr;
  }

  .core-hero {
    min-height: 42rem;
    padding-top: 7.4rem;
  }

  .core-hero-media {
    left: 0;
    opacity: 0.58;
  }

  .core-signature {
    display: none;
  }

  .core-meta,
  .core-experience-grid,
  .core-brand-board {
    position: static;
    grid-template-columns: 1fr;
    margin-top: 2rem;
  }

  .core-result,
  .core-challenge,
  .core-solution,
  .core-lifestyle,
  .core-mobile-presentation {
    min-height: 0;
  }

  .core-phone-row {
    justify-content: start;
    overflow-x: auto;
    padding-bottom: 0.6rem;
  }

  .core-experience-grid article,
  .core-brand-board article {
    min-height: 0;
    padding: 1.25rem 0;
    border-right: 0;
  }

  .core-lifestyle {
    grid-template-columns: 1fr;
    min-height: 24rem;
    padding: 3rem 1.5rem;
  }

  .core-lifestyle-media {
    right: 0;
  }

  .core-lifestyle blockquote {
    grid-column: auto;
    margin: 0;
  }

  .core-device-stack {
    min-height: 34rem;
    overflow: hidden;
  }

  .core-phone.tall { left: 0; }
  .core-phone.secondary { left: 32%; }
  .core-phone.tertiary { left: 58%; }

  .core-next-project nav {
    flex-direction: column;
    align-items: start;
    gap: 0.9rem;
  }
}

@media (max-width: 520px) {
  .core-hero,
  .core-result-copy,
  .core-challenge,
  .core-solution,
  .core-experiences,
  .core-identity,
  .core-mobile-presentation,
  .core-next-steps,
  .core-next-project {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .core-hero h1,
  .core-result-copy h2,
  .core-challenge h2,
  .core-solution h2,
  .core-section-copy h2,
  .core-identity h2,
  .core-mobile-copy h2,
  .core-next-steps h2,
  .core-next-project h2 {
    font-size: clamp(2.85rem, 13vw, 4rem);
  }

  .core-descriptor {
    letter-spacing: 0.34em;
  }

  .core-phone.large {
    width: 18rem;
    min-height: 31rem;
  }

  .core-phone.tall {
    width: 13rem;
  }
}

/* CoreOne QA correction: keep product UI sharp while background stays cinematic. */
.core-phone-hand {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #050504;
  filter: none !important;
}

.core-phone-hand::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background:
    radial-gradient(circle at 52% 48%, rgba(234,214,180,0.12), transparent 18rem),
    linear-gradient(90deg, rgba(255,255,255,0.02), rgba(0,0,0,0.5)),
    url("https://images.unsplash.com/photo-1534258936925-c58bed479fcb?auto=format&fit=crop&w=1800&q=90") center / cover;
  filter: saturate(0.55) contrast(1.12) brightness(0.7);
}

.core-phone-row .core-phone,
.core-device-stack .core-phone,
.core-phone.large {
  backface-visibility: hidden;
  transform-style: preserve-3d;
}



/* CoreOne polish: prevent cropped solution copy and keep app screenshots clean. */
.core-phone-shot,
.core-phone-shot-main,
.core-device-shot {
  box-shadow: none !important;
}

.core-solution {
  grid-template-columns: minmax(18rem, 36%) minmax(28rem, 1fr);
  gap: clamp(1.4rem, 2.2vw, 2.6rem);
  padding-right: clamp(2.2rem, 3.8vw, 4.2rem);
}

.core-solution-copy {
  position: relative;
  z-index: 2;
  min-width: 0;
}

.core-solution h2 {
  max-width: 8.5ch;
  font-size: clamp(3.15rem, 4vw, 4.55rem);
  line-height: 0.94;
}

.core-solution p {
  max-width: 23rem;
}

.core-phone-row {
  min-width: 0;
  justify-content: end;
}

.core-phone-row .core-phone-shot {
  width: clamp(8.9rem, 8.5vw, 10.8rem);
}

.core-lifestyle {
  grid-template-columns: minmax(0, 1fr) minmax(26rem, 34%);
  align-items: start;
}

.core-lifestyle blockquote {
  align-self: start;
  margin: clamp(1.4rem, 2.2vw, 2.4rem) 5.05rem 0 0;
  max-width: 12ch;
  font-size: clamp(2.15rem, 3vw, 3.45rem);
  line-height: 1.02;
}

@media (max-width: 1100px) {
  .core-solution {
    grid-template-columns: 1fr;
  }

  .core-solution h2 {
    max-width: 10ch;
  }

  .core-phone-row {
    justify-content: start;
  }

  .core-lifestyle {
    grid-template-columns: 1fr;
  }

  .core-lifestyle blockquote {
    margin: 2rem 1.5rem 0;
    max-width: 13ch;
  }
}

/* CoreOne final alignment correction. */
.core-solution {
  grid-template-columns: minmax(15.5rem, 30%) minmax(0, 1fr) !important;
  gap: clamp(2.2rem, 3vw, 3.4rem) !important;
  padding-left: clamp(3rem, 4.4vw, 5.05rem) !important;
  padding-right: clamp(1.2rem, 2vw, 2.4rem) !important;
  overflow: visible !important;
}

.core-solution h2 {
  max-width: 7.4ch !important;
  font-size: clamp(2.8rem, 3.45vw, 4.05rem) !important;
  line-height: 0.95 !important;
  overflow: visible !important;
}

.core-solution-copy {
  overflow: visible !important;
}

.core-solution-copy p {
  max-width: 19.5rem !important;
}

.core-phone-row {
  gap: clamp(0.55rem, 0.9vw, 0.9rem) !important;
  justify-content: end !important;
  overflow: visible !important;
}

.core-phone-row .core-phone-shot {
  width: clamp(7.6rem, 7.25vw, 9.45rem) !important;
}

.core-lifestyle {
  align-items: stretch !important;
}

.core-lifestyle blockquote {
  align-self: center !important;
  margin: 0 5.05rem 0 0 !important;
  max-width: 11.5ch !important;
  font-size: clamp(2rem, 2.75vw, 3.18rem) !important;
  line-height: 1.04 !important;
}

@media (max-width: 1100px) {
  .core-solution {
    grid-template-columns: 1fr !important;
    overflow: hidden !important;
  }

  .core-solution h2 {
    max-width: 10ch !important;
  }

  .core-phone-row {
    justify-content: start !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }

  .core-phone-row .core-phone-shot {
    width: 9.5rem !important;
  }

  .core-lifestyle blockquote {
    align-self: center !important;
    margin: 0 1.5rem !important;
  }
}

/* CoreOne quote centering correction. */
.core-lifestyle blockquote {
  justify-self: center !important;
  align-self: center !important;
  margin: 0 !important;
  text-align: left !important;
}

@media (max-width: 1100px) {
  .core-lifestyle blockquote {
    justify-self: center !important;
    margin: 0 !important;
  }
}

/* Maison Barbier case study. */
.maison-page-template {
  --maison-gold: #c9a96d;
  --maison-cream: #f4efe5;
  --maison-line: rgba(244, 239, 229, 0.2);
  background: #050403;
  color: var(--maison-cream);
}

.maison-page-template .site-header,
.maison-page-template .site-footer {
  background: rgba(3, 3, 2, 0.82);
  border-color: rgba(244, 239, 229, 0.13);
}

.maison-page-template main {
  background: #050403;
}

.maison-page-template .eyebrow,
.maison-page-template .maison-kicker,
.maison-page-template .case-meta b,
.maison-page-template .maison-mark small,
.maison-page-template .maison-experience-strip span,
.maison-page-template .maison-image-panel p {
  color: var(--maison-gold);
  letter-spacing: 0.48em;
  text-transform: uppercase;
}

.maison-hero {
  position: relative;
  min-height: 48rem;
  display: grid;
  grid-template-columns: minmax(18rem, 0.84fr) minmax(18rem, 1.16fr);
  align-items: center;
  padding: clamp(7rem, 9vw, 10.5rem) 5.05rem 7rem;
  overflow: hidden;
  border-bottom: 1px solid var(--maison-line);
}

.maison-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.94) 0%, rgba(0, 0, 0, 0.74) 32%, rgba(0, 0, 0, 0.24) 62%, rgba(0, 0, 0, 0.5) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.78), rgba(0, 0, 0, 0.1) 54%, rgba(0, 0, 0, 0.54)),
    url("/assets/maison-hero-rich.png") center right / cover no-repeat;
  transform: scale(1.01);
}

.maison-hero-content,
.maison-mark,
.maison-meta {
  position: relative;
  z-index: 1;
}

.maison-hero-content h1 {
  margin: 1.9rem 0 1.1rem;
  max-width: 10ch;
  font-size: clamp(5.1rem, 8.2vw, 9.5rem);
  line-height: 0.87;
}

.maison-hero-content > p:not(.eyebrow):not(.maison-kicker) {
  max-width: 28rem;
  margin-bottom: 1.8rem;
  color: rgba(244, 239, 229, 0.86);
}

.maison-kicker {
  margin: 0 0 1.4rem;
  font: 700 0.75rem/1.85 var(--font-sans);
}

.maison-mark {
  justify-self: center;
  align-self: center;
  display: grid;
  place-items: center;
  width: clamp(13rem, 18vw, 19.5rem);
  aspect-ratio: 0.72;
  border: 1px solid rgba(201, 169, 109, 0.32);
  background: linear-gradient(145deg, rgba(9, 8, 7, 0.82), rgba(32, 25, 17, 0.28));
  box-shadow: inset 0 0 0 1px rgba(244, 239, 229, 0.06);
}

.maison-mark span {
  color: var(--maison-gold);
  font-family: var(--font-serif);
  font-size: clamp(7rem, 9vw, 10rem);
  line-height: 1;
}

.maison-mark small {
  position: absolute;
  bottom: 2.1rem;
  text-align: center;
  font-size: 0.72rem;
  line-height: 1.75;
}

.maison-meta {
  position: absolute;
  left: 5.05rem;
  right: 5.05rem;
  bottom: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--maison-line);
  background: rgba(3, 3, 2, 0.42);
  backdrop-filter: blur(10px);
}

.maison-meta span {
  padding: 1.35rem 1.6rem;
  border-right: 1px solid var(--maison-line);
  color: var(--maison-cream);
  font-size: 0.78rem;
}

.maison-meta span:last-child { border-right: 0; }
.maison-meta b { display: block; margin-bottom: 0.45rem; font-size: 0.64rem; }

.maison-result,
.maison-solution,
.maison-booking,
.maison-identity,
.maison-digital,
.maison-mobile-result {
  display: grid;
  grid-template-columns: minmax(18rem, 0.82fr) minmax(20rem, 1.18fr);
  gap: clamp(2rem, 4vw, 4.5rem);
  padding: clamp(4rem, 6vw, 6.8rem) 5.05rem;
  border-bottom: 1px solid var(--maison-line);
}

.maison-result h2,
.maison-split h2,
.maison-solution h2,
.maison-booking h2,
.maison-identity h2,
.maison-digital h2,
.maison-mobile-result h2,
.maison-next-steps h2,
.maison-next-project h2 {
  margin: 0 0 1.4rem;
  font-size: clamp(3rem, 4.8vw, 6rem);
  line-height: 0.94;
}

.maison-result-copy p,
.maison-split p,
.maison-solution-copy p,
.maison-booking p,
.maison-identity p,
.maison-digital p,
.maison-mobile-result p,
.maison-next-steps p,
.maison-next-project p {
  max-width: 28rem;
  color: rgba(244, 239, 229, 0.78);
}

.maison-device-stage {
  position: relative;
  min-height: 27rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle at 55% 8%, rgba(201,169,109,0.13), transparent 36%), linear-gradient(135deg, rgba(255,255,255,0.05), rgba(255,255,255,0.01));
  border-left: 1px solid var(--maison-line);
}

.maison-browser,
.maison-wide-screen {
  width: min(47rem, 88%);
  min-height: 23rem;
  padding: 1.3rem;
  border: 1px solid rgba(244,239,229,0.25);
  background: linear-gradient(135deg, rgba(18, 15, 12, 0.96), rgba(5, 4, 3, 0.94));
  box-shadow: 0 2rem 5rem rgba(0,0,0,0.45);
}

.maison-browser-nav {
  display: flex;
  align-items: center;
  gap: 1rem;
  color: rgba(244,239,229,0.72);
  font: 600 0.68rem/1 var(--font-sans);
}

.maison-browser-nav strong {
  margin-right: auto;
  color: var(--maison-gold);
  font-family: var(--font-serif);
  font-size: 1.05rem;
}

.maison-browser-nav button,
.maison-browser-hero button,
.maison-mobile button,
.maison-ui-phone button {
  border: 0;
  background: var(--maison-cream);
  color: #100c08;
  padding: 0.65rem 0.9rem;
  font: 700 0.66rem/1 var(--font-sans);
}

.maison-browser-hero {
  min-height: 17.5rem;
  margin-top: 1.2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 2rem;
  background: linear-gradient(90deg, rgba(0,0,0,0.84), rgba(0,0,0,0.24)), url("/assets/maison-hero-rich.png") center / cover no-repeat;
}

.maison-browser-hero span,
.maison-mobile span {
  font-family: var(--font-serif);
  font-size: clamp(2rem, 3vw, 3.2rem);
  line-height: 0.98;
  margin-bottom: 1.3rem;
}

.maison-mobile {
  position: absolute;
  right: 3.5%;
  bottom: 2.1rem;
  width: 9rem;
  min-height: 18rem;
  padding: 1rem;
  border: 1px solid rgba(244,239,229,0.32);
  border-radius: 1.6rem;
  background: linear-gradient(180deg, rgba(11,9,7,0.98), rgba(3,3,2,0.98));
}

.maison-mobile strong {
  display: block;
  margin-bottom: 4rem;
  color: var(--maison-gold);
  font-family: var(--font-serif);
  font-size: 0.95rem;
  line-height: 1.1;
}

.maison-experience-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-bottom: 1px solid var(--maison-line);
}

.maison-experience-strip article {
  padding: clamp(2.1rem, 3vw, 3.2rem) 2rem;
  border-right: 1px solid var(--maison-line);
  text-align: center;
}

.maison-experience-strip article:last-child { border-right: 0; }
.maison-experience-strip h3 { margin: 0.7rem 0 0.45rem; font-size: 1.35rem; }
.maison-experience-strip p { margin: 0 auto; max-width: 14rem; color: rgba(244,239,229,0.74); }

.maison-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 34rem;
  border-bottom: 1px solid var(--maison-line);
}

.maison-split article {
  padding: clamp(4rem, 6vw, 6.5rem) 5.05rem;
}

.maison-image-panel {
  position: relative;
  min-height: 34rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-left: 1px solid var(--maison-line);
  background: linear-gradient(90deg, rgba(0,0,0,0.22), rgba(0,0,0,0.68)), url("/assets/maison-tools.png") center / cover no-repeat;
}

.maison-image-panel p { position: absolute; left: 3.4rem; bottom: 3.4rem; font-size: 0.76rem; line-height: 1.9; }

.maison-solution { grid-template-columns: 0.66fr 1.34fr; align-items: center; }
.maison-phone-row { display: flex; justify-content: flex-end; gap: 1rem; }
.maison-ui-phone {
  width: clamp(9.5rem, 12vw, 13rem);
  min-height: 25rem;
  padding: 1rem;
  border: 1px solid rgba(201,169,109,0.48);
  border-radius: 1.15rem;
  background: linear-gradient(180deg, #13100c, #050403);
  color: var(--maison-cream);
}
.maison-ui-phone h3 { margin: 0 0 1rem; font-size: 1.15rem; }
.maison-ui-phone div:not(.maison-calendar):not(.maison-slots) { min-height: 7.5rem; margin-bottom: 1rem; background: url("/assets/maison-interior.png") center / cover no-repeat; border: 1px solid rgba(244,239,229,0.16); }
.maison-ui-phone p { font-size: 0.78rem; color: rgba(244,239,229,0.78); }
.maison-calendar { display: grid; place-items: center; height: 7rem; margin: 1rem 0; border: 1px solid rgba(244,239,229,0.18); color: var(--maison-gold); font-size: 2rem; }
.maison-slots { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.45rem; }
.maison-slots span { padding: 0.45rem; border: 1px solid rgba(244,239,229,0.16); text-align: center; font-size: 0.68rem; }

.maison-booking-ui {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  align-items: stretch;
}
.maison-booking-ui article {
  padding: 1.5rem;
  border: 1px solid var(--maison-line);
  background: rgba(255,255,255,0.025);
}
.maison-booking-ui span { color: var(--maison-gold); font: 700 0.72rem/1 var(--font-sans); letter-spacing: 0.22em; }
.maison-booking-ui .button { grid-column: 1 / -1; justify-self: start; }

.maison-lifestyle,
.maison-next-steps {
  position: relative;
  min-height: 31rem;
  display: grid;
  align-items: center;
  padding: 5.5rem 5.05rem;
  overflow: hidden;
  border-bottom: 1px solid var(--maison-line);
}
.maison-lifestyle::before,
.maison-next-steps::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,0.76), rgba(0,0,0,0.22), rgba(0,0,0,0.82)), url("/assets/maison-interior.png") center / cover no-repeat;
}
.maison-lifestyle blockquote,
.maison-next-steps > div {
  position: relative;
  z-index: 1;
}
.maison-lifestyle blockquote {
  max-width: 15ch;
  font-family: var(--font-serif);
  font-size: clamp(2.6rem, 4vw, 4.8rem);
  line-height: 0.98;
}
.maison-lifestyle cite { display: block; margin-top: 2rem; color: var(--maison-gold); font: 700 0.7rem/1 var(--font-sans); letter-spacing: 0.38em; text-transform: uppercase; }

.maison-identity { grid-template-columns: 0.55fr 1.45fr; align-items: center; }
.maison-brand-board { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.maison-brand-board > div {
  min-height: 12rem;
  padding: 1.5rem;
  border: 1px solid var(--maison-line);
  background: linear-gradient(135deg, rgba(255,255,255,0.04), rgba(255,255,255,0.01));
}
.maison-brand-board strong,
.maison-brand-board b { color: var(--maison-gold); font-family: var(--font-serif); font-size: 5rem; line-height: 0.9; }
.maison-brand-board span { display: block; margin-top: 1rem; color: var(--maison-gold); font-family: var(--font-serif); font-size: 1.45rem; line-height: 1.15; }
.maison-brand-board small { color: rgba(244,239,229,0.72); }
.maison-swatches { display: flex; align-items: end; gap: 0.7rem; }
.maison-swatches span { width: 2.2rem; height: 2.2rem; border-radius: 50%; border: 1px solid rgba(244,239,229,0.2); }
.maison-swatches span:nth-child(1) { background: #050403; }
.maison-swatches span:nth-child(2) { background: #17120e; }
.maison-swatches span:nth-child(3) { background: #c9a96d; }
.maison-swatches span:nth-child(4) { background: #f4efe5; }
.maison-card-material { background: linear-gradient(135deg, rgba(0,0,0,0.2), rgba(0,0,0,0.7)), url("/assets/maison-tools.png") center / cover no-repeat !important; }

.maison-digital { align-items: center; }
.maison-wide-screen { min-height: 25rem; background: linear-gradient(90deg, rgba(0,0,0,0.88), rgba(0,0,0,0.18)), url("/assets/maison-hero-rich.png") center / cover no-repeat; }
.maison-wide-screen h2 { margin-top: 6rem; max-width: 10ch; }
.maison-mobile-result { grid-template-columns: 1fr 0.8fr; align-items: center; }
.maison-mobile-result ul { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--maison-line); }
.maison-mobile-result li { padding: 1.2rem 0; border-bottom: 1px solid var(--maison-line); color: var(--maison-gold); letter-spacing: 0.28em; text-transform: uppercase; font-size: 0.72rem; }

.maison-next-steps > div { max-width: 31rem; }
.maison-next-project {
  position: relative;
  min-height: 27rem;
  display: grid;
  align-items: center;
  padding: 5rem 5.05rem;
  border-bottom: 1px solid var(--maison-line);
  overflow: hidden;
}
.maison-next-project::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,0.92), rgba(0,0,0,0.5), rgba(0,0,0,0.12)), url("/assets/maison-next-coreone.png") center right / cover no-repeat;
}
.maison-next-project > div { position: relative; z-index: 1; max-width: 28rem; }

.maison-page-template .contact.dark-band {
  border-top: 0;
}

@media (max-width: 1050px) {
  .maison-hero,
  .maison-result,
  .maison-solution,
  .maison-booking,
  .maison-identity,
  .maison-digital,
  .maison-mobile-result,
  .maison-split {
    grid-template-columns: 1fr;
  }
  .maison-hero { padding-inline: 2rem; }
  .maison-meta { position: relative; left: auto; right: auto; margin-top: 4rem; grid-column: 1 / -1; grid-template-columns: repeat(2, 1fr); }
  .maison-mark { justify-self: start; }
  .maison-result,
  .maison-solution,
  .maison-booking,
  .maison-identity,
  .maison-digital,
  .maison-mobile-result,
  .maison-split article,
  .maison-lifestyle,
  .maison-next-steps,
  .maison-next-project { padding-inline: 2rem; }
  .maison-experience-strip { grid-template-columns: repeat(2, 1fr); }
  .maison-phone-row { justify-content: flex-start; overflow-x: auto; padding-bottom: 1rem; }
  .maison-booking-ui { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .maison-hero { min-height: auto; padding: 6.4rem 1.25rem 2rem; }
  .maison-hero-content h1 { font-size: clamp(4.2rem, 20vw, 6rem); }
  .maison-meta,
  .maison-experience-strip,
  .maison-brand-board { grid-template-columns: 1fr; }
  .maison-meta span,
  .maison-experience-strip article { border-right: 0; border-bottom: 1px solid var(--maison-line); }
  .maison-device-stage { min-height: 30rem; justify-content: flex-start; overflow: hidden; }
  .maison-browser { width: 100%; min-height: 20rem; }
  .maison-mobile { right: 1rem; bottom: 1rem; width: 8rem; }
  .maison-result,
  .maison-solution,
  .maison-booking,
  .maison-identity,
  .maison-digital,
  .maison-mobile-result,
  .maison-split article,
  .maison-lifestyle,
  .maison-next-steps,
  .maison-next-project { padding: 3.2rem 1.25rem; }
  .maison-split, .maison-image-panel { min-height: 27rem; }
  .maison-ui-phone { flex: 0 0 10rem; }
}

/* Maison Barbier premium correction pass. */
.maison-page-template {
  background:
    radial-gradient(circle at 82% 8%, rgba(201, 169, 109, 0.12), transparent 28rem),
    linear-gradient(180deg, #050403 0%, #080604 100%);
}

.maison-page-template .site-header,
.maison-page-template .site-footer {
  backdrop-filter: blur(18px);
}

.maison-hero {
  min-height: 50.5rem;
  grid-template-columns: minmax(21rem, 0.48fr) minmax(30rem, 0.52fr);
  padding: clamp(7rem, 8vw, 9.2rem) 5.05rem 6.4rem;
  align-items: stretch;
  background: #030302;
}

.maison-hero::before {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.95) 0%, rgba(0, 0, 0, 0.86) 38%, rgba(0, 0, 0, 0.24) 68%, rgba(0, 0, 0, 0.56) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.52), rgba(0, 0, 0, 0.06) 48%, rgba(0, 0, 0, 0.48)),
    url("/assets/maison-hero-rich.png") center right / cover no-repeat;
  transform: none;
}

.maison-hero::after {
  content: "";
  position: absolute;
  right: 5.05rem;
  bottom: 5.95rem;
  width: min(47vw, 44rem);
  height: 22rem;
  border: 1px solid rgba(244, 239, 229, 0.14);
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.35)),
    url("/assets/maison-hero-rich.png") center 54% / cover no-repeat;
  box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.52), inset 0 0 0 1px rgba(201, 169, 109, 0.08);
  opacity: 0.98;
}

.maison-hero-content {
  align-self: center;
  padding-top: 2.2rem;
  max-width: 35rem;
}

.maison-hero-content h1 {
  font-size: clamp(5.7rem, 7.2vw, 9.1rem);
  letter-spacing: 0;
  max-width: 8.5ch;
}

.maison-hero-content > p:not(.eyebrow):not(.maison-kicker) {
  max-width: 26.5rem;
  font-size: 1.02rem;
  line-height: 1.55;
}

.maison-kicker {
  color: rgba(244, 239, 229, 0.86) !important;
  max-width: 24rem;
}

.maison-mark {
  position: absolute;
  z-index: 2;
  right: 17.5rem;
  top: 10.2rem;
  width: clamp(13rem, 15vw, 18rem);
  aspect-ratio: 0.72;
  align-self: auto;
  justify-self: auto;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.16), rgba(0, 0, 0, 0.56)),
    url("/assets/maison-brand-materials.png") 48% 52% / cover no-repeat;
  border-color: rgba(201, 169, 109, 0.36);
}

.maison-mark span {
  font-size: clamp(5rem, 7vw, 8rem);
  text-shadow: 0 0 2rem rgba(0, 0, 0, 0.75);
}

.maison-mark small {
  color: rgba(244, 239, 229, 0.78) !important;
}

.maison-meta {
  bottom: 0;
  left: 5.05rem;
  right: 5.05rem;
  z-index: 3;
  background: linear-gradient(90deg, rgba(6, 5, 4, 0.82), rgba(6, 5, 4, 0.52));
}

.maison-result {
  min-height: 31rem;
  grid-template-columns: minmax(18rem, 0.36fr) minmax(35rem, 0.64fr);
  align-items: center;
  padding-top: clamp(3.8rem, 5vw, 5.4rem);
  padding-bottom: clamp(3.8rem, 5vw, 5.4rem);
  background:
    linear-gradient(90deg, rgba(0, 0, 0, 0.88), rgba(0, 0, 0, 0.7) 34%, rgba(0, 0, 0, 0.34)),
    url("/assets/maison-interior.png") center / cover no-repeat;
}

.maison-result h2 {
  font-size: clamp(3.2rem, 4.45vw, 5.8rem);
  max-width: 8ch;
}

.maison-device-stage {
  min-height: 28.5rem;
  justify-content: end;
  padding: 2.2rem 1.5rem 2.2rem 0;
  background: radial-gradient(circle at 62% 18%, rgba(201, 169, 109, 0.2), transparent 23rem);
  border-left: 1px solid rgba(244, 239, 229, 0.18);
}

.maison-browser,
.maison-wide-screen {
  width: min(50rem, 92%);
  border-radius: 1rem 1rem 0.25rem 0.25rem;
  border-color: rgba(244, 239, 229, 0.32);
  background: linear-gradient(145deg, rgba(16, 12, 9, 0.98), rgba(4, 3, 2, 0.98));
  box-shadow: 0 2.4rem 6rem rgba(0, 0, 0, 0.64);
}

.maison-browser-hero {
  min-height: 18.5rem;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.88), rgba(0,0,0,0.22)),
    url("/assets/maison-hero-rich.png") center right / cover no-repeat;
}

.maison-mobile {
  width: 9.8rem;
  min-height: 19.8rem;
  right: 0.2rem;
  bottom: 1.05rem;
  border-color: rgba(244, 239, 229, 0.42);
  background:
    linear-gradient(180deg, rgba(0,0,0,0.42), rgba(0,0,0,0.82)),
    url("/assets/maison-hero-rich.png") 62% 50% / cover no-repeat;
  box-shadow: 0 2rem 4rem rgba(0,0,0,0.62);
}

.maison-experience-strip {
  background: #060504;
}

.maison-experience-strip article {
  padding-top: 2.35rem;
  padding-bottom: 2.35rem;
  background: linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0));
}

.maison-experience-strip article::before {
  content: "";
  display: block;
  width: 1.8rem;
  height: 1.8rem;
  margin: 0 auto 1rem;
  border: 1px solid rgba(201, 169, 109, 0.75);
  border-radius: 999px;
  box-shadow: inset 0 0 0 0.32rem rgba(201, 169, 109, 0.08);
}

.maison-split.maison-challenge {
  grid-template-columns: 0.43fr 0.57fr;
  min-height: 35.5rem;
  background: #050403;
}

.maison-split article {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.maison-image-panel {
  min-height: 35.5rem;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.05), rgba(0,0,0,0.42)),
    url("/assets/maison-tools.png") center / cover no-repeat;
}

.maison-solution {
  min-height: 34rem;
  grid-template-columns: 0.38fr 0.62fr;
  background:
    linear-gradient(90deg, #050403 0%, rgba(5,4,3,0.95) 42%, rgba(5,4,3,0.7)),
    url("/assets/maison-hero-rich.png") center right / cover no-repeat;
}

.maison-phone-row {
  position: relative;
  gap: clamp(0.8rem, 1.5vw, 1.35rem);
  padding: 1.35rem;
  background: linear-gradient(135deg, rgba(244,239,229,0.08), rgba(244,239,229,0.015));
  border: 1px solid rgba(244,239,229,0.16);
}

.maison-ui-phone {
  width: clamp(10.5rem, 12.4vw, 13.5rem);
  min-height: 25.8rem;
  border-radius: 1.25rem;
  background:
    linear-gradient(180deg, rgba(19, 15, 10, 0.98), rgba(3,3,2,0.98));
  box-shadow: 0 1.5rem 3.2rem rgba(0,0,0,0.38);
}

.maison-ui-phone div:not(.maison-calendar):not(.maison-slots) {
  min-height: 8rem;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.06), rgba(0,0,0,0.32)),
    url("/assets/maison-hero-rich.png") center / cover no-repeat;
}

.maison-ui-phone:nth-child(2) div:not(.maison-calendar):not(.maison-slots) {
  min-height: 12rem;
  background-image: linear-gradient(180deg, rgba(0,0,0,0.05), rgba(0,0,0,0.28)), url("/assets/maison-interior.png");
}

.maison-ui-phone h3 {
  font-family: var(--font-serif);
  font-weight: 400;
  font-size: 1.35rem;
}

.maison-booking {
  grid-template-columns: 0.38fr 0.62fr;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.86), rgba(0,0,0,0.55)),
    url("/assets/maison-brand-materials.png") center / cover no-repeat;
}

.maison-booking-ui {
  grid-template-columns: repeat(3, 1fr);
  align-items: stretch;
  padding: 1.2rem;
  border: 1px solid rgba(244,239,229,0.16);
  background: rgba(0,0,0,0.34);
  backdrop-filter: blur(8px);
}

.maison-booking-ui article {
  min-height: 10rem;
  display: flex;
  flex-direction: column;
  justify-content: end;
  background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.01));
}

.maison-lifestyle {
  min-height: 34rem;
}

.maison-lifestyle::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.62), rgba(0,0,0,0.16) 58%, rgba(0,0,0,0.58)),
    url("/assets/maison-interior.png") center / cover no-repeat;
}

.maison-lifestyle blockquote {
  margin-left: 1rem;
  max-width: 14ch;
  font-style: italic;
  text-shadow: 0 1rem 2rem rgba(0,0,0,0.56);
}

.maison-identity {
  grid-template-columns: 0.36fr 0.64fr;
  min-height: 32rem;
  background:
    linear-gradient(90deg, #050403 0%, rgba(5,4,3,0.9) 38%, rgba(5,4,3,0.28)),
    url("/assets/maison-brand-materials.png") center right / cover no-repeat;
}

.maison-brand-board {
  align-self: stretch;
  grid-template-columns: 1.08fr 0.9fr;
  grid-auto-rows: 1fr;
  padding: 1.2rem;
  border: 1px solid rgba(244,239,229,0.16);
  background: rgba(0,0,0,0.42);
  backdrop-filter: blur(6px);
}

.maison-brand-board > div {
  min-height: 9.5rem;
  background: rgba(0,0,0,0.28);
}

.maison-card-material {
  min-height: 13rem !important;
  background-image: linear-gradient(135deg, rgba(0,0,0,0.06), rgba(0,0,0,0.5)), url("/assets/maison-brand-materials.png") !important;
}

.maison-digital {
  grid-template-columns: 0.64fr 0.36fr;
  min-height: 32rem;
  background: #060504;
}

.maison-wide-screen {
  width: 100%;
  min-height: 28rem;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.86), rgba(0,0,0,0.12)),
    url("/assets/maison-hero-rich.png") center right / cover no-repeat;
}

.maison-wide-screen h2 {
  margin-top: 7rem;
  font-size: clamp(3rem, 4.8vw, 5.4rem);
}

.maison-mobile-result {
  min-height: 26rem;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.88), rgba(0,0,0,0.72) 48%, rgba(0,0,0,0.26)),
    url("/assets/maison-brand-materials.png") center right / cover no-repeat;
}

.maison-next-steps {
  min-height: 31rem;
}

.maison-next-steps::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.76), rgba(0,0,0,0.16) 58%, rgba(0,0,0,0.48)),
    url("/assets/maison-interior.png") center / cover no-repeat;
}

.maison-next-project {
  min-height: 26rem;
  background: #040302;
}

.maison-next-project::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.94), rgba(0,0,0,0.56) 42%, rgba(0,0,0,0.18)),
    url("/assets/maison-next-coreone.png") center right / cover no-repeat;
}

.maison-page-template .contact.dark-band {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.86), rgba(0,0,0,0.68)),
    url("/assets/maison-brand-materials.png") center / cover no-repeat;
}

@media (max-width: 1050px) {
  .maison-hero,
  .maison-result,
  .maison-solution,
  .maison-booking,
  .maison-identity,
  .maison-digital,
  .maison-mobile-result,
  .maison-split.maison-challenge {
    grid-template-columns: 1fr;
  }

  .maison-hero::after,
  .maison-mark {
    position: relative;
    right: auto;
    top: auto;
    bottom: auto;
    width: min(100%, 30rem);
    height: auto;
    margin-top: 2rem;
  }

  .maison-hero::after {
    display: none;
  }

  .maison-mark {
    aspect-ratio: 1.25;
  }

  .maison-device-stage,
  .maison-solution,
  .maison-booking,
  .maison-identity,
  .maison-digital,
  .maison-mobile-result {
    background-position: center;
  }
}

/* Maison Barbier final visual refinement pass. */
.maison-page-template .button,
.maison-page-template .text-link {
  letter-spacing: 0;
}

.maison-hero {
  border-bottom-color: rgba(244, 239, 229, 0.28);
}

.maison-hero-content .button {
  min-width: 12rem;
}

.maison-hero::after {
  right: 5.05rem;
  bottom: 7.1rem;
  width: min(45vw, 41.5rem);
  height: 18.5rem;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.18), rgba(0,0,0,0.18)),
    url("/assets/maison-hero-rich.png") center 58% / cover no-repeat;
}

.maison-mark {
  right: min(31vw, 28rem);
  top: 9.4rem;
  width: clamp(11.5rem, 13.2vw, 15.6rem);
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.5)),
    url("/assets/maison-brand-materials.png") 43% 50% / cover no-repeat;
}

.maison-result,
.maison-solution,
.maison-booking,
.maison-identity,
.maison-digital,
.maison-mobile-result {
  border-bottom-color: rgba(244, 239, 229, 0.26);
}

.maison-result {
  gap: 2.5rem;
  padding-right: 3.4rem;
}

.maison-device-stage::before {
  content: "";
  position: absolute;
  left: 1.6rem;
  bottom: 1.6rem;
  width: 11rem;
  height: 0.7rem;
  background: linear-gradient(90deg, rgba(201,169,109,0.75), transparent);
  opacity: 0.45;
}

.maison-browser-nav {
  min-height: 2.2rem;
  border-bottom: 1px solid rgba(244,239,229,0.1);
  padding-bottom: 0.8rem;
}

.maison-browser-hero span,
.maison-wide-screen h2 {
  text-shadow: 0 1rem 2rem rgba(0,0,0,0.72);
}

.maison-mobile span {
  font-size: 1.55rem;
}

.maison-experience-strip article::before {
  border-radius: 0.25rem;
  transform: rotate(45deg);
}

.maison-experience-strip article:nth-child(2)::before {
  border-radius: 999px 999px 0.15rem 0.15rem;
  transform: none;
}

.maison-experience-strip article:nth-child(3)::before {
  width: 2.2rem;
  border-radius: 999px;
  transform: none;
}

.maison-experience-strip article:nth-child(4)::before {
  width: 1.25rem;
  height: 2.1rem;
  border-radius: 0.35rem;
  transform: none;
}

.maison-split.maison-challenge article {
  background: linear-gradient(135deg, rgba(255,255,255,0.025), rgba(255,255,255,0));
}

.maison-split.maison-challenge h2 {
  max-width: 9.2ch;
}

.maison-image-panel::after {
  content: "";
  position: absolute;
  inset: 1.2rem;
  border: 1px solid rgba(244,239,229,0.13);
  pointer-events: none;
}

.maison-phone-row::before {
  content: "";
  position: absolute;
  left: 1.2rem;
  right: 1.2rem;
  bottom: 1.2rem;
  height: 4.5rem;
  background: linear-gradient(0deg, rgba(201,169,109,0.12), transparent);
  pointer-events: none;
}

.maison-ui-phone p + p,
.maison-ui-phone .maison-slots {
  border-top: 1px solid rgba(244,239,229,0.12);
  padding-top: 0.75rem;
}

.maison-booking-ui article h3 {
  font-family: var(--font-serif);
  font-size: 1.5rem;
  font-weight: 400;
}

.maison-lifestyle {
  min-height: 32rem;
}

.maison-lifestyle::after,
.maison-next-steps::after {
  content: "";
  position: absolute;
  left: 5.05rem;
  right: 5.05rem;
  bottom: 0;
  height: 1px;
  background: rgba(244, 239, 229, 0.26);
}

.maison-brand-board > div:first-child {
  grid-row: span 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.maison-brand-board > div:first-child strong {
  font-size: 7rem;
}

.maison-brand-board > div:first-child span {
  letter-spacing: 0.24em;
  text-transform: uppercase;
  font-family: var(--font-sans);
  font-size: 1.05rem;
}

.maison-swatches {
  min-height: auto !important;
}

.maison-digital > div:last-child,
.maison-mobile-result > div:first-child {
  align-self: center;
}

.maison-mobile-result ul {
  background: rgba(0,0,0,0.36);
  padding: 1rem 1.4rem;
  border: 1px solid rgba(244,239,229,0.14);
}

.maison-next-project h2::after {
  content: "→";
  display: inline-grid;
  place-items: center;
  width: 3.1rem;
  height: 3.1rem;
  margin-left: 1rem;
  border: 1px solid rgba(201,169,109,0.7);
  border-radius: 999px;
  color: var(--maison-gold);
  font-family: var(--font-sans);
  font-size: 1.25rem;
  vertical-align: middle;
}

@media (max-width: 640px) {
  .maison-hero::after { display: none; }
  .maison-hero-content h1 { max-width: 7.6ch; }
  .maison-result { padding-right: 1.25rem; }
  .maison-phone-row { margin-inline: -1.25rem; border-left: 0; border-right: 0; }
  .maison-brand-board > div:first-child { grid-row: auto; }
}





/* ==========================================================================
   Shared "concept study" template — Method / Atelier Vero / MeritSuite
   ========================================================================== */

.case-hero,
.case-result {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--paper);
}

.case-hero {
  min-height: 46rem;
  display: grid;
  align-items: end;
  padding: 6.5rem 5.05rem 4.4rem;
  border-bottom: 1px solid rgba(241, 238, 231, 0.12);
}

.case-hero-media,
.case-hero::after,
.case-result::before {
  position: absolute;
  inset: 0;
  z-index: -2;
  content: "";
}

.case-hero-media {
  background-size: cover;
  background-position: center;
  filter: saturate(0.66) contrast(1.08) brightness(0.72);
}

.case-hero::after {
  z-index: -1;
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.88), transparent 46%),
    linear-gradient(90deg, rgba(0, 0, 0, 0.52), transparent 62%);
}

.case-hero-content {
  max-width: 42rem;
}

.case-hero h1 {
  margin: 1rem 0 1.1rem;
  font-size: clamp(4.2rem, 7vw, 7rem);
  line-height: 0.92;
}

.case-subtitle {
  margin: 0 0 1.4rem;
  font-family: var(--serif);
  font-size: clamp(1.3rem, 2vw, 1.7rem);
  color: rgba(241, 238, 231, 0.85);
}

.case-hero .lede {
  max-width: 30rem;
  color: rgba(241, 238, 231, 0.78);
  font-size: 1.02rem;
  line-height: 1.5;
}

.case-meta {
  position: absolute;
  left: 5.05rem;
  right: 5.05rem;
  bottom: 2.1rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(241, 238, 231, 0.22);
  color: rgba(241, 238, 231, 0.76);
  font-size: 0.67rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.case-meta span {
  padding-top: 1rem;
  border-right: 1px solid rgba(241, 238, 231, 0.16);
}

.case-meta span:last-child {
  border-right: 0;
}

.case-meta b {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--paper);
  font-weight: 400;
}

.case-overview {
  display: grid;
  grid-template-columns: 1fr 26rem;
  gap: 4rem;
  align-items: center;
  padding: clamp(4.4rem, 6vw, 6.4rem) 5.05rem;
}

.case-overview-copy .eyebrow {
  color: var(--muted);
}

.case-overview-copy h2 {
  margin: 0 0 1.2rem;
  font-size: clamp(2.6rem, 4vw, 3.8rem);
  line-height: 0.98;
}

.case-overview-copy p {
  margin: 0 0 2rem;
  max-width: 34rem;
  color: rgba(21, 19, 15, 0.72);
  line-height: 1.55;
}

.case-overview-media {
  min-height: 22rem;
  background-size: cover;
  background-position: center;
}

.case-key-sections {
  padding: 0 5.05rem clamp(4.4rem, 6vw, 6.4rem);
}

.case-key-sections .eyebrow {
  display: block;
  margin-bottom: 2rem;
  color: var(--muted);
}

.case-result {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
  padding: clamp(4.4rem, 6vw, 6.4rem) 5.05rem;
}

.case-result::before {
  z-index: -2;
  background-color: var(--coal);
}

.case-result-visual {
  position: relative;
  min-height: 22rem;
  border: 1px solid rgba(241, 238, 231, 0.18);
  background-size: cover;
  background-position: center;
  filter: saturate(0.62) brightness(0.68);
}

.case-result-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0.12));
}

.case-result-visual span {
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  width: 3.6rem;
  height: 3.6rem;
  border: 1px solid rgba(241, 238, 231, 0.5);
  border-radius: 50%;
  color: var(--paper);
  font-size: 0.9rem;
}

.case-result-copy h2 {
  margin: 0 0 1.2rem;
  font-size: clamp(2.6rem, 4vw, 3.8rem);
  line-height: 0.98;
}

.case-result-copy p {
  margin: 0 0 1.4rem;
  color: rgba(241, 238, 231, 0.76);
  line-height: 1.55;
}

.case-result-copy small {
  display: block;
  color: rgba(241, 238, 231, 0.5);
  font-size: 0.68rem;
  letter-spacing: 0.3em;
  text-transform: uppercase;
}

.case-cta {
  padding: clamp(4.4rem, 6vw, 6.4rem) 5.05rem;
}

.case-cta .eyebrow {
  color: var(--muted);
}

.case-cta h2 {
  margin: 0.6rem 0 1.8rem;
  font-size: clamp(2.6rem, 4vw, 3.8rem);
}

/* Method page — dedicated dark editorial palette */
.method-page-template {
  --method-bg: #0b0a08;
  --method-bg-deep: #050505;
  --method-card: #11100e;
  --method-border: rgba(244, 239, 231, 0.12);
  --method-text: #f4efe7;
  --method-muted: rgba(244, 239, 231, 0.68);
  --method-gold: #d8c29a;
}

/* Per-project hero / overview / result imagery */
.method-page-template .case-hero-media {
  background-image: url("/assets/method-interior-b.png");
  background-position: center 55%;
  filter: saturate(0.82) contrast(1.1) brightness(0.78);
}
.method-page-template .case-hero::after {
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.92), transparent 48%),
    linear-gradient(90deg, rgba(0, 0, 0, 0.82), transparent 58%),
    linear-gradient(90deg, rgba(0, 0, 0, 0.2), transparent 30%, transparent 70%, rgba(0, 0, 0, 0.3));
}
.method-page-template .case-overview-media {
  background-image: url("/assets/method-chalk-wide.png");
}
.method-page-template .case-result-visual {
  background-image: url("/assets/method-result-hands.png");
  background-position: center 8%;
  background-size: cover;
}

/* Method overview — darker, richer "case study" treatment */
.method-page-template .case-overview.case-overview-dark {
  position: relative;
  isolation: isolate;
  background: linear-gradient(155deg, var(--method-card) 0%, var(--method-bg) 62%);
  color: var(--method-text);
  grid-template-columns: 1fr 30rem;
  gap: 4.5rem;
  border-top: 1px solid var(--method-border);
}

.method-page-template .case-overview.case-overview-dark::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: radial-gradient(rgba(244, 239, 231, 0.05) 1px, transparent 1px);
  background-size: 3px 3px;
  opacity: 0.5;
}

.method-page-template .case-overview-dark .case-overview-copy .eyebrow {
  color: var(--method-muted);
}

.method-page-template .case-overview-dark .case-overview-copy h2 {
  color: var(--method-text);
}

.method-page-template .case-overview-dark .case-overview-copy p {
  color: var(--method-muted);
}

.method-page-template .case-overview-dark .case-overview-copy .button-light {
  background: var(--method-text);
  color: var(--method-bg-deep);
}

.method-page-template .case-overview-dark .case-overview-media {
  min-height: 28rem;
  border: 1px solid var(--method-border);
  filter: saturate(0.78) contrast(1.08) brightness(0.82);
}

/* One continuous dark editorial base from overview through the result section */
.method-page-template .case-key-sections.light-section {
  background: linear-gradient(180deg, var(--method-bg) 0%, var(--method-card) 55%, var(--method-bg-deep) 100%);
  padding-top: clamp(3.4rem, 5vw, 5rem);
}

.method-page-template .case-key-sections .eyebrow {
  color: var(--method-muted);
}

.method-page-template .case-key-grid h3 {
  color: var(--method-text);
}

.method-page-template .case-key-grid p {
  color: var(--method-muted);
}

.method-page-template .case-key-image {
  border-color: var(--method-border);
}

.method-page-template .case-result {
  border-top: 1px solid var(--method-border);
}

.method-page-template .case-result::before {
  background: linear-gradient(180deg, var(--method-bg-deep) 0%, var(--method-card) 30%, var(--method-bg) 70%, var(--method-bg-deep) 100%);
}

/* Method key-section image cards */
.case-key-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.6rem;
}

.case-key-grid article {
  display: flex;
  flex-direction: column;
}

.case-key-image {
  aspect-ratio: 4 / 3;
  margin-bottom: 1.1rem;
  border: 1px solid var(--line);
  background-size: cover;
  background-position: center;
  filter: saturate(0.72) contrast(1.06) brightness(0.86);
}

.case-key-grid h3 {
  margin: 0 0 0.3rem;
  font-size: clamp(1.05rem, 1.4vw, 1.3rem);
}

.case-key-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 0.85rem;
  line-height: 1.4;
}

.method-page-template .case-key-home {
  background-image: url("/assets/method-interior-a.png");
  background-position: left 30%;
  background-size: 130% auto;
  filter: saturate(0.8) contrast(1.06) brightness(0.94);
}
.method-page-template .case-key-memberships {
  background-image: url("/assets/method-corridor.png");
  background-position: center 62%;
  background-size: cover;
  filter: saturate(0.55) contrast(1.16) brightness(0.74) grayscale(0.15);
}
.method-page-template .case-key-classes {
  background-image: url("/assets/method-interior-b.png");
  background-position: right 88%;
  background-size: 160% auto;
  filter: saturate(0.9) contrast(1.18) brightness(0.8) grayscale(0.05);
}
.method-page-template .case-key-nutrition {
  background-image: url("/assets/method-nutrition.png");
  background-position: center 45%;
  filter: saturate(0.9) contrast(1.05) brightness(0.92);
}

.method-page-template .case-result-visual {
  border-color: var(--method-border);
}

.method-page-template .case-result-copy small {
  color: var(--method-gold);
}

/* Result section — more top air, title given room to breathe */
.method-page-template .case-result {
  padding-top: clamp(6.4rem, 9vw, 9.5rem);
  align-items: start;
}

.method-page-template .case-result-copy {
  padding-top: 0.6rem;
}

.method-page-template .case-result-copy h2 {
  margin-top: 0.4rem;
}

/* CTA — more compact, tighter rhythm */
.method-page-template .case-cta {
  position: relative;
  padding-top: clamp(3rem, 4vw, 3.8rem);
  padding-bottom: clamp(3rem, 4vw, 3.8rem);
}

.method-page-template .case-cta .eyebrow {
  margin-bottom: 0.4rem;
}

.method-page-template .case-cta h2 {
  margin: 0.4rem 0 1.2rem;
}

.method-page-template .case-cta::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 6rem;
  background: linear-gradient(180deg, rgba(8, 8, 7, 0.14), transparent);
  pointer-events: none;
}

/* One fluid close: tighten the seam between the CTA and the contact block */
.method-page-template .case-cta + .contact {
  padding-top: clamp(2.6rem, 4vw, 3.6rem);
}

@media (max-width: 900px) {
  .case-key-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 520px) {
  .case-key-grid {
    grid-template-columns: 1fr;
  }
}

/* Method overview — collapse the fixed dark two-column layout on mobile */
@media (max-width: 1100px) {
  .method-page-template .case-overview.case-overview-dark {
    grid-template-columns: 1fr;
    gap: 2.4rem;
  }
  .method-page-template .case-overview-dark .case-overview-media {
    min-height: 16rem;
  }
}

/* Method key cards — ease off the tight zoom crops once cards are full-width on mobile */
@media (max-width: 520px) {
  .method-page-template .case-key-home,
  .method-page-template .case-key-classes {
    background-size: cover;
  }
}

.atelier-page-template .case-hero-media {
  background-image: url("https://images.unsplash.com/photo-1618221195710-dd6b41faaea6?auto=format&fit=crop&w=2400&q=86");
}
.atelier-page-template .case-overview-media {
  background-image: url("/assets/project-atelier.png");
}
.atelier-page-template .case-result-visual {
  background-image: url("/assets/studio-hero.png");
}

.meritsuite-case-template .case-hero-media {
  background-image: url("/assets/meritsuite-hero-luxury-bg.png");
}
.meritsuite-case-template .case-overview-media {
  background-image: url("/assets/meritsuite-feature-visuals-luxury.png");
}
.meritsuite-case-template .case-result-visual {
  background-image: url("/assets/meritsuite-dashboard-v2.png");
}

@media (max-width: 1100px) {
  .case-overview,
  .case-result {
    grid-template-columns: 1fr;
  }
  .case-overview-media,
  .case-result-visual {
    min-height: 18rem;
  }
  .case-hero {
    padding: 6rem 2.4rem 3rem;
  }
  .case-meta {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    margin-top: 3rem;
  }
  .case-overview,
  .case-key-sections,
  .case-result,
  .case-cta {
    padding-left: 2.4rem;
    padding-right: 2.4rem;
  }
}

@media (max-width: 720px) {
  .case-hero,
  .case-overview,
  .case-key-sections,
  .case-result,
  .case-cta {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .case-meta {
    grid-template-columns: 1fr;
    gap: 0.8rem;
  }
  .case-meta span {
    border-right: 0;
    border-bottom: 1px solid rgba(241, 238, 231, 0.16);
    padding-bottom: 0.8rem;
  }
}
