/* MONIFACT — quiet, evidence-first identity. White is the dominant surface.
   All solid hues are drawn exclusively from the approved six-color charter. */
:root {
  --moni-white: #FFFFFF;
  --moni-pink: #E71D73;
  --moni-green: #008D36;
  --moni-ink: #3C3C3B;
  --moni-blue: #3C63AD;
  --moni-gold: #F9BF30;
}

/* Uncomplicated wordmark: no tricolour ribbon and no coloured header rule. */
.site-header { background:var(--moni-white); border-bottom:0; box-shadow:none; }
.site-header .wordmark-prefix { color:var(--moni-ink); }
.site-header .wordmark-root { color:var(--moni-blue); }
.site-header .brand .wordmark:after { display:none; content:none; }
.site-header .brand small { color:var(--moni-ink); }

/* Preserve typography and interaction conventions; avoid themed card fills. */
.page-home {
  --ink:var(--moni-ink);
  --muted:var(--moni-ink);
  --blue:var(--moni-blue);
  --pink:var(--moni-pink);
  --green:var(--moni-green);
  --pale:var(--moni-white);
  --pale-blue:var(--moni-white);
  --pale-pink:var(--moni-white);
  --pale-green:var(--moni-white);
  --pale-yellow:var(--moni-white);
  color:var(--moni-ink);
  background:var(--moni-white);
}
.page-home .commercial-hero {
  background:var(--moni-white);
  border:0; border-radius:0; box-shadow:none;
  margin:0; padding:clamp(48px,5vw,76px) 0 clamp(58px,5vw,82px);
  gap:clamp(34px,4.5vw,70px);
}
.page-home .commercial-hero:before { display:none; content:none; }
.page-home .hero-copy h1 { color:var(--moni-ink); }
.page-home .hero-copy h1>span { color:var(--moni-blue); }
.page-home .hero-copy .brand-dash {
  background:var(--moni-pink); width:18px; height:2px;
}
.page-home .commercial-hero .hero-intro { color:var(--moni-ink); }
.page-home .commercial-hero .button:not(.outline) {
  background:var(--moni-blue); border-color:var(--moni-blue);
  color:var(--moni-white); box-shadow:none;
}
.page-home .commercial-hero .button:not(.outline):hover,
.page-home .commercial-hero .button:not(.outline):focus-visible {
  background:var(--moni-ink); border-color:var(--moni-ink);
}

/* Preview: a quiet document panel, not a bright advertising banner. */
.page-home .product-preview {
  position:relative; background:var(--moni-white);
  border:0; border-radius:14px; box-shadow:none;
}
.page-home .product-preview:before { display:none; content:none; }
.page-home .product-preview:after {
  content:""; position:absolute; inset:0;
  border:1px solid var(--moni-ink); border-radius:inherit;
  opacity:.20; pointer-events:none;
}
.page-home .product-preview .signal-card { border-top:2px solid var(--moni-blue); }
.page-home .product-preview .eyebrow { color:var(--moni-ink); }

/* Uniform white directory cards. Their hairline uses translucent charter grey. */
.page-home .market-section .section-title h2,
.page-home .specialized-market-section .section-title h2 {
  border-left:0; padding-left:0;
}
.page-home .vertical-grid .vertical-card,
.page-home .market-section .vertical-grid .vertical-card,
.page-home .specialized-market-section .vertical-grid .vertical-card,
.page-home .market-section .vertical-grid .vertical-card:nth-child(4n+1),
.page-home .market-section .vertical-grid .vertical-card:nth-child(4n+2),
.page-home .market-section .vertical-grid .vertical-card:nth-child(4n+3),
.page-home .market-section .vertical-grid .vertical-card:nth-child(4n+4),
.page-home .specialized-market-section .vertical-grid .vertical-card:nth-child(4n+1),
.page-home .specialized-market-section .vertical-grid .vertical-card:nth-child(4n+2),
.page-home .specialized-market-section .vertical-grid .vertical-card:nth-child(4n+3),
.page-home .specialized-market-section .vertical-grid .vertical-card:nth-child(4n+4) {
  background:var(--moni-white); border:0;
  border-radius:12px; color:var(--moni-ink);
  box-shadow:none; position:relative;
}
.page-home .vertical-grid .vertical-card:after {
  content:""; position:absolute; inset:0; border:1px solid var(--moni-ink);
  border-radius:inherit; opacity:.18; pointer-events:none;
}
.page-home .vertical-card h3,
.page-home .vertical-card h3 a,
.page-home .vertical-card p,
.page-home .vertical-card span { color:var(--moni-ink); }
.page-home .vertical-card .vertical-card-footer {
  border-top:0; padding-top:18px;
}
.page-home .vertical-card .text-cta { color:var(--moni-blue); }

