/* ============================================================
   ONESIMUS — Custom CSS v3 (panel-friendly)
   Réseau Suisse de Médecins Afrodescendant·e·s

   What changed from v1/v2:
   - REMOVED heading font-family/color/weight overrides
     (the design panel already configures h1-h6 correctly)
   - REMOVED body font-family override (panel handles it)
   - KEPT button styles, tiles, forms, links, hover/focus,
     mobile tuning, utility classes, footer

   Net effect: this CSS adds polish on top of the panel
   instead of competing with it.
   ============================================================ */

/* ---- 1. DESIGN TOKENS (CSS variables) ------------------------- */
:root {
  --o-navy:       #0E2A47;
  --o-navy-deep:  #081A2C;
  --o-ochre:      #D69A2D;
  --o-ochre-dark: #A8771F;
  --o-ochre-light:#E5B056;
  --o-terracotta: #B5532A;
  --o-cream:      #F7F1E6;
  --o-sand:       #EDE3D0;
  --o-ink:        #1B2330;
  --o-muted:      #5A6573;
  --o-line:       #E3DACB;

  --o-radius:    8px;
  --o-radius-lg: 14px;
  --o-shadow-sm: 0 1px 2px rgba(14,42,71,.06), 0 2px 8px rgba(14,42,71,.04);
  --o-shadow-md: 0 4px 12px rgba(14,42,71,.08), 0 8px 24px rgba(14,42,71,.06);
}

/* ---- 2. UTILITY CLASSES (apply via section/block CSS class field) */
.o-bg-cream  { background-color: var(--o-cream) !important; }
.o-bg-sand   { background-color: var(--o-sand)  !important; }
.o-bg-navy   { background-color: var(--o-navy)  !important; color: #fff; }

.o-text-center { text-align: center; }

.o-divider {
  height: 3px;
  width: 56px;
  background: var(--o-ochre);
  border: 0;
  margin: 16px 0 24px;
}
.o-divider.o-center { margin-left: auto; margin-right: auto; }

/* Eyebrow — only useful if Ligne de présentation 2 doesn't fit your need */
.o-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--o-ochre-dark);
  margin-bottom: 12px;
}

/* Lead paragraph — apply via class on a <p> in editor source */
.o-lead {
  font-size: 1.18rem;
  color: var(--o-navy);
  line-height: 1.55;
  max-width: 62ch;
}

/* Pillar / value card — apply o-card to a text block inside a column */
.o-card {
  background: #fff;
  border: 1px solid var(--o-line);
  border-radius: var(--o-radius-lg);
  padding: 28px 24px;
  box-shadow: var(--o-shadow-sm);
  height: 100%;
}

/* ---- 3. NAV: small refinements ------------------------------- */
.cd-club-logo {
  height: 44px !important;
  max-height: 44px !important;
}
@media (max-width: 576px) {
  .cd-club-logo { height: 36px !important; max-height: 36px !important; }
}
.cd-club-logo-and-name { gap: 14px; }
.cd-club-name { padding-left: 4px; }
@media (max-width: 480px) {
  .cd-club-name { display: none !important; }
}

/* Login button refinement */
.cd-button-login {
  border-radius: var(--o-radius);
  padding: 6px 14px;
  transition: background .2s ease, border-color .2s ease;
}
.cd-button-login:hover {
  background: rgba(255,255,255,.08);
}

/* Menu hover/active state goes ochre */
.cd-megamenu a.cd-menu-item.cd-menu-active,
.cd-megamenu a.cd-menu-item:hover {
  color: var(--o-ochre-dark) !important;
}

/* ---- 4. BUTTONS (the panel doesn't fully control these) ------ */
a.cd-button-primary,
input.cd-button-primary,
button.cd-button-primary,
.cd-light a.cd-button-primary,
.cd-light input.cd-button-primary,
.cd-light button.cd-button-primary {
  background-color: var(--o-ochre) !important;
  color: #fff !important;
  border: 1px solid var(--o-ochre) !important;
  border-radius: var(--o-radius) !important;
  padding: 12px 24px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  letter-spacing: .03em !important;
  text-transform: none !important;
  text-decoration: none !important;
  transition: background .2s ease, transform .15s ease, box-shadow .2s ease;
  box-shadow: var(--o-shadow-sm);
}
a.cd-button-primary:hover,
input.cd-button-primary:hover,
button.cd-button-primary:hover {
  background-color: var(--o-ochre-dark) !important;
  border-color: var(--o-ochre-dark) !important;
  transform: translateY(-1px);
  box-shadow: var(--o-shadow-md);
}

