/*
Theme Name: K C Das Memorial Charitable Trust Theme
Author: K C Das Web Tech Team
Version: 1.0
Description: Custom WordPress theme for K C Das Memorial Charitable Trust
*/

:root {
  --kcd-font-heading: "Noto Serif", "Noto Serif Devanagari", "Noto Serif Telugu",
    serif;
  --kcd-font-body: "Noto Sans", "Noto Sans Devanagari", "Noto Sans Telugu",
    sans-serif;

  --kcd-font-size-base: 18px;
  --kcd-line-height-base: 1.6;

  --kcd-saffron-flame: #ff6f00;
  --kcd-divine-gold: #f4c430;
  --kcd-sacred-white: #f0f0f0;
  --kcd-lotus-red: #d32f2f;
  --kcd-ksheera-blue: #3f51b5;
  --kcd-tulsi-green: #4caf50;
  --kcd-ash-grey: #9e9e9e;
  --kcd-kali-black: #212121;

  --kcd-button-primary: #d32f2f;
  --kcd-button-primary-hover: #b71c1c;
  --kcd-button-primary-active: #9a0007;
}

/* Base */
body {
  font-family: var(--kcd-font-body);
  font-size: var(--kcd-font-size-base);
  line-height: var(--kcd-line-height-base);
  margin: 0;
  padding: 0;
  background-color: #fff;
  color: var(--kcd-kali-black);
  word-break: break-word;
}

a {
  text-decoration: none;
  transition: color 0.2s ease, text-decoration 0.2s ease;
}

a:hover,
a:focus {
  text-decoration: underline;
}

/* Typography */
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6 .h6 {
  line-height: 1.3;
  margin: 2rem 0 1rem;
  font-weight: 600;
  color: var(--kcd-lotus-red) !important;
}

h1 {
  font-size: 2.25rem;
  font-family: var(--kcd-font-heading);
}

p.h1 {
  font-family: var(--kcd-font-heading);
}

h2 {
  font-size: 1.75rem;
}
h3 {
  font-size: 1.5rem;
}
h4 {
  font-size: 1.25rem;
}
h5 {
  font-size: 1.125rem;
}
h6 {
  font-size: 1rem;
}

h3 a {
  color: var(--kcd-lotus-red);
  text-decoration: none;
}

p {
  margin-bottom: 1.25rem;
}

.card p a {
  color: var(--kcd-kali-black);
  text-decoration: none;
}

/* Buttons */
.btn.btn-primary {
  border-color: var(--kcd-button-primary);
  background-color: var(--kcd-button-primary);
  color: var(--kcd-sacred-white);
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.btn.btn-primary:hover {
  border-color: var(--kcd-button-primary-hover);
  background-color: var(--kcd-button-primary-hover);
}

.btn.btn-primary:active {
  border-color: var(--kcd-button-primary-active);
  background-color: var(--kcd-button-primary-active);
}

/* Layout */
header {
  background-color: var(--kcd-divine-gold);
}
footer {
  background-color: var(--kcd-sacred-white);
}

/* Navigation */
.primary-menu-wrapper .navbar-nav {
  gap: 32px;
}

.primary-menu-wrapper li.menu-item a.nav-link {
  padding: 0;
}

.primary-menu-wrapper > ul li.menu-item.current-menu-parent > a.nav-link,
.primary-menu-wrapper
  > ul
  li.menu-item.current-menu-parent
  .current-menu-item
  a.nav-link,
.primary-menu-wrapper > ul > li.menu-item.current_page_item > a.nav-link {
  color: var(--kcd-lotus-red);
}

/* Desktop dropdowns */
@media screen and (min-width: 992px) {
  .primary-menu-wrapper .nav-item.dropdown:hover ul.dropdown-menu {
    width: 280px;
    padding: 16px;
    gap: 16px;
    display: flex;
    flex-direction: column;
  }
}

/* Mobile nav */
@media screen and (max-width: 992px) {
  .primary-menu-wrapper .navbar-nav {
    gap: 16px;
  }

  .primary-menu-wrapper .nav-link.dropdown-toggle::after {
    display: none;
  }

  .primary-menu-wrapper .nav-item.dropdown:hover ul.dropdown-menu,
  .primary-menu-wrapper .nav-item.dropdown .dropdown-menu {
    display: flex;
    flex-direction: column;
    gap: 16px;
    border: none;
    padding: 16px 0 16px 24px;
    width: 280px;
  }
}

/* Social Links */
.nav.social-links {
  gap: 16px;
}

.nav.social-links a {
  color: var(--kcd-kali-black);
  transition: color 0.2s ease;
}

.nav.social-links a:hover {
  color: #000; /* Option: define a --kcd-kali-darker */
}

.nav.social-links.social-links-lg a i {
  font-size: 32px;
}

a.card h5 {
  color: var(--kcd-lotus-red, #d32f2f);
}

.page-specific-posts .text-truncate-2 {
  color: var(--kcd-kali-black, #212121);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

a.card {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

a.card:hover {
  box-shadow: var(--bs-box-shadow-lg) !important;
}

blockquote.alert.alert-secondary {
  background-color: var(--kcd-sacred-white);
}

blockquote p {
  margin-bottom: 8px;
  font-weight: 600;
}

blockquote p:last-child {
  margin-bottom: 0;
}
