/* Keynote Speaker Card Styles */
.keynote-speaker {
  max-width: 650px;
  margin: 2.5rem auto;
  padding: 2rem 1.5rem;
  background: #e3f2fd;
  border-radius: 18px;
  box-shadow: 0 4px 16px rgba(46, 60, 90, 0.10);
  text-align: center;
}
.keynote-speaker-card {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 1.5rem;
  background: #f4f6fb;
  border-radius: 18px;
  box-shadow: 0 4px 18px rgba(46, 60, 90, 0.13);
  padding: 2rem 1.5rem;
}
.speaker-image-container {
  position: relative;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(46, 60, 90, 0.13);
  transition: box-shadow 0.2s;
}
.speaker-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
  transition: filter 0.3s;
}
.speaker-hover-info {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(25, 55, 109, 0.95);
  color: #ffe082;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1.2rem;
  transition: opacity 0.3s;
  text-align: center;
}
.speaker-image-container:hover .speaker-hover-info {
  opacity: 1;
  pointer-events: auto;
}
.speaker-image-container:hover .speaker-image {
  filter: blur(2px) brightness(0.7);
}
/* Section Divider Styles */
.section-divider {
  border: none;
  height: 5px;
  width: 80%;
  margin: 2.5rem auto 2.5rem auto;
  border-radius: 3px;
  background: linear-gradient(90deg, #43e97b 0%, #19376d 50%, #ffe082 100%);
  opacity: 0.7;
  box-shadow: 0 2px 8px rgba(46, 60, 90, 0.10);
}
/* Event Timer Styles */
.event-timer {
  margin: 1.2rem auto 0 auto;
  padding: 0.7rem 2rem;
  background: linear-gradient(90deg, #43e97b 0%, #38f9d7 100%);
  color: #19376d;
  font-size: 1.35rem;
  font-weight: 700;
  border-radius: 14px;
  box-shadow: 0 2px 12px rgba(46, 60, 90, 0.10);
  text-align: center;
  letter-spacing: 1px;
  font-family: 'Montserrat', Arial, sans-serif;
  display: inline-block;
}
/* Unity & Progress Section Styles */
.unity-title-card {
  width: 100%;
  margin-bottom: 1.5rem;
  display: flex;
  justify-content: center;
}
.unity-title-card h4 {
  background: linear-gradient(90deg, #43e97b 0%, #38f9d7 100%);
  color: #19376d;
  font-size: 1.6rem;
  font-weight: 800;
  padding: 1rem 2.5rem;
  border-radius: 18px;
  box-shadow: 0 2px 16px rgba(46, 60, 90, 0.12);
  letter-spacing: 1px;
  text-align: center;
  font-family: 'Montserrat', Arial, sans-serif;
}
.unity-block {
  background: linear-gradient(135deg, #e3f2fd 0%, #f4f6fb 100%);
  border-radius: 18px;
  box-shadow: 0 2px 12px rgba(46, 60, 90, 0.10);
  padding: 1.5rem 1.2rem;
  max-width: 320px;
  min-width: 260px;
  flex: 1 1 260px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: transform 0.2s, box-shadow 0.2s;
  border: 2px solid #43e97b;
  box-shadow: 0 4px 18px rgba(46, 60, 90, 0.13);
}
.unity-block:hover {
  transform: translateY(-6px) scale(1.03);
  box-shadow: 0 6px 24px rgba(46, 60, 90, 0.18);
}
.unity-icon {
  font-size: 2.2rem;
  margin-bottom: 0.7rem;
}
.unity-block h5 {
  font-size: 1.2rem;
  font-weight: 700;
  color: #19376d;
  margin-bottom: 0.5rem;
}
.unity-block p {
  font-size: 1rem;
  color: #222;
  margin-bottom: 0.7rem;
}
.unity-block blockquote {
  font-size: 0.98rem;
  color: #2b5876;
  background: #e0f7fa;
  border-left: 4px solid #43e97b;
  padding: 0.5rem 1rem;
  border-radius: 8px;
  margin: 0.5rem 0 0 0;
}
.unity-block blockquote span {
  display: block;
  font-size: 0.9rem;
  color: #19376d;
  margin-top: 0.3rem;
}
.unity-section {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
  margin: 2rem 0;
}
.footer-socials {
  display: flex;
  justify-content: center;
  gap: 1.2rem;
  margin-bottom: 0.7rem;
}
.social-icon {
  display: inline-block;
  transition: transform 0.2s, box-shadow 0.2s;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(46, 60, 90, 0.10);
}
.social-icon:hover {
  transform: scale(1.15);
  box-shadow: 0 4px 16px rgba(46, 60, 90, 0.18);
}
body {
  position: relative;
}
body::after {
  content: '';
  position: fixed;
  top: 0;
  right: 0;
  width: 520px;
  height: 100vh;
  background: url('data:image/svg+xml;utf8,<svg width="520" height="2000" viewBox="0 0 520 2000" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M520,0 C340,300 120,200 0,600 C120,1000 340,800 520,1200 C340,1600 120,1400 0,2000" stroke="%2339a0ed" stroke-width="12" fill="none"/></svg>');
  background-repeat: no-repeat;
  background-position: right top;
  z-index: 0;
  opacity: 0.35;
  pointer-events: none;
}
body::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 520px;
  height: 100vh;
  background: url('data:image/svg+xml;utf8,<svg width="520" height="2000" viewBox="0 0 520 2000" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0,0 C180,300 400,200 520,600 C400,1000 180,800 0,1200 C180,1600 400,1400 520,2000" stroke="%2339a0ed" stroke-width="12" fill="none"/></svg>');
  background-repeat: no-repeat;
  background-position: left top;
  z-index: 0;
  opacity: 0.35;
  pointer-events: none;
}
main, header, section, footer {
  position: relative;
  z-index: 1;
}
 body {
   font-family: 'Montserrat', Arial, sans-serif;
   background: linear-gradient(135deg, #0a2342 0%, #19376d 100%);
   margin: 0;
   color: #f4f6fb;
 }
.header-flex {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2.5rem;
  padding: 2.5rem 2.5rem 1.5rem 2.5rem;
}
.header-side {
  flex: 0 0 90px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header-left {
  justify-content: flex-start;
}
.header-right {
  justify-content: flex-end;
}
.header-content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.7rem;
  width: 100%;
  padding: 0;
  text-align: center;
}
.kenya-flag-icon {
  width: 64px;
  height: 44px;
  border-radius: 6px;
  border: 2px solid #43e97b;
  box-shadow: 0 2px 8px rgba(46, 60, 90, 0.15);
  background: #fff;
  padding: 2px;
  margin-left: 1rem;
}
header {
  background: url('https://images.unsplash.com/photo-1506744038136-46273834b3fb?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat, linear-gradient(90deg, #19376d 0%, #2b5876 100%);
  color: #ffe082;
  border-radius: 0 0 24px 24px;
  box-shadow: 0 4px 16px rgba(46, 60, 90, 0.10);
  position: relative;
  min-height: 340px;
}
header::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: linear-gradient(90deg, rgba(10,35,66,0.7) 0%, rgba(25,55,109,0.7) 100%);
  border-radius: 0 0 24px 24px;
  z-index: 1;
}
.header-flex {
  position: relative;
  z-index: 2;
}
/* Removed stray closing braces and duplicate/invalid blocks for header, body, and flex */
.event-logo-svg {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90px;
  height: 90px;
  margin-right: 8px;
}
.event-logo-abbr {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90px;
  height: 90px;
  margin-right: 8px;
  background: linear-gradient(90deg, #0a2342 0%, #19376d 100%);
  border-radius: 50%;
}
h1 {
  font-size: 2.3rem;
  font-weight: 800;
  margin: 0 auto 0.5rem auto;
  display: block;
  text-align: center;
}
.kenya-flag {
  display: inline-block;
  margin-left: 0.5rem;
}
.kenya-shield-logo {
  width: 90px;
  height: 90px;
  object-fit: contain;
  background: linear-gradient(90deg, #0a2342 0%, #19376d 100%);
  border-radius: 50%;
  display: block;
  margin-left: 1rem;
}
.theme {
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 1.2px;
  color: #ffe082;
  text-shadow: 1px 1px 4px #2b5876;
  margin: 0 auto 0.5rem auto;
  text-align: center;
  text-align: center;
  font-family: 'Roboto', Arial, sans-serif;
}
.sub-header {
  font-size: 1.15rem;
  color: #ffe082;
  font-weight: 500;
  background: linear-gradient(90deg, #19376d 0%, #2b5876 100%);
  padding: 0.5rem 1.2rem;
  border-radius: 12px;
  display: inline-block;
  box-shadow: 0 2px 12px rgba(25, 55, 109, 0.10);
  margin: 0 auto 1.2rem auto;
  text-align: center;
  text-align: center;
  font-family: 'Roboto', Arial, sans-serif;
  animation: blink 2s steps(2, start) infinite;
}

@keyframes blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
/* Removed stray closing brace after keyframes blink */
}
/* Keep grouped section for others, but override payment background below */
.event-details, .objectives, .tickets {
  background: #19376d;
  margin: 2.5rem auto;
  padding: 2.5rem 2rem;
  border-radius: 18px;
  max-width: 650px;
  box-shadow: 0 4px 16px rgba(25, 55, 109, 0.10);
  transition: box-shadow 0.2s;
  color: #ffe082;
}
.payment {
  background: #19376d !important;
  color: #ffe082;
  border: 2px solid #ffe082;
/* Removed stray closing brace after .payment block */
}
 .event-details, .objectives, .payment, .tickets {
   background: #19376d;
   margin: 2rem auto;
   padding: 2rem 1.5rem;
   border-radius: 18px;
   max-width: 700px;
   box-shadow: 0 4px 24px rgba(10, 35, 66, 0.18);
   transition: box-shadow 0.2s;
   color: #ffe082;
   border: 2px solid #ffe082;
 }
 .event-details:hover, .objectives:hover, .payment:hover, .tickets:hover {
   box-shadow: 0 8px 32px rgba(10, 35, 66, 0.28);
 }
h4 {
  color: #2b5876;
  margin-bottom: 1rem;
  font-size: 1.4rem;
  letter-spacing: 1px;
  font-family: 'Montserrat', Arial, sans-serif;
}
ul {
  list-style: none;
  padding: 0;
}
ul li {
  margin-bottom: 0.7rem;
  font-size: 1.08rem;
  font-family: 'Roboto', Arial, sans-serif;
 h4 {
   color: #ffe082;
   margin-bottom: 1rem;
   font-size: 1.3rem;
   letter-spacing: 0.5px;
 }
}
table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1rem;
  font-size: 1.13rem;
}
th, td {
  border: 1.5px solid #ffe082;
  padding: 1rem;
  text-align: left;
  color: #ffe082;
}
th {
  background: #19376d;
  color: #ffe082;
}
 th {
  background: #19376d;
  color: #ffe082;
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: 1.15rem;
 }
.ticket-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: linear-gradient(90deg, #ffe082 0%, #19376d 100%);
  color: #19376d;
  padding: 0.85rem 2.2rem;
  border-radius: 10px;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.18rem;
  box-shadow: 0 2px 8px rgba(25, 55, 109, 0.10);
  transition: background 0.2s, color 0.2s;
}
.ticket-btn:hover {
  background: linear-gradient(90deg, #19376d 0%, #ffe082 100%);
  color: #ffe082;
}
.ticket-icon {
  font-size: 1.3rem;
}
.mpesa-sticker {
  background: linear-gradient(90deg, #19376d 0%, #ffe082 100%);
  color: #19376d;
  padding: 1.2rem 1.5rem;
  border-radius: 16px;
  margin-top: 1.5rem;
  box-shadow: 0 2px 12px rgba(46, 60, 90, 0.10);
 .ticket-btn {
   display: inline-flex;
   align-items: center;
   gap: 0.5rem;
   background: linear-gradient(90deg, #ffe082 0%, #f9d423 100%);
   color: #19376d;
   padding: 0.85rem 2.2rem;
   border-radius: 10px;
   text-decoration: none;
   font-weight: 700;
  font-size: 1.18rem;
   box-shadow: 0 2px 8px rgba(10, 35, 66, 0.10);
   transition: background 0.2s, color 0.2s;
 }
 .ticket-btn:hover {
   background: linear-gradient(90deg, #f9d423 0%, #ffe082 100%);
   color: #0a2342;
 }
  font-weight: 600;
  border: 2px solid #2b5876;
}
 .mpesa-sticker {
   background: linear-gradient(90deg, #ffe082 0%, #f9d423 100%);
   color: #19376d;
   padding: 1.2rem 1.5rem;
   border-radius: 16px;
   margin-top: 1.5rem;
   box-shadow: 0 2px 12px rgba(10, 35, 66, 0.10);
   display: flex;
   flex-direction: column;
   align-items: center;
   font-size: 1.15rem;
   font-weight: 600;
   border: 2px solid #19376d;
 }
.mpesa-logo {
  font-size: 1.3rem;
  font-weight: 700;
  color: #2b5876;
  margin-bottom: 0.5rem;
}
.mpesa-logo span {
  color: #19376d;
  font-weight: 900;
}
.mpesa-instructions {
  margin-bottom: 0.5rem;
  font-size: 1.05rem;
}
.mpesa-paybill, .mpesa-account {
  font-size: 1.25rem;
  margin-bottom: 0.3rem;
}
.mpesa-paybill span, .mpesa-account span {
  color: #19376d;
  font-weight: 900;
  background: #ffe082;
  padding: 0.1rem 0.5rem;
  border-radius: 6px;
  border: 1px solid #19376d;
}
.mpesa-note {
  font-size: 0.95rem;
  color: #ffe082;
  margin-top: 0.5rem;
  font-style: italic;
}
footer {
  text-align: center;
  padding: 1.2rem;
  background: linear-gradient(90deg, #19376d 0%, #ffe082 100%);
  color: #19376d;
  margin-top: 2rem;
  border-radius: 0 0 24px 24px;
  font-size: 1.08rem;
  font-family: 'Roboto', Arial, sans-serif;
  box-shadow: 0 -2px 8px rgba(25, 55, 109, 0.10);
}
 footer {
   text-align: center;
   padding: 1.2rem;
   background: linear-gradient(90deg, #0a2342 0%, #19376d 100%);
   color: #ffe082;
   margin-top: 2rem;
   border-radius: 0 0 24px 24px;
   font-size: 1.05rem;
   box-shadow: 0 -2px 8px rgba(10, 35, 66, 0.10);
 }
@media (max-width: 700px) {
  .event-details, .objectives, .payment, .tickets {
    max-width: 98vw;
    padding: 1rem;
  }
  .header-flex {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.2rem;
    padding: 1.5rem 0.5rem 0.5rem 0.5rem;
  }
  header {
    border-radius: 0 0 12px 12px;
  }
  .header-content {
    align-items: center;
    text-align: center;
    padding-left: 0;
  }
  .mpesa-sticker {
    padding: 1rem 0.5rem;
    font-size: 1rem;
  }
}

/* Keynote Speaker Section Background */


/* Restore keynote speaker card background */
.keynote-speaker-card {
  background: #f4f6fb;
}
