/* ===== RESET & BASE ===== */
* { margin:0; padding:0; box-sizing:border-box; }
body {
  font-family: 'Inter', sans-serif;
  background: var(--off-white);
  color: var(--text-dark);
  line-height:1.6;
}
h1,h2,h3,h4 { font-family: 'Playfair Display', serif; font-weight:700; }
a { text-decoration:none; color:inherit; }
.container { max-width:1200px; margin:0 auto; padding:0 20px; }

/* ===== GLASS ===== */
.glass {
  background: var(--glass-bg);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid var(--glass-border);
  box-shadow:0 8px 32px rgba(0,0,0,0.08);
}

/* ===== BUTTONS ===== */
.btn-primary {
  background: var(--gold);
  color: var(--text-dark);
  padding:12px 32px;
  border-radius:50px;
  font-weight:600;
  display:inline-block;
  transition:var(--transition);
  border:none;
  cursor:pointer;
}
.btn-primary:hover { background:var(--gold-light); transform:translateY(-2px); box-shadow:0 12px 24px rgba(212,168,67,0.3); }
.btn-primary.dark { background:var(--text-dark); color:var(--white); }
.btn-primary.dark:hover { background:#2a2a4a; }

.btn-outline {
  background:transparent;
  color:var(--white);
  padding:12px 32px;
  border-radius:50px;
  font-weight:600;
  border:2px solid var(--white);
  display:inline-block;
  transition:var(--transition);
}
.btn-outline:hover { background:var(--white); color:var(--primary); }
.btn-outline.gold-border { border-color:var(--gold); color:var(--gold); }
.btn-outline.gold-border:hover { background:var(--gold); color:var(--text-dark); }
.btn-outline.dark { border-color:var(--text-dark); color:var(--text-dark); }
.btn-outline.dark:hover { background:var(--text-dark); color:var(--white); }

/* ===== HEADER ===== */
header { position:fixed; top:0; width:100%; z-index:1000; padding:20px 0; transition:var(--transition); }
header.scrolled { background:rgba(45,27,105,0.85); backdrop-filter:blur(16px); border-bottom:1px solid rgba(255,255,255,0.1); padding:12px 0; }
.nav-container { display:flex; justify-content:space-between; align-items:center; max-width:1200px; margin:0 auto; padding:0 20px; }
.logo {
  display: flex;
  align-items: center;
  justify-content: center;
}

.logo img {
  width: 130px;
  height: 130px;
  object-fit: contain;
  padding: 18px;
  background: var(--white);
  border-radius: 50%;
  border: 4px solid var(--gold);
  box-shadow: 0 8px 24px rgba(30, 144, 255, 0.3);
  transition: var(--transition);
}

.logo img:hover {
  transform: scale(1.06);
  box-shadow: 0 12px 32px rgba(30, 144, 255, 0.4);
}

header.scrolled .logo img { width: 90px; height: 90px; padding: 12px; }
.nav-links { display:flex; gap:32px; align-items:center; list-style:none; }
.nav-links a { color:var(--white); font-weight:500; font-size:0.95rem; transition:var(--transition); position:relative; }
.nav-links a::after { content:''; position:absolute; bottom:-4px; left:0; width:0; height:2px; background:var(--gold); transition:var(--transition); }
.nav-links a:hover::after, .nav-links a.active::after { width:100%; }
.nav-links .donate-btn { background:var(--gold); color:var(--text-dark); padding:8px 22px; border-radius:50px; font-weight:600; }
.nav-links .donate-btn:hover { background:var(--gold-light); transform:scale(1.02); }
.menu-toggle { display:none; color:var(--white); font-size:1.8rem; cursor:pointer; }
.mobile-menu { position:fixed; inset:0; background:rgba(45,27,105,0.97); backdrop-filter:blur(20px); display:flex; flex-direction:column; justify-content:center; align-items:center; gap:28px; transform:translateX(100%); transition:transform 0.4s cubic-bezier(0.4,0,0.2,1); z-index:999; list-style:none; padding:40px; }
.mobile-menu.open { transform:translateX(0); }
.mobile-menu a { color:var(--white); font-size:1.8rem; font-weight:600; font-family:'Playfair Display',serif; }
.mobile-menu .donate-btn-mobile { background:var(--gold); color:var(--text-dark); padding:12px 48px; border-radius:50px; }

/* ===== HERO ===== */
.hero { height:100vh; min-height:600px; background:linear-gradient(135deg, var(--primary) 0%, #1f0f4a 100%); display:flex; align-items:center; justify-content:center; text-align:center; color:var(--white); position:relative; overflow:hidden; }
.hero::before { content:''; position:absolute; inset:0; background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 800" opacity="0.1"><path fill="%23D4A843" d="M0 0 L1200 200 L1200 400 L0 600 Z"/></svg>') no-repeat center/cover; mix-blend-mode:overlay; }
.hero-content { position:relative; z-index:2; max-width:800px; padding:20px; }
.hero-content img { width:180px; height:180px; object-fit:contain; padding:24px; background:var(--white); border-radius:50%; border:5px solid var(--gold); box-shadow:0 12px 36px rgba(30,144,255,0.35); margin-bottom:24px; transition:var(--transition); }
.hero-content img:hover { transform:scale(1.06); box-shadow:0 16px 44px rgba(30,144,255,0.45); }
.hero-content h1 { font-size:clamp(2.8rem, 8vw, 4.8rem); line-height:1.1; margin-bottom:20px; }
.hero-content p { font-size:1.25rem; opacity:0.9; margin-bottom:32px; }
.hero-buttons { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }
.scroll-indicator { position:absolute; bottom:32px; left:50%; transform:translateX(-50%); color:var(--white); font-size:1.8rem; animation:bounce 2s infinite; opacity:0.7; }
@keyframes bounce { 0%,100% { transform:translateX(-50%) translateY(0); } 50% { transform:translateX(-50%) translateY(12px); } }

/* ===== SERVICE BAR ===== */
.service-bar { background:var(--text-dark); color:var(--white); padding:20px 0; border-bottom:2px solid var(--gold); }
.service-grid { display:flex; justify-content:space-around; flex-wrap:wrap; gap:20px; }
.service-item { display:flex; align-items:center; gap:12px; font-size:0.95rem; }
.service-item i { color:var(--gold); font-size:1.4rem; }

/* ===== SECTIONS ===== */
section { padding:80px 0; }
.section-title { font-size:2.8rem; text-align:center; margin-bottom:16px; }
.section-title.light { color:var(--white); }
.section-sub { text-align:center; max-width:700px; margin:0 auto 48px; color:var(--text-muted); }

/* ===== WELCOME ===== */
.welcome-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.welcome-image { border-radius:var(--radius-lg); overflow:hidden; background:var(--primary-light); height:320px; display:flex; align-items:center; justify-content:center; }
.welcome-image img { width:100%; height:100%; object-fit:cover; }
.overline { color:var(--gold); font-weight:600; letter-spacing:2px; }
.stats-row { display:flex; gap:32px; margin:24px 0; }
.stat { font-weight:700; font-size:1.2rem; }
.stat span { display:block; font-size:2rem; color:var(--gold); }

/* ===== VISION MISSION ===== */
.vision-mission-section { background:linear-gradient(135deg, #f0ecff 0%, #e8e2f5 100%); }
.vision-mission { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.vm-card { background:var(--glass-bg); backdrop-filter:blur(8px); border:1px solid var(--glass-border); border-radius:var(--radius-lg); padding:40px 32px; text-align:center; transition:var(--transition); }
.vm-card:hover { transform:translateY(-6px); box-shadow:var(--shadow-lg); }
.vm-card i { font-size:3rem; color:var(--gold); margin-bottom:16px; }
.vm-card .scripture-ref { font-style:italic; font-size:0.9rem; color:var(--text-muted); margin-top:8px; }

/* ===== MINISTRIES ===== */
.ministry-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px,1fr)); gap:28px; }
.ministry-card { background:var(--glass-bg); backdrop-filter:blur(8px); border:1px solid var(--glass-border); border-radius:var(--radius-lg); padding:32px 20px; text-align:center; transition:var(--transition); }
.ministry-card:hover { transform:translateY(-8px); box-shadow:var(--shadow-lg); }
.ministry-card i { font-size:2.8rem; color:var(--gold); margin-bottom:16px; }
.ministry-card .learn-link { color:var(--gold); font-weight:600; display:inline-block; margin-top:12px; }

.ministry-grid-full { display:grid; grid-template-columns:repeat(auto-fit, minmax(280px,1fr)); gap:28px; }
.ministry-card-full { background:var(--white); border-radius:var(--radius-lg); padding:32px 24px; text-align:center; box-shadow:0 8px 24px rgba(0,0,0,0.06); transition:var(--transition); }
.ministry-card-full:hover { transform:translateY(-8px); box-shadow:var(--shadow-lg); }
.ministry-card-full i { font-size:3rem; color:var(--gold); margin-bottom:16px; }
.ministry-card-full .meeting-time { font-size:0.9rem; color:var(--text-muted); margin:12px 0 16px; }

/* ===== SERMONS ===== */
.sermon-featured-section { background:var(--primary); color:var(--white); }
.sermon-featured { background:rgba(255,255,255,0.05); border-radius:var(--radius-lg); padding:40px; display:flex; flex-wrap:wrap; gap:32px; align-items:center; border:1px solid rgba(255,255,255,0.08); }
.sermon-featured .sermon-info { flex:1; }
.sermon-featured .sermon-info h3 { font-size:2rem; margin:8px 0; }
.sermon-featured .sermon-thumb { flex:0 0 280px; height:160px; background:rgba(212,168,67,0.2); border-radius:var(--radius-lg); display:flex; align-items:center; justify-content:center; font-size:4rem; color:var(--gold); border:2px solid var(--gold); }
.sermon-links { display:flex; gap:16px; flex-wrap:wrap; margin-top:16px; }
.series-badge { background:var(--gold); color:var(--text-dark); padding:4px 16px; border-radius:50px; font-weight:600; font-size:0.8rem; display:inline-block; }
.link-gold { color:var(--gold); font-weight:600; transition:var(--transition); }
.link-gold:hover { color:var(--gold-light); }

.sermon-featured-full { display:flex; gap:32px; background:var(--white); border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-lg); }
.sermon-embed {
    flex: 1;
    position: relative;
    min-height: 450px;
    overflow: hidden;
    border-radius: var(--radius-lg) 0 0 var(--radius-lg);
    background: #000;
}

.sermon-embed iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.sermon-embed span { font-size:1.2rem; }
.sermon-meta { flex:1; padding:32px; }
.format-icons { display:flex; gap:16px; margin:12px 0; }
.format-icons span { background:var(--off-white); padding:4px 12px; border-radius:50px; font-size:0.8rem; }

.sermon-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(280px,1fr)); gap:28px; }
.sermon-card { background:var(--white); border-radius:var(--radius-lg); overflow:hidden; box-shadow:0 4px 12px rgba(0,0,0,0.06); transition:var(--transition); }
.sermon-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
.sermon-thumb { height:140px; background:var(--primary-light); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:3rem; }
.sermon-card-body { padding:20px; }
.sermon-card-body h4 { margin:8px 0; }

/* ===== EVENTS ===== */
.event-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(280px,1fr)); gap:28px; }
.event-card { background:var(--white); border-radius:var(--radius-lg); overflow:hidden; box-shadow:0 8px 24px rgba(0,0,0,0.06); transition:var(--transition); }
.event-card:hover { transform:translateY(-8px); box-shadow:var(--shadow-lg); }
.event-img { height:160px; background:var(--primary-light); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:3rem; }
.event-body { padding:20px; }
.event-date { background:var(--gold); color:var(--text-dark); display:inline-block; padding:4px 16px; border-radius:50px; font-weight:600; font-size:0.8rem; }

