/* =========================================================================
   PDCR 2025 — Bootstrap 5.3 theme (light + botanical green)
   Layered on top of Bootstrap; relies on Bootstrap utilities where possible.
   ========================================================================= */
:root {
  --pdcr-green:        #1b7f4d;
  --pdcr-green-dark:   #0f5f39;
  --pdcr-green-darker: #0b3d26;
  --pdcr-accent:       #7cb342;
  --pdcr-radius:       1rem;
}

html { scroll-padding-top: 4.5rem; } /* offset for the sticky navbar */
body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* -- Links accented green -- */
a { color: var(--pdcr-green-dark); text-decoration: none; }
a:hover { color: var(--pdcr-green); text-decoration: underline; }
.navbar a:hover, .btn:hover, .pdcr-hero a:hover, .pdcr-band a:hover, .pdcr-footer a:hover { text-decoration: none; }

/* -- Navbar -- */
.pdcr-navbar {
  background: linear-gradient(90deg, var(--pdcr-green-darker), var(--pdcr-green-dark));
  box-shadow: 0 .25rem .75rem rgba(11, 61, 38, .25);
}
.pdcr-navbar .navbar-brand .fw-bold { letter-spacing: .02em; }
.pdcr-brand-logo { object-fit: contain; background: #fff; border-radius: 6px; padding: 2px; }
.pdcr-navbar .dropdown-menu { --bs-dropdown-link-active-bg: var(--pdcr-green); }

/* -- Hero (home) -- */
.pdcr-hero {
  background:
    linear-gradient(rgba(11, 61, 38, .82), rgba(15, 95, 57, .80)),
    url("../images/Almaty.jpg") center / cover no-repeat;
  color: #fff;
  padding: 4.5rem 0 4rem;
}
.pdcr-hero h1 { font-weight: 700; letter-spacing: -.01em; }
.pdcr-hero .lead { color: rgba(255, 255, 255, .9); }
.pdcr-hero a { color: #fff; text-decoration: underline; }

/* -- Slim band (inner pages) -- */
.pdcr-band {
  background: linear-gradient(90deg, var(--pdcr-green-darker), var(--pdcr-green-dark));
  color: #fff;
  padding: 2.5rem 0;
}
.pdcr-band h1 { font-weight: 700; margin: 0; }
.pdcr-band a { color: #fff; }

.pdcr-badge {
  display: inline-block;
  background: rgba(255, 255, 255, .15);
  border: 1px solid rgba(255, 255, 255, .25);
  border-radius: 999px;
  padding: .3rem .9rem;
  font-size: .85rem;
}

/* -- Buttons (green primary, Bootstrap CSS-var driven) -- */
.btn-pdcr {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--pdcr-green);
  --bs-btn-border-color: var(--pdcr-green);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--pdcr-green-dark);
  --bs-btn-hover-border-color: var(--pdcr-green-dark);
  --bs-btn-active-bg: var(--pdcr-green-darker);
  --bs-btn-active-border-color: var(--pdcr-green-darker);
  --bs-btn-focus-shadow-rgb: 27, 127, 77;
}
.btn-outline-pdcr {
  --bs-btn-color: var(--pdcr-green-dark);
  --bs-btn-border-color: var(--pdcr-green);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--pdcr-green);
  --bs-btn-hover-border-color: var(--pdcr-green);
  --bs-btn-active-bg: var(--pdcr-green-dark);
  --bs-btn-active-border-color: var(--pdcr-green-dark);
  --bs-btn-focus-shadow-rgb: 27, 127, 77;
}

/* -- Accents -- */
.text-pdcr { color: var(--pdcr-green-dark) !important; }
.bg-pdcr-soft { background: rgba(27, 127, 77, .07); }
h2, h3, .section-title { color: var(--pdcr-green-darker); }

/* -- Cards -- */
.pdcr-card {
  border: 0;
  border-radius: var(--pdcr-radius);
  box-shadow: 0 .25rem 1rem rgba(11, 61, 38, .08);
  transition: transform .15s ease, box-shadow .15s ease;
}
.pdcr-card-hover:hover { transform: translateY(-3px); box-shadow: 0 .6rem 1.4rem rgba(11, 61, 38, .14); }

/* -- Tables (speakers / committees) -- */
.pdcr-table thead th {
  background: var(--pdcr-green-dark);
  color: #fff;
  border-color: var(--pdcr-green-dark);
  white-space: nowrap;
}
.pdcr-table tbody tr:hover > * { background: rgba(27, 127, 77, .06); }

/* -- Sponsor logos -- */
.pdcr-logo {
  max-height: 90px;
  max-width: 100%;
  width: auto;
  object-fit: contain;
}
.pdcr-org-logo { max-height: 70px; max-width: 100%; width: auto; object-fit: contain; }

/* -- Footer -- */
.pdcr-footer { background: var(--pdcr-green-darker); color: rgba(255, 255, 255, .85); }
.pdcr-footer a { color: #fff; }
.pdcr-footer img { background: #fff; border-radius: 6px; padding: 4px; }

/* -- Language switch buttons -- */
.pdcr-lang { padding: .15rem .55rem; font-size: .8rem; min-width: 2.3rem; }
