/* A lighter, editorial expression of the RDV-Partners emerald identity. */
:root {
  --night: #081d1c;
  --navy: #103a33;
  --navy2: #1e5045;
  --ink: #243b34;
  --muted: #52665d;
  --blue: #238972;
  --teal: #14705a;
  --lime: #aeead5;
  --mint: #87e5d4;
  --paper: #eff3e9;
  --line: #d4e0d4;
  --white: #fbfcf5;
}
html { scroll-padding-top: 112px; }
body { background: #f8f6ef; color: #243b34; padding-bottom: 78px; }
::selection { background: #b9edd8; color: #183c30; }
button:focus-visible, a:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
  outline-color: #269a82;
}
/* The intro moves focus here for assistive technology; the heading is not a control. */
#hero-title[tabindex="-1"]:focus { outline: none; }
header.site-header, .site-header, body > header:not(.modal-head) {
  background: #f8f6eff5;
  border-bottom-color: #cdddce;
  backdrop-filter: blur(16px);
}
.nav-links { gap: 20px; }
.nav-links > a:not(.btn), .usecase-nav summary, .case-menu summary { font-size: 15px; }
.usecase-dropdown, .case-dropdown { background: #faf8f1; border-color: #d4e0d4; }
.usecase-dropdown a:hover, .case-dropdown a:hover, .case-dropdown a[aria-current] { background: #e4eedf; }
.usecase-dropdown strong, .case-dropdown strong { font-size: 15px; color: #244a3b; }
.usecase-dropdown small, .case-dropdown small { color: #516b5c; font-size: 13px; }
.brand small, .footer-brand small, .footer-brand span { color: #526c5b; }
.hero, .industry-hero {
  background: radial-gradient(ellipse at 85% 25%, #23685855, transparent 64%), linear-gradient(125deg,#0b2726,#154439);
}
.hero h1 em, .hero-copy h1 em { color: #98e8d2; }
.hero-intro, .hero-description { color: #d7e6df; font-size: 18px; line-height: 1.8; }
.hero-note, .hero-bottom p, .hero-bottom, .hero-copy .hero-note { color: #c0d9cf; font-size: 14px; line-height: 1.7; }
.hero .eyebrow, .hero-copy .eyebrow { color: #b8e6d5; font-size: 13px; }
.btn-primary, .btn-dark { background: #164d40; color: #f3fbf5; }
.btn-primary:hover, .btn-dark:hover { background: #226751; }
.btn-lime, .btn-mint { background: #b8ecd4; color: #173d2e; }
.btn-lime:hover, .btn-mint:hover { background: #cef4e2; }
.hero-actions .btn { font-size: 15px; }
.ecosystem, .bespoke, .faq, .sur-mesure { background: #eff3e9; }
.usecase-card, .work-preview, .demo-shell, .demo-card, .role-preview { border-color: #d2dfd0; }
.preview-heading, .preview-inner, .business-preview, .usecase-body { background: #fcfaf3; }
/* The industry card uses the same ivory surface as the other sector card. */
.usecase-industry .usecase-body { color: #243b34; }
.usecase-industry .usecase-kicker { color: #14705a; }
.usecase-industry h3 { color: #243b34; }
.usecase-industry p { color: #52665d; }
.usecase-industry .text-link { color: #164d40; border-top-color: #d4e0d4; }
.cockpit, .cockpit-body, .role-preview { background: #fcfaf3; }
.cockpit-top, .cockpit-bottom, .business-metrics { background: #edf3e6; }
.kpi, .metric, .metric-card, .eco-grid article, .demo-kpi { background-color: #e8f0e0; }
.bespoke-promise, .core-offer, .elina-section { background-color: #103b33; }
.bespoke-promise p { color: #d8e8de; }
.section-heading > p, .bespoke-lead > p, .usecase-body p, .role-jobs p,
.journey-copy > p, .journey-copy .check-list li, .faq-list details p { font-size: 16px; line-height: 1.8; }
.final-cta { background: #deecda; color: #213e30; }
.final-cta p { color: #4e6758; }
.footer, footer { background: #f8f6ef; }
.footer-meta, .footer-bottom, .footer-links { color: #567061; }
.entry-title, .entry-choice strong { letter-spacing: -.035em; }
.entry-choice small { color: #c3ded1; }
.entry-choice:hover { border-color: #87e5d4; }
.entry-reopen { color: #245a43; }
@media(max-width:1100px) {
  .nav-links { gap: 14px; }
  .nav-links > a:not(.btn), .usecase-nav summary, .case-menu summary { font-size: 14px; }
}
@media(max-width:960px) {
  .nav-links, .nav-links.open { background: #f8f6ef; }
}
@media(max-width:760px) {
  .hero-intro, .hero-description { font-size: 17px; }
  .hero .eyebrow, .hero-copy .eyebrow { font-size: 12px; }
  .hero-note, .hero-copy .hero-note { font-size: 14px; }
  .nav-links > a:not(.btn), .usecase-nav summary, .case-menu summary { font-size: 16px; }
}
@media print { body { padding-bottom: 0; } }
