/* Hope Horizon East Palo Alto: Kindful hosted page theme v2 (brand type, amount and frequency states) */
@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600&family=Montserrat:wght@400;500;600;700&display=swap');

body, input, select, textarea, button, label, p, .btn { font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif !important; }
h1, h2, h3, h3.no_top_margin, .form-header h3 { font-family: 'Fredoka', 'Montserrat', Arial, sans-serif !important; font-weight: 600 !important; letter-spacing: 0 !important; color: #1C355E !important; }
.form-header h3 { font-size: 22px !important; }
/* Question labels and small section labels stay in the body face */
h2.heading-label, h2.kf-level-3-margin-top { font-family: 'Montserrat', 'Helvetica Neue', Arial, sans-serif !important; font-weight: 600 !important; color: #393F44 !important; font-size: 15px !important; line-height: 1.45 !important; }
p, .description, #organization-info p { color: #393F44; line-height: 1.6 !important; }

.splash-image img { border-radius: 12px; }
@media (min-width: 768px) {
  .splash-image img { width: 100% !important; height: auto !important; aspect-ratio: 1380 / 760; object-fit: cover !important; }
  h3.no_top_margin { font-size: 32px !important; line-height: 1.15 !important; margin: 24px 0 12px !important; }
}

/* Amount buttons: rounded, clear selected state */
.donate-btn-group { border-radius: 8px !important; border: 1.5px solid #C2D7EA !important; background: #FFFFFF !important; color: #1C355E !important; font-weight: 600 !important; font-size: 16px !important; transition: border-color .15s, background .15s; }
html body #donate-form .donation-buttons-wrapper input.btn.donate-btn-group:hover:not(.active) { border-color: #345D9D !important; background: #F2F7FB !important; }
html body #donate-form .donation-buttons-wrapper .btn-wrap input.btn.donate-btn-group.active, html body #donate-form .donation-buttons-wrapper .btn-wrap input.btn.donate-btn-group:active { background: #1C355E !important; border-color: #1C355E !important; color: #FFFFFF !important; }
#donate-amount { border-radius: 8px !important; font-weight: 600 !important; color: #1C355E !important; }

/* Frequency toggle: Recurring gets the heart */
.toggle-wrapper .toggle-button { border-radius: 8px !important; font-weight: 600 !important; color: #1C355E !important; }
.toggle-wrapper .toggle-button.active { border: 2px solid #1C355E !important; background: #F2F7FB !important; }
.toggle-wrapper .toggle-button[data-type="recurring"]::before { content: "\2665"; color: #EE7623; margin-right: 6px; font-size: 1.05em; }
#frequency { border-radius: 8px !important; border: 2px solid #345D9D !important; font-weight: 600 !important; color: #1C355E !important; }

/* Primary button */
.btn-inverse, input.btn-inverse, input.button, input[type="submit"].btn-inverse { background: #1C355E !important; border-color: #1C355E !important; color: #FFFFFF !important; border-radius: 8px !important; font-family: 'Montserrat', Arial, sans-serif !important; font-weight: 700 !important; }
.btn-inverse:hover, input[type="submit"].btn-inverse:hover { background: #345D9D !important; border-color: #345D9D !important; }

/* Disabled Donate (Recurring chosen, no schedule yet): calm, still on brand */
html body.public_organizations #donate.kf-disabled-btn, html body.public_organizations #donate.kf-disabled-btn:hover, html body.public_chapters #donate.kf-disabled-btn, html body.public_chapters #donate.kf-disabled-btn:hover { background: #D9E7F2 !important; border-color: #D9E7F2 !important; color: #1C355E !important; opacity: .75 !important; }

/* Keyboard focus and footer contrast */
a:focus-visible, input:focus-visible, select:focus-visible, button:focus-visible, textarea:focus-visible { outline: 3px solid #345D9D !important; outline-offset: 2px !important; }
footer a, .footer a { color: #345D9D !important; }
