  /* Fonts */
    :root {
      --accent1: #ff6b35; /* light orange/red */
      --accent2: #ff416c; /* pink/red */
      --accent3: #ffd166; /* yellow */
      --accent4: #7c4dff; /* purple */
      --bg: #ffffff;
      --muted: #6c757d;
    }
    html,body { height:100%; }
    body {
      font-family: "Segoe UI", "Oswald", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
      background: linear-gradient(180deg, #fff 0%, #fffaf6 100%);
      color:#222;
      scroll-behavior: smooth;
    }

    /* Navbar */
    .navbar { padding: .6rem 1rem; }
    .navbar-brand { font-weight:700; color:var(--accent4) !important; letter-spacing:0.3px; }
    .nav-link { color:#343a40 !important; }
    .nav-link:hover { color:var(--accent1) !important; }
    .nav-btn {
      border-radius:50px;
      background:linear-gradient(90deg,var(--accent1),var(--accent2));
      color:#fff;
      padding:.45rem .9rem;
      box-shadow: 0 6px 18px rgba(255,101,100,0.12);
      border:0;
    }

    /* Hero */
    .hero { padding: 5.5rem 0 3rem; }
    .hero .card { border-radius: 14px; box-shadow: 0 8px 30px rgba(120,120,160,0.06); }
    .mission-title { color:var(--accent1); font-weight:700; font-size:1.3rem; }
    .mission-sub { color:var(--muted); line-height:1.5; }

    /* Carousel */
    .carousel-inner img { height:320px; object-fit:cover; border-radius:12px; }
    @media (max-width:576px) {
      .carousel-inner img { height:220px; }
    }

    /* Gallery */
    .gallery img { width:100%; height:180px; object-fit:cover; border-radius:10px; }

    /* Stat cards */
    .stat-card { border-radius:12px; padding:1.6rem; background:#fff; box-shadow:0 6px 18px rgba(120,120,160,0.05); }
    .stat-number { color:var(--accent1); font-weight:800; font-size:1.8rem; }
    .stat-label { color:#555; font-weight:600; margin-top:.3rem; }

    /* Donation */
    .donation-card { border-radius:14px; padding:1.5rem; background: linear-gradient(135deg, rgba(255,75,43,0.06), rgba(124,77,255,0.04)); }
    .donate-btn { background:var(--accent2); border-radius:10px; color:#fff; border:0; padding:.6rem 1.1rem; }
    .donate-frequency .btn { border-radius:10px; }
    .form-check-label { user-select:none; }

    /* Bottom conspicuous card */
    .conspicuous {
      margin: 2.2rem 0;
      border-radius:14px;
      background: linear-gradient(90deg,var(--accent1),var(--accent2));
      color:#fff;
      padding:1.4rem;
      box-shadow: 0 10px 30px rgba(124,77,255,0.14);
    }

    /* moving circles strip */
    .moving-strip { position: relative; overflow:hidden; height:96px; margin:1.2rem 0 3rem; }
    .moving-strip .track {
      position:absolute; top:0; left:0; right:0; height:100%;
      display:flex; gap:24px; align-items:center;
      animation: moveLeft 22s linear infinite;
    }
    .moving-strip .circle {
      flex: 0 0 auto; width:84px; height:84px; border-radius:50%;
      background-size:cover; background-position:center; box-shadow: 0 6px 18px rgba(0,0,0,0.08);
      border:4px solid rgba(255,255,255,0.65);
    }
    @keyframes moveLeft {
      0% { transform: translateX(0); }
      100% { transform: translateX(-50%); }
    }

    /* Footer */
    footer { background:#fff; padding:2.4rem 0; border-top:1px solid #eee; color:#444; }
    .social-btn { width:44px; height:44px; border-radius:8px; display:inline-flex; align-items:center; justify-content:center; background:#f7f7fb; margin-right:.5rem; border:0; }

    /* small screen tweaks */
    @media (max-width:768px) {
      .hero { padding-top:4.5rem; }
      .carousel-inner img { height:220px; }
    }