.event-grid-full { display:grid; grid-template-columns:repeat(auto-fit, minmax(320px,1fr)); gap:28px; }
.event-card-full { background:var(--white); border-radius:var(--radius-lg); overflow:hidden; box-shadow:0 8px 24px rgba(0,0,0,0.06); transition:var(--transition); display:flex; flex-direction:column; }
.event-card-full:hover { transform:translateY(-8px); box-shadow:var(--shadow-lg); }
.event-image { height:120px; background:var(--primary-light); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:2.5rem; }
.event-details { padding:24px; flex:1; }
.countdown { background:var(--primary); color:var(--white); padding:8px 16px; border-radius:50px; font-weight:600; display:inline-block; margin:12px 0; font-size:0.9rem; }
.calendar-placeholder { background:var(--white); border-radius:var(--radius-lg); padding:60px 20px; text-align:center; border:2px dashed var(--primary-light); color:var(--text-muted); }
.calendar-placeholder i { font-size:3rem; color:var(--gold); }

/* ===== GALLERY ===== */
.filter-tabs { background:var(--white); padding:16px 0; border-bottom:1px solid #eee; }
.filter-tabs .container { display:flex; gap:12px; flex-wrap:wrap; }
.filter-tabs button { background:transparent; border:none; padding:8px 20px; border-radius:50px; font-weight:500; cursor:pointer; transition:var(--transition); }
.filter-tabs button.active, .filter-tabs button:hover { background:var(--gold); color:var(--text-dark); }

.masonry-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(260px,1fr)); grid-auto-rows:200px; gap:16px; }
.masonry-item { border-radius:var(--radius-lg); overflow:hidden; }
.masonry-placeholder { width:100%; height:100%; background:var(--primary-light); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:2rem; transition:var(--transition); }
.masonry-placeholder:hover { transform:scale(1.03); background:var(--gold); }

