 .campaign-hero {
     background: linear-gradient(135deg, #0D2B3E 0%, #1B4F72 100%);
     min-height: 340px;
     display: flex;
     align-items: flex-end;
     padding: 60px 10px 40px;
     position: relative;
     overflow: hidden;
 }

 .campaign-hero::before {
     content: '';
     position: absolute;
     inset: 0;
     background-image: radial-gradient(circle at 70% 50%, rgba(46, 196, 182, 0.15) 0%, transparent 60%);
 }

 .sticky-donate {
     /* position: sticky; */
     /* top: 82px; */
 }

 .update-dot {
     width: 10px;
     height: 10px;
     border-radius: 50%;
     background: var(--teal);
     flex-shrink: 0;
     margin-top: 5px;
 }

 .share-btn {
     border: 1.5px solid var(--border);
     background: transparent;
     color: var(--text-muted);
     border-radius: 8px;
     padding: 8px 14px;
     font-size: 0.8rem;
     font-family: var(--font-head);
     font-weight: 600;
     cursor: pointer;
     display: inline-flex;
     align-items: center;
     gap: 6px;
     transition: all 0.18s;
 }

 .share-btn:hover {
     border-color: var(--teal);
     color: var(--teal);
 }

 .milestone {
     background: var(--teal-light);
     border-left: 3px solid var(--teal);
     border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
     padding: 12px 16px;
     margin-bottom: 10px;
 }

 .donor-avatar {
     width: 36px;
     height: 36px;
     border-radius: 50%;
     background: linear-gradient(135deg, var(--teal), var(--navy));
     display: flex;
     align-items: center;
     justify-content: center;
     color: #fff;
     font-family: var(--font-head);
     font-weight: 700;
     font-size: 0.8rem;
     flex-shrink: 0;
 }

 .video-player-shell {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-md);
  padding: 12px;
}

.video-embed-ratio {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  border-radius: calc(var(--radius-md) - 4px);
  overflow: hidden;
  background: #000;
}

.video-embed-ratio iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}