.quote-card {
  background-color: #f8f9fa;
  border-radius: 16px;
  padding: 2rem;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  transition: box-shadow 0.3s ease, transform 0.3s ease;
  max-width: 800px;
  margin: 0 auto;
}

.quote-card:hover {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06);
  transform: translateY(-4px);
}

.quote-text {
  font-style: italic;
  font-size: 20px;
  line-height: 1.6;
  color: #043548;
  margin-bottom: 1rem;
}

.quote-author {
  color: #35bcbf;
  font-weight: 600;
  font-size: 16px;
}


.hover-card {
  border-radius: 16px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: block;
}

.hover-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.card-title {
  font-size: 18px;
  font-weight: 700;
  margin-top: 1rem;
  color: #043548;
  text-align: center;
}

.card-description {
  font-size: 14px;
  color: hsl(0, 0%, 45%);
  text-align: center;
  margin-top: 0.5rem;
}

.feature-card {
  background-color: #ffffff;
  border-radius: 16px;
  padding: 2rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  text-align: center;
  border: 1px solid rgba(4, 53, 72, 0.08); /* subtle border */
}

.feature-card-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

@media (min-width: 600px) {
  .feature-card-wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .feature-card-wrapper {
    grid-template-columns: repeat(4, 1fr);
  }
}

.feature-card-wrapper > .feature-card {
  flex: unset;
}

@media (max-width: 599px) {
  .feature-card {
    padding: 1.25rem;
  }
}


.feature-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.05);
}

.media-banner:hover img{ transform: scale(1.015); }

.blurb-card {
  padding: 2rem;
  background: #ffffff;
  border-radius: 16px;
  transition: all 0.3s ease;
  text-align: center;
}

.blurb-card:hover {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06);
}

.testimonial-card {
  background-color: #ffffff;
  padding: 1.5rem;
  border-radius: 12px;
  box-shadow: 0 0 0 1px rgba(0,0,0,0.05);
  text-align: left;
  height: 100%;
}

.star-rating {
  color: #facc15; /* Tailwind's yellow-400 */
  font-size: 20px;
  margin-bottom: 1rem;
}

.testimonial-text {
  color: #1a1a1a;
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 1rem;
}

.testimonial-footer {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.name {
  font-weight: 600;
  color: #043548;
}

.title {
  font-size: 14px;
  color: hsl(0, 0%, 45%);
}


.quote-section {
  text-align: center;
  width: 100%;
  max-width: clamp(300px, 85%, 640px);
  margin: 0 auto;
  padding: 3rem 1.5rem;
}



.quote-icon {
  font-size: 48px;
  color: #043548;
  margin-bottom: 1rem;
}

.quote-text {
  font-size: 24px;
  font-weight: 300;
  line-height: 1.6;
  color: #043548;
  margin-bottom: 1rem;
}

.quote-author {
  font-size: 14px;
  color: hsl(0, 0%, 45%);
  font-style: italic;
}


.base-card {
  background-color: #ffffff;
  color: #1a1a1a;
  border-radius: 12px;
  border: 1px solid #e0e0e0;
  padding: 1.5rem;
  text-align: left;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  transition: all 0.3s ease;
}

.hover-lift:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.06);
}

.featured-card {
  background-color: rgba(53, 188, 191, 0.05); /* accent/10 */
  border: 1px solid rgba(53, 188, 191, 0.2);   /* accent/20 */
}

.card-title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: #043548;
}

.card-description {
  font-size: 14px;
  color: hsl(0, 0%, 45%);
  margin-bottom: 0.5rem;
}

.badge {
  background-color: #043548;
  color: #ffffff;
  font-size: 12px;
  padding: 0.25rem 0.5rem;
  border-radius: 999px;
  font-weight: 600;
}

.avatar-circle {
  background-color: #f4f4f4;
  border-radius: 999px;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  color: #043548;
}

.episode-card {
  background-color: #fff;
  padding: 1.0rem;
  border-radius: 16px;
  box-shadow: 0 0 0 1px rgba(0,0,0,0.05);
  font-family: 'Inter', sans-serif;
  width: 100%;
  min-width: 0;
  overflow: hidden;
}

.episode-grid > .episode-card {
  max-width: none;
}

.episode-category {
  color: #00a58e;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 0.5rem;
}

.episode-title {
  font-size: 18px;
  font-weight: 700;
  color: #043548;
  margin-bottom: 0.5rem;
}