.video-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(280px,1fr)); gap:24px; }
.video-card { background:var(--white); border-radius:var(--radius-lg); overflow:hidden; box-shadow:0 4px 12px rgba(0,0,0,0.06); }
.video-placeholder { height:180px; background:var(--primary); display:flex; align-items:center; justify-content:center; color:var(--white); font-size:4rem; }
.video-card p { padding:16px; font-weight:600; }

/* ===== TESTIMONIALS ===== */
.testimonials-section { background:linear-gradient(135deg, var(--primary), #1a0f3a); color:var(--white); }
.testimonial-slide { background:var(--glass-bg); backdrop-filter:blur(8px); border-radius:var(--radius-lg); padding:48px 32px; text-align:center; max-width:700px; margin:0 auto; border:1px solid var(--glass-border); }
.testimonial-slide i { font-size:2.8rem; color:var(--gold); margin-bottom:16px; }
.testimonial-slide p { font-size:1.3rem; font-style:italic; margin:16px 0; }

/* ===== BIBLE VERSE ===== */
.bible-verse-section { background:linear-gradient(135deg, #1f0f4a, var(--primary)); color:var(--white); text-align:center; padding:80px 20px; }
.bible-verse-section blockquote { font-family:'Playfair Display',serif; font-size:clamp(1.6rem,4vw,2.8rem); max-width:800px; margin:0 auto; line-height:1.4; }
.bible-verse-section p { margin-top:16px; color:var(--gold); font-weight:600; }

/* ===== CTA GOLD ===== */
.cta-gold { background:var(--gold); padding:60px 0; text-align:center; }
.cta-gold h2 { color:var(--text-dark); margin-bottom:24px; }
.cta-buttons { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }

/* ===== CONTACT ===== */
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.contact-info p { margin:12px 0; }
.contact-info i { color:var(--gold); width:24px; }
.contact-info .social-icons { margin-top:16px; }
.prayer-link { display:inline-block; margin-top:16px; color:var(--gold); font-weight:600; }
.prayer-link i { margin-right:8px; }

.contact-preview-grid { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.prayer-cta-card { background:var(--primary); color:var(--white); border-radius:var(--radius-lg); padding:32px; text-align:center; transition:var(--transition); display:block; }
.prayer-cta-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
.prayer-cta-card i { font-size:3rem; color:var(--gold); margin-bottom:16px; }

form input, form textarea { width:100%; padding:12px; margin-bottom:12px; border-radius:8px; border:1px solid #ddd; font-family:inherit; transition:var(--transition); }
form input:focus, form textarea:focus { outline:2px solid var(--gold); border-color:transparent; }
.form-status { margin-top:12px; font-size:0.95rem; font-weight:500; min-height:1.2em; }
.form-status.success { color:#1e7e34; }
.form-status.error { color:#dc3545; }

.map-container { margin-top:32px; border-radius:var(--radius-lg); overflow:hidden; }

/* ===== PAGE HERO ===== */
.page-hero { padding:140px 0 80px; text-align:center; color:var(--white); }
.page-hero h1 { font-size:3.5rem; }
.page-hero .breadcrumb { opacity:0.7; font-size:0.9rem; }
.about-hero { background:linear-gradient(135deg, var(--primary), #1a0f3a); }
.ministries-hero { background:linear-gradient(135deg, #1a0f3a, var(--primary)); }
.sermons-hero { background:linear-gradient(135deg, var(--primary), #2d1b69); }
.events-hero { background:linear-gradient(135deg, #2d1b69, var(--primary)); }
.gallery-hero { background:linear-gradient(135deg, var(--primary), #1a0f3a); }
.contact-hero { background:linear-gradient(135deg, #1a0f3a, var(--primary)); }
.prayer-hero { background:linear-gradient(135deg, var(--primary), #1a0f3a); }

.search-bar { display:flex; align-items:center; background:rgba(255,255,255,0.15); backdrop-filter:blur(8px); border-radius:50px; padding:4px 20px; max-width:600px; margin:24px auto 0; border:1px solid rgba(255,255,255,0.2); }
.search-bar i { color:rgba(255,255,255,0.6); }
.search-bar input { background:transparent; border:none; padding:12px 16px; color:var(--white); width:100%; }
.search-bar input::placeholder { color:rgba(255,255,255,0.6); }

.filter-bar { background:var(--white); padding:16px 0; border-bottom:1px solid #eee; }
.filter-bar .container { display:flex; gap:16px; flex-wrap:wrap; }
.filter-bar select { padding:8px 16px; border-radius:50px; border:1px solid #ddd; background:var(--white); }

/* ===== TIMELINE ===== */
.timeline { position:relative; padding:20px 0; }
.timeline::before { content:''; position:absolute; left:50%; top:0; bottom:0; width:2px; background:var(--gold); transform:translateX(-50%); }
.timeline-item { display:flex; justify-content:flex-end; padding:20px 0; width:50%; position:relative; }
.timeline-item:nth-child(odd) { padding-right:40px; text-align:right; }
.timeline-item:nth-child(even) { margin-left:50%; padding-left:40px; text-align:left; }
.timeline-item::before { content:''; position:absolute; top:20px; width:16px; height:16px; background:var(--gold); border-radius:50%; border:3px solid var(--white); }
.timeline-item:nth-child(odd)::before { right:-8px; }
.timeline-item:nth-child(even)::before { left:-8px; }
.timeline-year { font-weight:700; font-size:1.6rem; color:var(--gold); display:block; }
.timeline-item p { background:var(--white); padding:16px 24px; border-radius:var(--radius-lg); box-shadow:0 4px 12px rgba(0,0,0,0.06); }

/* ===== BELIEFS ===== */
.beliefs-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(240px,1fr)); gap:16px; }
.belief-card { background:var(--white); border-radius:var(--radius-lg); padding:20px; display:flex; align-items:center; gap:16px; box-shadow:0 4px 12px rgba(0,0,0,0.04); transition:var(--transition); }
.belief-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
.belief-card i { font-size:1.8rem; color:var(--gold); min-width:40px; }

/* ===== LEADERSHIP ===== */
.leadership-section { background:var(--primary); color:var(--white); }
.leadership-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(280px,1fr)); gap:32px; }
.leader-card { background:rgba(255,255,255,0.05); backdrop-filter:blur(8px); border-radius:var(--radius-lg); padding:32px 24px; text-align:center; border:1px solid rgba(255,255,255,0.08); transition:var(--transition); }
.leader-card:hover { transform:translateY(-8px); background:rgba(255,255,255,0.1); }
.leader-photo { width:120px; height:120px; border-radius:50%; background:rgba(255,255,255,0.1); margin:0 auto 16px; display:flex; align-items:center; justify-content:center; font-size:3rem; color:var(--gold); border:3px solid var(--gold); overflow:hidden; }
.leader-photo img { width:100%; height:100%; object-fit:cover; border-radius:50%; }
.leader-title { color:var(--gold); font-weight:600; margin:4px 0 12px; }
.leader-bio { opacity:0.85; font-size:0.95rem; }

/* ===== PRAYER ===== */
.prayer-form-card { background:var(--white); border-radius:var(--radius-lg); padding:48px; box-shadow:var(--shadow-lg); }
.prayer-promises { display:grid; grid-template-columns:repeat(auto-fit, minmax(240px,1fr)); gap:24px; margin-top:32px; }
.promise-card { background:var(--white); border-radius:var(--radius-lg); padding:24px; text-align:center; box-shadow:0 4px 12px rgba(0,0,0,0.04); }
.promise-card i { font-size:2.5rem; color:var(--gold); margin-bottom:12px; }
.promise-card blockquote { font-style:italic; margin:8px 0; color:var(--text-dark); }
.promise-card p { color:var(--text-muted); font-size:0.9rem; }

/* ===== FOOTER ===== */
footer { background:var(--text-dark); color:var(--white); padding:48px 0 20px; }
.footer-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(200px,1fr)); gap:40px; margin-bottom:32px; }
.footer-grid h3 { font-family:'Playfair Display',serif; color:var(--gold); }
.footer-grid h4 { font-family:'Inter',sans-serif; font-weight:600; margin-bottom:12px; }
.footer-grid ul { list-style:none; }
.footer-grid ul li { margin:6px 0; }
.footer-grid ul li a { opacity:0.8; transition:var(--transition); }
.footer-grid ul li a:hover { opacity:1; color:var(--gold); }
.footer-grid i { color:var(--gold); margin-right:8px; }
.social-icons a { color:var(--white); margin-right:16px; font-size:1.4rem; transition:var(--transition); }
.social-icons a:hover { color:var(--gold); }
.footer-bottom { border-top:1px solid rgba(255,255,255,0.1); padding-top:20px; text-align:center; font-size:0.9rem; opacity:0.7; }

/* ===== DONATE PAGE ===== */
.donate-hero { background:linear-gradient(135deg, var(--primary), #1a0f3a); }

.donation-card { background:var(--white); border-radius:var(--radius-lg); box-shadow:var(--shadow-lg); overflow:hidden; max-width:800px; margin:0 auto; }

.donation-steps { display:flex; justify-content:center; padding:24px; background:var(--off-white); border-bottom:1px solid rgba(0,0,0,0.06); flex-wrap:wrap; gap:8px; }
.donation-step { display:flex; align-items:center; margin:0 15px; color:var(--text-muted); font-weight:500; }
.donation-step.active { color:var(--gold); }
.donation-step.completed { color:#28a745; }
.step-number { width:30px; height:30px; border-radius:50%; background:#e9ecef; display:flex; align-items:center; justify-content:center; margin-right:10px; font-weight:700; font-size:0.9rem; }
.donation-step.active .step-number { background:var(--gold); color:var(--text-dark); }
.donation-step.completed .step-number { background:#28a745; color:var(--white); }

.donation-form-section { padding:40px; }
.donation-form-section h2 { font-size:1.6rem; margin-bottom:16px; }

.donation-amount { background:var(--off-white); padding:24px; border-radius:var(--radius-lg); margin-bottom:32px; }
.amount-presets { display:flex; gap:10px; margin:16px 0; flex-wrap:wrap; }
.preset-btn { padding:10px 22px; background:var(--white); border:2px solid #e5e7eb; border-radius:50px; cursor:pointer; transition:var(--transition); font-weight:600; color:var(--text-dark); }
.preset-btn:hover { border-color:var(--gold); color:var(--gold); }
.preset-btn.selected { background:var(--gold); color:var(--text-dark); border-color:var(--gold); }
.custom-amount { display:flex; align-items:center; margin-top:16px; }
.custom-amount input { flex:1; padding:12px 16px; border:2px solid #e5e7eb; border-radius:8px; font-size:16px; font-family:inherit; }
.custom-amount input:focus { outline:none; border-color:var(--gold); }

.form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:4px; }
.form-group { margin-bottom:20px; }
.form-group label { display:block; margin-bottom:6px; font-weight:600; color:var(--text-dark); font-size:0.95rem; }
.form-group label .required { color:#dc3545; }
.form-control { width:100%; padding:12px 14px; border:2px solid #e5e7eb; border-radius:8px; font-size:16px; font-family:inherit; transition:var(--transition); }
.form-control:focus { outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(212,168,67,0.18); }
.form-control.error { border-color:#dc3545; }
.error-message { color:#dc3545; font-size:0.85em; margin-top:5px; display:block; }

.checkbox-group { display:flex; align-items:center; margin:20px 0; }
.checkbox-group input[type="checkbox"] { margin-right:10px; width:18px; height:18px; accent-color:var(--gold); }

.payment-methods { margin-top:32px; }
.payment-method { display:flex; align-items:center; padding:20px; border:2px solid #e5e7eb; border-radius:var(--radius-lg); margin-bottom:14px; cursor:pointer; transition:var(--transition); }
.payment-method:hover { border-color:var(--primary); background:var(--off-white); }
.payment-method.selected { border-color:var(--gold); background:#fdf7e9; }
.payment-method input[type="radio"] { margin-right:15px; width:18px; height:18px; accent-color:var(--gold); }
.payment-icon { font-size:1.6rem; margin-right:16px; color:var(--gold); width:32px; text-align:center; }
.payment-info h3 { margin:0 0 4px; font-size:1.05rem; color:var(--text-dark); }
.payment-info p { margin:0; color:var(--text-muted); font-size:0.9em; }

.crypto-details { display:none; background:var(--off-white); padding:24px; border-radius:var(--radius-lg); margin-top:16px; }
.crypto-details.show { display:block; }
.crypto-details h3 { font-size:1.1rem; margin-bottom:8px; }
.crypto-asset { margin-bottom:24px; }
.crypto-asset h4 { font-size:1rem; margin-bottom:10px; color:var(--text-dark); }
.crypto-asset-row { display:flex; gap:20px; align-items:flex-start; flex-wrap:wrap; }
.qr-box { flex-shrink:0; width:150px; height:150px; background:var(--white); border:1px solid #e5e7eb; border-radius:10px; display:flex; align-items:center; justify-content:center; }
.qr-box img { width:140px; height:140px; }
.crypto-asset-info { flex:1; min-width:200px; }
.crypto-asset-info > p { font-size:0.9em; color:var(--text-muted); margin-bottom:8px; }
.wallet-address { font-family:'Courier New', monospace; font-size:0.85em; word-break:break-all; color:var(--text-dark); background:var(--white); padding:10px 60px 10px 12px; border-radius:8px; margin:8px 0; position:relative; border:1px solid #e5e7eb; }
.copy-btn { position:absolute; right:6px; top:50%; transform:translateY(-50%); background:var(--gold); color:var(--text-dark); border:none; padding:6px 12px; border-radius:6px; cursor:pointer; font-size:0.8em; font-weight:600; transition:var(--transition); }
.copy-btn:hover { background:var(--gold-light); }
.wallet-link { font-size:0.85em; color:#28a745; margin-top:8px; }
.wallet-link a { color:var(--primary); font-weight:600; }
.wallet-fee-note { font-size:0.85em; margin-top:5px; }
.wallet-fee-note.low { color:#28a745; }
.wallet-fee-note.high { color:#dc3545; }
.wallet-fee-note.neutral { color:var(--text-muted); }

.bank-detail-row { margin-bottom:16px; }
.bank-detail-label { display:block; font-size:0.9em; font-weight:600; color:var(--text-dark); margin-bottom:6px; }

.btn-donate-next { background:var(--gold); color:var(--text-dark); border:none; padding:16px 44px; font-size:1.05rem; font-weight:700; border-radius:50px; cursor:pointer; transition:var(--transition); margin-top:32px; display:block; }
.btn-donate-next:hover { background:var(--gold-light); transform:translateY(-2px); box-shadow:0 12px 24px rgba(212,168,67,0.3); }
.btn-donate-next:disabled { background:#e5e7eb; color:var(--text-muted); cursor:not-allowed; transform:none; box-shadow:none; }

.recaptcha-note { margin-top:18px; text-align:center; color:var(--text-muted); font-size:0.85em; }

.donation-notification { position:fixed; top:100px; right:20px; background:#28a745; color:var(--white); padding:15px 22px; border-radius:8px; box-shadow:0 8px 24px rgba(0,0,0,0.2); opacity:0; transform:translateX(120%); transition:all 0.3s ease; z-index:2000; font-weight:500; }
.donation-notification.show { opacity:1; transform:translateX(0); }
.donation-notification.error { background:#dc3545; }
