/* Child & Family Donate page (preview). Scoped to .dn */
.dn{--blue:#3d6fb0;--navy:#1f3f6e;--green:#3f8a66;--gold:#e09900;--ink:#24303d;--muted:#5d6874;--line:#dde2e8;--soft:#f4f7fb;
  font-family:"Work Sans",Arial,sans-serif;color:var(--ink);font-size:17px;line-height:1.6;text-align:left}
.dn *,.dn *::before,.dn *::after{box-sizing:border-box}
.dn h1,.dn h2,.dn h3,.dn p,.dn ul,.dn figure{margin:0;padding:0}
.dn h1,.dn h2,.dn h3{font-family:inherit;line-height:1.15;padding-bottom:0}
.dn ul{list-style:none}
.dn a{text-decoration:none}
.dn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.dn-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.dn-sec{padding:72px 0}
.dn-eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#ffd98a;margin-bottom:12px}
.dn-eyebrow.g{color:var(--green)}
.dn-h2{font-size:clamp(28px,3.4vw,40px);font-weight:700;letter-spacing:-.6px;color:var(--navy);margin-bottom:28px}
.dn-btn{display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;border-radius:999px;padding:14px 28px;transition:transform .15s,box-shadow .15s,background .15s}
.dn-btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.18)}
.dn-btn.gold{background:var(--gold);color:#fff!important}
.dn-btn.white{background:#fff;color:var(--green)!important}

/* hero */
.dn-hero{background:radial-gradient(900px 500px at 10% -10%,rgba(255,255,255,.12),transparent 60%),linear-gradient(135deg,#1b365f 0%,#2a5590 55%,#3d6fb0 100%);color:#fff;padding:60px 0 72px}
.dn-hero .dn-wrap{display:grid;grid-template-columns:1fr 470px;gap:52px;align-items:start}
.dn-hero h1{font-size:clamp(36px,4.6vw,56px)!important;font-weight:700;letter-spacing:-1px;color:#fff!important;margin-bottom:18px}
.dn-htx>p{font-size:19px;color:#e3ecf8;max-width:600px;margin-bottom:22px}
.dn-trust{display:flex;flex-wrap:wrap;gap:10px 22px;margin-bottom:28px!important}
.dn-trust li{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#dbe7f6}
.dn-trust svg{color:#ffd98a}
.dn-photo{border-radius:20px;overflow:hidden;box-shadow:0 24px 50px rgba(8,20,40,.35);max-width:600px}
.dn-photo img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center 30%}
.dn-formcard{background:#fff;color:var(--ink);border-radius:22px;padding:30px;box-shadow:0 28px 60px rgba(8,20,40,.35);position:sticky;top:24px}
.dn-formcard h2{font-size:28px;font-weight:700;color:var(--navy)!important;margin-bottom:6px}
.dn-sub{font-size:15px;color:var(--muted);margin-bottom:18px!important}
.dn-ph{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;border:2px dashed #c9d6e6;border-radius:16px;padding:44px 22px;background:var(--soft)}
.dn-ph b{font-size:19px;color:var(--navy)}
.dn-ph span{font-size:15px;color:var(--muted);max-width:330px;margin-bottom:8px}
.dn-help{margin-top:16px!important;font-size:14px;color:var(--muted);text-align:center}
.dn-help a{color:var(--blue);font-weight:600}

/* impact amounts */
.dn-amts{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.dn-amt{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 22px;color:var(--ink)!important;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}
.dn-amt::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--blue)}
.dn-amt:nth-child(2)::before{background:var(--green)}
.dn-amt:nth-child(3)::before{background:#d0624a}
.dn-amt:nth-child(4)::before{background:var(--gold)}
.dn-amt:hover{transform:translateY(-5px);box-shadow:0 16px 32px rgba(31,63,110,.13)}
.dn-amt b{font-size:42px;font-weight:700;line-height:1;color:var(--navy)}
.dn-amt span{font-size:16px;color:var(--muted)}

/* monthly */
.dn-monthly{background:linear-gradient(135deg,#2f7a57,#3f8a66);color:#fff;padding:44px 0}
.dn-monthly .dn-wrap{display:flex;align-items:center;gap:26px}
.dn-mi{flex:none;width:72px;height:72px;border-radius:20px;background:rgba(255,255,255,.15);display:grid;place-items:center}
.dn-mi svg{width:36px;height:36px}
.dn-monthly h2{font-size:clamp(22px,2.6vw,30px);font-weight:700;color:#fff!important;margin-bottom:6px}
.dn-monthly p{color:#e2f2e9;max-width:660px}
.dn-monthly .dn-btn{margin-left:auto;flex-shrink:0}

/* stats */
.dn-stats{background:var(--soft);padding:56px 0}
.dn-stats ul{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:20px;box-shadow:0 14px 34px rgba(31,63,110,.1);overflow:hidden}
.dn-stats li{padding:28px 24px;border-right:1px solid var(--line)}
.dn-stats li:last-child{border-right:0}
.dn-stats b{display:block;font-size:clamp(34px,3.4vw,44px);font-weight:700;line-height:1.05;color:var(--blue)}
.dn-stats li:nth-child(2) b{color:var(--green)}
.dn-stats li:nth-child(3) b{color:#c0563f}
.dn-stats li:nth-child(4) b{color:#a86f00}
.dn-stats span{display:block;font-size:15px;color:var(--muted);margin-top:6px;line-height:1.4}
.dn-src{margin-top:14px!important;font-size:14px;color:var(--muted)}
.dn-src a{color:var(--blue);font-weight:600}

/* ways */
.dn-wgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.dn-w{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;color:var(--ink)!important;transition:transform .2s,box-shadow .2s}
.dn-w:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(31,63,110,.12)}
.dn-w small{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--green)}
.dn-w h3{font-size:20px;color:var(--navy)!important;margin:6px 0 8px}
.dn-w p{font-size:15.5px;color:var(--muted)}
.dn-w i{font-style:normal;font-weight:700;color:var(--blue);margin-top:auto;padding-top:14px;font-size:15px}
.dn-w i::after{content:" \2192";display:inline-block;transition:transform .2s}
.dn-w:hover i::after{transform:translateX(4px)}
.dn-mail{margin-top:22px;background:var(--soft);border-radius:14px;padding:16px 20px;font-size:16px;color:var(--muted)}
.dn-mail b{color:var(--ink)}

/* reveal */
.dn.anim .dn-reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.dn.anim .dn-reveal.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.dn *{transition:none!important}}

@media (max-width:1060px){
  .dn-hero .dn-wrap{grid-template-columns:1fr}
  .dn-formcard{position:static;max-width:560px}
  .dn-amts,.dn-wgrid{grid-template-columns:repeat(2,1fr)}
  .dn-stats ul{grid-template-columns:repeat(2,1fr)}
  .dn-stats li:nth-child(2){border-right:0}
  .dn-stats li:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media (max-width:640px){
  .dn{font-size:16px}
  .dn-wrap{padding:0 18px}
  .dn-sec{padding:52px 0}
  .dn-hero{padding:40px 0 52px}
  .dn-htx>p{font-size:17px}
  .dn-formcard{padding:22px}
  .dn-amts,.dn-wgrid{grid-template-columns:1fr}
  .dn-monthly .dn-wrap{flex-direction:column;align-items:flex-start}
  .dn-monthly .dn-btn{margin-left:0;width:100%}
  .dn-btn{width:100%}
}

.dn .dn-h2{margin-bottom:28px!important}
.dn .dn-eyebrow{margin-bottom:12px!important}
.dn ul.dn-trust,.dn .dn-stats ul{padding:0!important}
@media (max-width:1060px){.dn-photo{display:none}}

/* Bloomerang donation form, styled to match (Oct 19) */
.dn .dn-embed{min-height:200px}
.dn .dn-embed form.donation-form{font-family:"Work Sans",Arial,sans-serif;color:var(--ink);font-size:15px;line-height:1.45;margin:0}
.dn .dn-embed .donation-form .section{padding:0;margin:0 0 18px}
.dn .dn-embed .donation-form h3{font-size:12px!important;font-weight:700!important;letter-spacing:1.2px;text-transform:uppercase;color:var(--green)!important;margin:0 0 10px!important;padding:0!important;line-height:1.3!important;grid-column:1/-1}
.dn .dn-embed .donation-form .field{padding:0;margin:0 0 12px}
.dn .dn-embed .donation-form label{display:block;font-size:14px;font-weight:600;color:var(--ink);margin:0 0 5px}
.dn .dn-embed .donation-form .required-star{color:#c0392b;margin-left:3px}
.dn .dn-embed .donation-form input[type=text],.dn .dn-embed .donation-form input[type=email],.dn .dn-embed .donation-form input[type=tel],.dn .dn-embed .donation-form input[type=number],.dn .dn-embed .donation-form select,.dn .dn-embed .donation-form textarea{display:block;width:100%;max-width:none;box-sizing:border-box;border:1px solid #c9d6e6;border-radius:10px;background:#fff;padding:10px 12px;font:inherit;font-size:16px;color:var(--ink);height:auto;min-height:44px;margin:0;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.dn .dn-embed .donation-form textarea{min-height:70px;resize:vertical}
.dn .dn-embed .donation-form input:focus,.dn .dn-embed .donation-form select:focus,.dn .dn-embed .donation-form textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(61,111,176,.18)}
/* amount tiles */
.dn .dn-embed .donation-form .section.donation{display:grid;gap:8px}
.dn .dn-embed .donation-form .section.donation .field{margin:0}
.dn .dn-embed .donation-form .section.donation .field.radio label{display:flex;align-items:flex-start;gap:10px;margin:0;border:1.5px solid var(--line);border-radius:12px;padding:11px 14px;font-weight:500;font-size:14.5px;cursor:pointer;background:#fff;transition:border-color .15s,background .15s}
.dn .dn-embed .donation-form .section.donation .field.radio label:hover{border-color:#9db6d6}
.dn .dn-embed .donation-form .section.donation .field.radio label:has(input:checked){border-color:var(--blue);background:#eef4fb;box-shadow:0 0 0 1px var(--blue)}
.dn .dn-embed .donation-form input[type=radio],.dn .dn-embed .donation-form input[type=checkbox]{accent-color:var(--blue);width:18px;height:18px;margin:2px 0 0;flex:none}
.dn .dn-embed .donation-form .field.other-amount{margin:0}
.dn .dn-embed .donation-form .field.other-amount input{max-width:180px}
/* monthly */
.dn .dn-embed .donation-form .section.recurring label{display:flex;align-items:flex-start;gap:10px;background:#e8f3ec;border-radius:12px;padding:11px 14px;font-weight:600;color:#245c43;cursor:pointer;margin:0}
/* two-column rows */
.dn .dn-embed .donation-form .section.contact,.dn .dn-embed .donation-form .section.billing-address{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}
.dn .dn-embed .donation-form .section.billing-address .country,.dn .dn-embed .donation-form .section.billing-address .street-address{grid-column:1/-1}
.dn .dn-embed .donation-form .section.captcha{margin-top:4px}
.dn .dn-embed .donation-form label.error,.dn .dn-embed .donation-form #card-errors{color:#b3261e;font-size:13px;font-weight:500;padding:4px 0 0}
.dn .dn-embed .donation-form .btn-group{margin-top:6px}
.dn .dn-embed .donation-form .btn-submit{display:block;width:100%;background:var(--gold)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:15px 24px!important;font-family:"Work Sans",Arial,sans-serif!important;font-size:17px!important;font-weight:700!important;cursor:pointer;transition:background .15s,transform .15s,box-shadow .15s;-webkit-appearance:none;appearance:none}
.dn .dn-embed .donation-form .btn-submit:hover{background:#c78700!important;transform:translateY(-1px);box-shadow:0 8px 18px rgba(0,0,0,.15)}
@media (max-width:640px){.dn .dn-embed .donation-form .section.contact,.dn .dn-embed .donation-form .section.billing-address{grid-template-columns:1fr}}.dn .dn-embed .donation-form .field.other-amount input{width:180px!important}
.dn .dn-formcard{position:static}

/* gift levels in hero (Oct 19) */
.dn-levels{margin-top:30px;display:grid;gap:10px;max-width:600px}
.dn .dn-lh{font-size:22px;font-weight:700;color:#fff!important;margin:0 0 4px!important;line-height:1.2}
.dn-lv{display:flex;gap:16px;align-items:center;text-align:left;width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:14px 18px;color:#fff;font:inherit;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.dn-lv b{flex:none;min-width:74px;font-size:26px;font-weight:700;color:#ffd98a;line-height:1}
.dn-lv span{font-size:15.5px;color:#e3ecf8;line-height:1.4}
.dn-lv:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.4);transform:translateX(3px)}
.dn-lv:focus-visible{outline:3px solid #ffd98a;outline-offset:2px}
.dn-lv.on{background:#fff;border-color:#fff}
.dn-lv.on b{color:var(--navy)}
.dn-lv.on span{color:var(--ink)}
.dn .dn-lnote{font-size:13.5px;color:#b9cde8;margin:2px 0 0!important}
.dn-up{margin-top:10px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 18px;background:rgba(63,138,102,.38);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:16px 18px}
.dn-up>div{flex:1 1 280px}
.dn-up b{display:block;color:#fff;font-size:17px;margin-bottom:2px}
.dn-up span{color:#e2f2e9;font-size:15px;line-height:1.45}
.dn-upbtn{flex:none;background:#fff;color:var(--green);border:0;border-radius:999px;padding:11px 22px;font:inherit;font-weight:700;font-size:15px;cursor:pointer;transition:transform .15s,box-shadow .15s}
.dn-upbtn:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.18)}
@media (max-width:1060px){.dn-levels{display:none}}
@media (min-width:1061px){.dn-impact{display:none}}
.dn-fallback{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;border:2px dashed #c9d6e6;border-radius:16px;padding:32px 22px;background:var(--soft)}
.dn-fallback b{font-size:17px;color:var(--navy)}
.dn-fallback span{font-size:15px;color:var(--muted);margin-bottom:6px}