.episode-desc {
  font-size: 15px;
  color: #555;
  line-height: 1.6;
  margin-bottom: 0.75rem;
}

.episode-guest {
  font-size: 14px;
  color: #666;
  font-style: italic;
  margin-bottom: 1rem;
}

.episode-links {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.right-col {
  background: #043548;
  color: #ffffff;
  border-radius: 12px;
  padding: 24px 28px;
}

.right-col h3 {
  margin-top: 0;
  margin-bottom: 16px;
 color:#fff!important;
}

.right-col ul {
  list-style: none;
  padding-left: 0;
  margin: 0 0 16px 0;
}

.right-col ul li {
  position: relative;
  padding-left: 18px;
  margin-bottom: 10px;
}

.right-col ul li::before {
  content: '';
  position: absolute;
  top: 8px;
  left: 0;
  width: 6px;
  height: 6px;
  background: #ffd666; /* gold bullet */
  border-radius: 50%;
}

.right-col .highlight {
  font-weight: 700;
  color: #ffd666!important; /* gold text */
}

.left-col .card {
  background: #ffffff;
  border-radius: 12px;
  padding: 16px 20px;
  margin-bottom: 16px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}


/* Icon baseline */
.feature-card .icon {
  font-size: 42px;
  line-height: 1;
  margin-bottom: 12px;
  transition: transform .22s ease, filter .22s ease, text-shadow .22s ease;
  will-change: transform;
}

/* Hover effect */
.feature-card:hover .icon {
  transform: translateY(-4px) scale(1.06);
  filter: drop-shadow(0 6px 12px rgba(4,53,72,.12)) saturate(1.05);
  text-shadow: 0 6px 14px rgba(4,53,72,.10);
}

.media-row {
  border: 1px solid rgba(4, 53, 72, 0.08); /* subtle border */
  border-radius: 16px;
  padding: 24px!important;
  box-shadow: 0 1px 0 rgba(4, 53, 72, 0.04);
  width:50%!important;
	background:#fff!important;
}


/* Hover: same gentle lift + shadow as cards */
.media-banner:hover {
  transform: translateY(-4px)!important;
  box-shadow: 0 12px 24px rgba(4,53,72,0.12)!important;
  border-color: rgba(4,53,72,0.15)!important;
}

.media-banner:hover img {
  transform: scale(1.02)!important;
}

.highlight-box .icon.yes {
  color: #22c55e; /* green */
}

.highlight-box .icon.no {
  color: #ef4444; /* red */
}


/* Card shell */
.service-card{
  background:#fff;
  border:1px solid rgba(4,53,72,.10);
  border-radius:16px;
  padding:22px 24px;
  box-shadow:0 1px 0 rgba(4,53,72,.04);
}

/* Title + subhead */
.service-title{
  margin:0 0 6px 0;
  color:#043548;
  font-weight:800;
}
.service-sub{
  margin:0 0 16px 0;
  font-weight:600;
}

/* List */
.list-heading{
  margin:0 0 8px 0;
  font-weight:700;
  color:#043548;
}
.service-list{
  list-style:none!important; margin:0; padding:0;
}
.service-list li{
  position:relative;
  padding-left:16px;
  margin:8px 0;
}
.service-list li::before{
  content:"";
  position:absolute; left:0; top:10px;
  width:7px; height:7px; border-radius:50%;
  background:#35bcbf;              /* green dot */
}

/* Divider + actions */
.service-divider{
  border:0; height:1px;
  background:rgba(4,53,72,.12);
  margin:18px 0 14px;
}
.service-actions{
  display:flex; justify-content:flex-end;
}

/* Optional: match your other gentle hover cards if hover-lift isn't global */
.service-card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 24px rgba(4,53,72,.10);
  border-color:rgba(4,53,72,.15);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

@media (max-width:600px){
  .service-card{ padding:18px; }
}

/* Services hub layout */
.services-hero-lead {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.55;
}

.services-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  margin: 0;
}

@media (min-width: 768px) {
  .services-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.services-cta {
  text-align: center;
}

.services-cta__heading {
  max-width: 560px;
  margin: 0 auto 1.5rem;
  color: #043548;
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.45;
}

.services-cta__rule {
  margin-top: 2.5rem;
}

.services-cta__rule .rule-label {
  box-shadow: 0 0 0 6px #f9f9f9;
}

.services-cta__rule::before {
  width: 80%;
  max-width: 720px;
}