a.cd-button-secondary,
input.cd-button-secondary,
button.cd-button-secondary {
  background-color: transparent !important;
  color: var(--o-navy) !important;
  border: 1.5px solid var(--o-navy) !important;
  border-radius: var(--o-radius) !important;
  padding: 11px 22px !important;
  font-weight: 600 !important;
  transition: background .2s ease, color .2s ease;
}
a.cd-button-secondary:hover,
input.cd-button-secondary:hover,
button.cd-button-secondary:hover {
  background-color: var(--o-navy) !important;
  color: #fff !important;
}
.cd-dark a.cd-button-secondary,
.cd-dark input.cd-button-secondary,
.cd-dark button.cd-button-secondary {
  color: #fff !important;
  border-color: rgba(255,255,255,.6) !important;
}
.cd-dark a.cd-button-secondary:hover {
  background-color: #fff !important;
  color: var(--o-navy) !important;
}

/* ---- 5. HERO IMAGE OVERLAY (if you ever switch back to image bg) */
.cd-brightness-glasspane {
  background-color: rgba(8,26,44,0.55) !important;
}

/* ---- 6. TILES / CARDS (news, events, committee) -------------- */
.cd-tile-h-box,
.cd-tile-v-box {
  background: #fff;
  border: 1px solid var(--o-line);
  border-radius: var(--o-radius-lg);
  box-shadow: var(--o-shadow-sm);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease;
}
.cd-tile-h-box:hover,
.cd-tile-v-box:hover {
  transform: translateY(-2px);
  box-shadow: var(--o-shadow-md);
}

/* ---- 7. LINKS (subtle ochre underline) ----------------------- */
.cd-block-content a:not(.cd-button-primary):not(.cd-button-secondary):not(.cd-menu-item) {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: rgba(214,154,45,.55);
  transition: text-decoration-color .2s ease, color .2s ease;
}
.cd-block-content a:not(.cd-button-primary):not(.cd-button-secondary):not(.cd-menu-item):hover {
  color: var(--o-ochre-dark);
  text-decoration-color: var(--o-ochre);
}

/* ---- 8. FOOTER ------------------------------------------------ */
.cd-footer {
  background-color: var(--o-navy-deep);
  color: rgba(255,255,255,.78);
}
.cd-footer h1, .cd-footer h2, .cd-footer h3, .cd-footer h4,
.cd-footer h5, .cd-footer h6 {
  color: #fff !important;
}
.cd-footer a {
  color: rgba(255,255,255,.85) !important;
  text-decoration: none !important;
}
.cd-footer a:hover {
  color: var(--o-ochre) !important;
}

.o-footer-mark img {
  max-width: 10px;
  height: auto;
  margin-bottom: 8px;
}

/* ---- 9. FORMS (membership, contact) -------------------------- */
.cd-block-content input[type="text"],
.cd-block-content input[type="email"],
.cd-block-content input[type="tel"],
.cd-block-content textarea,
.cd-block-content select {
  border: 1px solid var(--o-line) !important;
  border-radius: var(--o-radius) !important;
  padding: 12px 14px !important;
  font-size: 16px !important;
  background: #fff !important;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.cd-block-content input[type="text"]:focus,
.cd-block-content input[type="email"]:focus,
.cd-block-content textarea:focus {
  outline: none !important;
  border-color: var(--o-ochre) !important;
  box-shadow: 0 0 0 3px rgba(214,154,45,.18) !important;
}

/* ---- 10. ANNOUNCEMENT BAR (optional) ------------------------- */
/* Add CSS class "o-announce" to a text section as the first
   section of any page for a thin ochre strip. */
.o-announce { padding: 0 !important; }
.o-announce .cd-section-content {
  background: var(--o-ochre);
  color: #fff;
  text-align: center;
  padding: 10px 16px !important;
  font-size: 14px;
  font-weight: 500;
}
.o-announce a {
  color: #fff !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* ---- 11. MOBILE TUNING (subtle) ------------------------------ */
@media (max-width: 576px) {
  a.cd-button-primary, a.cd-button-secondary {
    display: inline-block;
    width: auto;
    text-align: center;
  }
}

/* ---- 12. ACCESSIBILITY --------------------------------------- */
*:focus-visible {
  outline: 2px solid var(--o-ochre) !important;
  outline-offset: 2px;
}
.cd-skip-link:focus {
  background: var(--o-navy);
  color: #fff;
  padding: 12px 20px;
  border-radius: 0 0 var(--o-radius) 0;
}

/* End of Onesimus custom CSS v3 */