/* Proof and change tiles use the same quiet language; small coloured glyphs only. */
.page-home .why-section .value-card,
.page-home .signals-section .signal-card {
  background:var(--moni-white); border:0; border-radius:12px;
  color:var(--moni-ink); box-shadow:none; position:relative;
}
.page-home .why-section .value-card:after,
.page-home .signals-section .signal-card:after {
  content:""; position:absolute; inset:0; border:1px solid var(--moni-ink);
  border-radius:inherit; opacity:.16; pointer-events:none;
}
.page-home .why-section .value-card:before { display:none; content:none; }
.page-home .why-section .value-card .card-symbol {
  color:var(--moni-blue); background:var(--moni-white);
  border:0; border-bottom:2px solid var(--moni-blue);
  border-radius:0;
}
.page-home .why-section .value-card.accent-pink .card-symbol {
  color:var(--moni-ink); border-bottom-color:var(--moni-pink);
}
.page-home .why-section .value-card.accent-green .card-symbol {
  color:var(--moni-ink); border-bottom-color:var(--moni-green);
}
.page-home .signals-section .signal-card { border-top:2px solid var(--moni-blue); }

/* All four process cards are white. Blue is reserved for actionable text. */
.page-home .capabilities .four-grid .capability,
.page-home .capabilities .four-grid .capability.blue-panel,
.page-home .capabilities .four-grid .capability.pale-pink,
.page-home .capabilities .four-grid .capability.pale-green,
.page-home .capabilities .four-grid .capability.pale-yellow {
  position:relative; background:var(--moni-white) !important;
  border:0; border-radius:12px; box-shadow:none;
  color:var(--moni-ink) !important;
}
.page-home .capabilities .four-grid .capability:after {
  content:""; position:absolute; inset:0; border:1px solid var(--moni-ink);
  border-radius:inherit; opacity:.18; pointer-events:none;
}
.page-home .capabilities .four-grid .capability:hover,
.page-home .capabilities .four-grid .capability:focus-visible {
  background:var(--moni-white); box-shadow:none;
}
.page-home .capabilities .four-grid .capability h3,
.page-home .capabilities .four-grid .capability p,
.page-home .capabilities .four-grid .capability .step-number {
  color:var(--moni-ink); opacity:1;
}
.page-home .capabilities .four-grid .capability>span:last-child { color:var(--moni-blue); }

/* Replace the large saturated-blue footer callout with calm white space. */
.page-home .closing-cta {
  background:var(--moni-white); color:var(--moni-ink);
  margin-top:28px; border-top:1px solid var(--moni-ink);
}
.page-home .closing-cta h2,
.page-home .closing-cta p { color:var(--moni-ink); opacity:1; }
.page-home .closing-cta .eyebrow { color:var(--moni-blue); opacity:1; }
.page-home .closing-cta .cta-stack .button.light {
  background:var(--moni-blue); border:1px solid var(--moni-blue);
  color:var(--moni-white); box-shadow:none;
}
.page-home .closing-cta .cta-stack .button.light:hover,
.page-home .closing-cta .cta-stack .button.light:focus-visible {
  background:var(--moni-ink); border-color:var(--moni-ink);
}
.page-home .closing-cta .inverse-link { color:var(--moni-blue); }

/* Functional navigation keeps its blue controls, without coloured framing. */
.seo-pagination {
  border-top:1px solid var(--moni-ink); border-bottom:0;
  background:var(--moni-white);
}
.seo-pagination a { background:var(--moni-blue); color:var(--moni-white); }
.seo-pagination a:hover,.seo-pagination a:focus-visible {
  background:var(--moni-ink); color:var(--moni-white);
}
.seo-pagination span { color:var(--moni-ink); }
@media(max-width:940px){
  .page-home .commercial-hero { padding:45px 0 55px; gap:30px; }
}
@media(max-width:640px){
  .page-home .commercial-hero { padding:32px 0 45px; margin:0; box-shadow:none; }
  .page-home .product-preview { box-shadow:none; }
}
@media(prefers-reduced-motion:reduce){
  .page-home .commercial-hero * { animation:none!important; }
}

