/* ===== Publicum custom styles ===== */

/* --- (1) Announcement box: full width fix --- */
.cmp_announcements .obj_announcement_summary {
  float: none !important;
  width: 100% !important;
  box-sizing: border-box !important;
  border-right: none !important;
}

/* --- (2) Header / nav bar in logo teal --- */
.pkp_structure_head,
.pkp_site_nav_menu {
  background: #40B8A8 !important;
}

/* --- (3) Header banner: sit flush, full width --- */
.pkp_head_wrapper .pkp_site_name_wrapper .pkp_site_name img,
.pkp_head_wrapper .pkp_site_name img {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  display: block;
}
.pkp_head_wrapper .pkp_site_name_wrapper {
  padding: 0 !important;
  margin: 0 !important;
  width: 100%;
}
.pkp_structure_head {
  padding-top: 0 !important;
}

/* --- (4) Links in teal palette --- */
a {
  color: #2e8577;
}
a:hover, a:focus {
  color: #226a5e;
}

/* --- (5) Nav links: hover effect --- */
.pkp_site_nav_menu a {
  color: #ffffff !important;
  font-weight: 600;
  transition: background-color .2s ease, color .2s ease;
  border-radius: 4px;
}
.pkp_site_nav_menu a:hover,
.pkp_site_nav_menu a:focus {
  background-color: rgba(255,255,255,0.18) !important;
  color: #ffffff !important;
}

/* --- (6) News / announcement item as a card --- */
.cmp_announcements .obj_announcement_summary {
  background: #ffffff;
  border: 1px solid #e6e9ec !important;
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
  padding: 1.4em 1.6em !important;
  margin-bottom: 1.4em;
  transition: box-shadow .2s ease, transform .2s ease;
}
.cmp_announcements .obj_announcement_summary:hover {
  box-shadow: 0 6px 20px rgba(64,184,168,0.18);
  transform: translateY(-2px);
}
.cmp_announcements .obj_announcement_summary .title,
.cmp_announcements .obj_announcement_summary .title a {
  color: #226a5e;
}

/* --- (7) Modern buttons --- */
.pkp_button,
a.pkp_button,
.cmp_button,
button.pkp_button {
  background: #40B8A8 !important;
  border: none !important;
  border-radius: 6px !important;
  color: #ffffff !important;
  padding: .6em 1.2em !important;
  font-weight: 600;
  box-shadow: 0 2px 6px rgba(64,184,168,0.25);
  transition: background-color .2s ease, transform .1s ease, box-shadow .2s ease;
}
.pkp_button:hover,
a.pkp_button:hover,
.cmp_button:hover,
button.pkp_button:hover {
  background: #2e8577 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(64,184,168,0.35);
}

.read_more, .obj_announcement_summary .read_more {
  display: inline-block;
  margin-top: .6em;
  font-weight: 600;
  color: #2e8577;
}

/* --- (8) Spacing --- */
.pkp_structure_content {
  padding-top: 1.5em;
}
.homepage_block, .pkp_block, .cmp_announcements {
  margin-bottom: 2em;
}

/* --- (9) Sidebar block headings accent --- */
.pkp_block .title, .pkp_block h2, .pkp_sidebar .title {
  border-left: 4px solid #40B8A8;
  padding-left: .5em;
  font-weight: 700;
}