/* MONIFACT phase 4b — micro-accents only: all surfaces remain white.
   A micro-accent is a 2–3px rule or a 7px marker, never a coloured panel.
   This section deliberately affects only the public home page. */

/* 1. Five discreet section markers, each identifying a reading context. */
.page-home .market-section .section-title .eyebrow::before,
.page-home .specialized-market-section .section-title .eyebrow::before,
.page-home .why-section .section-title .eyebrow::before,
.page-home .signals-section .section-title .eyebrow::before,
.page-home .capabilities .section-title .eyebrow::before {
  content:"";
  display:inline-block;
  flex:0 0 16px;
  width:16px;
  height:2px;
  margin-right:3px;
  background-color:var(--moni-blue);
  border-radius:2px;
  vertical-align:middle;
}
.page-home .specialized-market-section .section-title .eyebrow::before { background-color:var(--moni-gold); }
.page-home .why-section .section-title .eyebrow::before { background-color:var(--moni-pink); }
.page-home .signals-section .section-title .eyebrow::before { background-color:var(--moni-green); }

/* 2. Tiny top-left strokes distinguish markets without colouring the cards. */
.page-home .vertical-grid .vertical-card::before {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:28px;
  width:48px;
  height:3px;
  border-radius:0 0 2px 2px;
  background-color:var(--moni-blue);
  pointer-events:none;
  z-index:1;
}
.page-home .market-section .vertical-card:nth-child(2)::before { background-color:var(--moni-pink); }
.page-home .market-section .vertical-card:nth-child(3)::before { background-color:var(--moni-green); }
.page-home .market-section .vertical-card:nth-child(4)::before { background-color:var(--moni-gold); }
.page-home .specialized-market-section .vertical-card:nth-child(2)::before { background-color:var(--moni-green); }
.page-home .specialized-market-section .vertical-card:nth-child(3)::before { background-color:var(--moni-blue); }
.page-home .specialized-market-section .vertical-card:nth-child(4)::before { background-color:var(--moni-gold); }

/* 3. A restrained cue on the evidence preview; its full frame stays neutral. */
.page-home .product-preview::before {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:26px;
  width:52px;
  height:2px;
  border-radius:2px;
  background-color:var(--moni-blue);
  pointer-events:none;
  z-index:1;
}

/* 4. Seven-pixel process markers: no solid coloured step cards. */
.page-home .capabilities .four-grid .capability .step-number {
  display:inline-flex;
  align-items:center;
  gap:9px;
}
.page-home .capabilities .four-grid .capability .step-number::before {
  content:"";
  flex:0 0 7px;
  width:7px;
  height:7px;
  border-radius:50%;
  background-color:var(--moni-blue);
}
.page-home .capabilities .four-grid .capability:nth-child(2) .step-number::before { background-color:var(--moni-pink); }
.page-home .capabilities .four-grid .capability:nth-child(3) .step-number::before { background-color:var(--moni-green); }
.page-home .capabilities .four-grid .capability:nth-child(4) .step-number::before { background-color:var(--moni-gold); }

/* 5. The proof icons retain the existing blue/pink/green understated marks.
   The closing call-to-action stays white, with a small gold leading rule. */
.page-home .closing-cta .eyebrow::before {
  content:"";
  display:inline-block;
  width:16px;
  height:2px;
  margin-right:8px;
  background-color:var(--moni-gold);
  border-radius:2px;
  vertical-align:middle;
}


/* MONIFACT editorial design refinement — 2026-10-27.
   One typographic hierarchy and predictable evidence/action footers.
   Keeps the existing colors, routes and DOM data contracts intact. */

/* Headings use fewer independent large scales, without reducing body legibility. */
.commercial-heading h1 {
  font-size:clamp(2.15rem,3.35vw,3.15rem);
  font-weight:650;
  line-height:1.13;
  letter-spacing:-.045em;
  overflow-wrap:break-word;
}
.section-title h2 {
  font-size:clamp(1.48rem,2.2vw,2.05rem);
  line-height:1.22;
  font-weight:620;
  letter-spacing:-.035em;
}
.vertical-grid .vertical-card h2 {
  font-size:clamp(1.34rem,1.9vw,1.82rem);
  line-height:1.19;
  font-weight:620;
  letter-spacing:-.035em;
  margin:12px 0 5px;
  overflow-wrap:anywhere;
}
.vertical-grid .vertical-card h2 a { overflow-wrap:anywhere; }
.vertical-grid .vertical-card h3 {
  font-size:1.1rem;
  line-height:1.3;
  font-weight:620;
  margin:14px 0 6px;
}
.vertical-grid .vertical-card > p {
  font-size:.9rem;
  line-height:1.58;
  margin:0 0 11px;
}
.market-path-card h3 { font-size:1rem; font-weight:620; }
.page-home .hero-copy h1 {
  font-size:clamp(2.3rem,3.75vw,3.5rem);
  line-height:1.13;
}
.market-heading { max-width:960px; }

/* Transversal markets: source and action in a stable, stacked footer.
   No inline label/title/date combination is allowed to overlap. */
.market-catalog .vertical-card {
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:27px 28px 23px;
}
.market-catalog .vertical-card > .eyebrow { margin-bottom:0; }
.market-catalog .market-evidence-footer {
  margin-top:auto;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
  padding-top:15px;
  min-width:0;
}
.market-catalog .market-evidence-footer .market-examples {
  display:flex;
  align-content:flex-start;
  flex-wrap:wrap;
  gap:6px 12px;
  min-width:0;
}
.market-catalog .market-examples a {
  display:inline-block;
  min-width:0;
  max-width:100%;
  font-size:.74rem;
  line-height:1.4;
  overflow-wrap:anywhere;
  border-bottom:1px solid #a9b7cc;
}
.market-catalog .market-latest {
  border-top:1px solid #d9e1eb;
  padding-top:12px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  column-gap:12px;
  row-gap:5px;
  align-items:start;
  min-width:0;
}
.market-catalog .market-latest .micro-label {
  grid-column:1/-1;
  display:block;
  font-size:.65rem;
  letter-spacing:.085em;
  line-height:1.35;
  color:#535b69;
}
.market-catalog .market-latest a {
  grid-column:1;
  min-width:0;
  font-size:.86rem;
  line-height:1.4;
  font-weight:570;
  overflow-wrap:anywhere;
  text-decoration:none;
}
.market-catalog .market-latest a:hover { text-decoration:underline; }
.market-catalog .market-latest time {
  grid-column:2;
  grid-row:2;
  display:block;
  text-align:right;
  font-size:.72rem;
  line-height:1.4;
  white-space:nowrap;
  color:#566172;
}
.market-catalog .market-evidence-footer > .button {
  width:100%;
  min-height:44px;
  padding:10px 14px;
  margin:0;
  text-align:center;
  justify-content:center;
  font-size:.82rem;
}

/* Specialized markets: two predictable footer cells, no clipping. */
#domaines-specialises .vertical-card {
  min-width:0;
  overflow-wrap:anywhere;
}
#domaines-specialises .vertical-card-footer {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  justify-content:stretch;
  column-gap:18px;
  row-gap:8px;
  margin-top:auto;
  min-width:0;
  padding-top:16px;
}
#domaines-specialises .vertical-card-footer > span {
  min-width:0;
  overflow-wrap:anywhere;
  font-size:.84rem;
  line-height:1.45;
}
#domaines-specialises .vertical-card-footer > .text-cta {
  font-size:.83rem;
  white-space:nowrap;
}

@media(max-width:700px) {
  .commercial-heading h1 { font-size:clamp(2rem,7vw,2.45rem); }
  .section-title h2 { font-size:clamp(1.45rem,5.3vw,1.85rem); }
  .vertical-grid .vertical-card h2 { font-size:1.48rem; }
  .vertical-grid .vertical-card h3 { font-size:1.04rem; }
  .market-catalog .vertical-card { padding:22px 21px; }
  .market-catalog .market-latest {
    grid-template-columns:minmax(0,1fr);
    gap:6px;
  }
  .market-catalog .market-latest a {
    grid-row:2;
    grid-column:1;
  }
  .market-catalog .market-latest time {
    grid-row:3;
    grid-column:1;
    text-align:left;
  }
}
@media(max-width:380px) {
  #domaines-specialises .vertical-card-footer {
    grid-template-columns:minmax(0,1fr);
  }
}
