@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--ink:#17383d;--muted:#617579;--teal:#176a68;--mint:#dcefeb;--cream:#f6f8f5;--gold:#c79d5a;--line:#dfe8e4}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}.site-header{height:82px;padding:0 7.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:10px;font-size:15px;letter-spacing:2px;font-weight:500}.brand b{font-weight:700;color:var(--teal)}.brand-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:var(--teal);font-size:23px}.site-header nav{display:flex;gap:34px;color:#52696d;font-size:13px}.header-actions{display:flex;align-items:center;gap:14px}select{border:0;background:transparent;color:var(--ink);font:inherit;font-size:13px;cursor:pointer}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--teal);color:#fff;padding:15px 25px;border-radius:4px;font-weight:700;font-size:13px;letter-spacing:.3px;border:0;cursor:pointer;transition:.2s}.button:hover{background:#104f50;transform:translateY(-1px)}.button:disabled{background:#91aaa7;cursor:not-allowed;transform:none}.button-small{padding:11px 19px}.button-full{width:100%}.hero{padding:90px 10%;min-height:570px;background:linear-gradient(115deg,#f5f9f6 0%,#edf6f2 55%,#e2f0eb 100%);display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:8%}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:700;color:var(--teal);margin:0 0 18px}.hero h1,h2{font-family:'Playfair Display',serif;font-weight:600;line-height:1.13;letter-spacing:-.7px}.hero h1{font-size:clamp(42px,5vw,66px);max-width:650px;margin:0 0 22px}.hero-lead{font-size:17px;color:#52696d;max-width:500px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:32px}.text-link{font-size:13px;font-weight:700;color:var(--teal)}.trust-note{display:flex;gap:10px;align-items:center;margin-top:48px;color:#607477;font-size:12px}.trust-note span:first-child{color:var(--gold);font-size:22px}.campaign-card{background:#fff;border:1px solid #e3ece7;padding:30px 32px;box-shadow:0 18px 55px #17383d12;border-radius:8px}.card-topline{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.8px;font-weight:700;color:#6a8182}.live-dot,.update-dot{width:8px;height:8px;border-radius:50%;background:#7bb99c;display:inline-block}.goal{font-family:'Playfair Display',serif;font-size:48px;margin:16px 0 22px}.goal small{font:600 12px 'DM Sans';color:#6b8080}.progress-track{height:8px;background:#e9efec;border-radius:20px;overflow:hidden}.progress-fill{height:100%;background:var(--teal);border-radius:20px}.progress-labels{display:flex;justify-content:space-between;font-size:12px;color:#637779;margin-top:12px}.progress-labels strong{color:var(--ink);font-size:15px}.card-footnote{font-size:11px;color:#819092;margin:20px 0}.section{padding:95px 10%}.section-label{font-size:10px;letter-spacing:2px;color:#8a9b98;font-weight:700;margin-bottom:45px}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.story h2,.section-heading h2,.donation h2,.updates h2{font-size:clamp(34px,4vw,48px);margin:0}.story-text{color:#607477;font-size:14px}.fact-box{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid var(--line);margin-top:30px;padding-top:22px}.fact-box div{display:flex;flex-direction:column;gap:5px}.fact-box span{font-size:10px;text-transform:uppercase;letter-spacing:1px}.fact-box strong{font-size:13px;color:var(--ink)}.impact{background:var(--cream)}.section-heading{max-width:650px}.section-heading>p:last-child{color:var(--muted);font-size:14px}.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px}.impact-item{background:#fff;border:1px solid var(--line);padding:28px;border-radius:6px}.icon{display:grid;place-items:center;width:42px;height:42px;background:var(--mint);border-radius:50%;color:var(--teal);font-size:23px}.impact-item h3{font-size:16px;margin:20px 0 8px}.impact-item p,.disclaimer{font-size:12px;color:var(--muted)}.disclaimer{margin-top:24px}.donation{display:grid;grid-template-columns:1fr .85fr;gap:10%;align-items:center;background:#f0f7f4}.donation-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;max-width:470px}.secure-note{display:flex;gap:10px;align-items:center;margin-top:32px;color:#607477;font-size:12px}.secure-note span:first-child{font-size:22px;color:var(--teal)}.donation-box{background:#fff;padding:32px;border:1px solid var(--line);border-radius:7px;box-shadow:0 14px 35px #17383d0b}.donation-box h3{font-size:17px;margin:0 0 20px}.amounts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.amount{padding:12px 4px;background:#fff;border:1px solid var(--line);border-radius:4px;color:var(--ink);font:600 13px 'DM Sans';cursor:pointer}.amount.selected,.amount:hover{background:var(--mint);border-color:var(--teal);color:var(--teal)}.custom-label{display:block;font-size:11px;color:var(--muted);margin:22px 0 8px}input{width:100%;padding:13px;border:1px solid var(--line);border-radius:4px;font:inherit;margin-bottom:17px}input:focus,select:focus{outline:2px solid #8ebdb4}.payment-help{font-size:10px;color:#7b8d8d;line-height:1.6;margin-bottom:0}.updates-row{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end}.updates-row>p{font-size:13px;color:var(--muted)}.update-placeholder{display:flex;gap:15px;align-items:flex-start;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin-top:38px}.update-placeholder strong{font-size:13px}.update-placeholder p{font-size:12px;color:var(--muted);margin:5px 0 0}.update-placeholder time{margin-left:auto;font-size:9px;letter-spacing:1px;color:#879895}.closing{text-align:center;background:#123d45;color:#fff;padding:85px 20px}.closing .eyebrow{color:#b6d6cd}.closing h2{font-size:clamp(34px,4vw,48px);max-width:700px;margin:0 auto 30px}.button-light{background:#fff;color:var(--teal)}.button-light:hover{background:#e6f2ed;color:var(--ink)}.footer{padding:38px 10%;display:flex;align-items:center;gap:24px;flex-wrap:wrap;color:#718381;font-size:11px}.brand-footer{color:var(--ink)}.footer>span{margin-left:auto}.footer-small{width:100%;margin:0;color:#93a09e;font-size:10px}
[dir="rtl"] body{text-align:right}[dir="rtl"] .hero-actions,[dir="rtl"] .trust-note,[dir="rtl"] .secure-note{flex-direction:row-reverse}[dir="rtl"] .update-placeholder time{margin-left:0;margin-right:auto}
@media(max-width:850px){.site-header{padding:0 5%;height:auto;min-height:75px;flex-wrap:wrap;gap:12px;padding-top:15px;padding-bottom:15px}.site-header nav{order:3;width:100%;justify-content:center;gap:22px}.hero{padding:65px 7%;grid-template-columns:1fr;gap:45px}.campaign-card{max-width:480px;width:100%}.section{padding:70px 7%}.story-grid,.donation,.updates-row{grid-template-columns:1fr;gap:35px}.impact-grid{grid-template-columns:1fr}.section-label{margin-bottom:30px}.footer{padding:32px 7%}}
@media(max-width:480px){.header-actions{gap:7px}.header-actions .button{padding:9px 12px}.site-header nav{font-size:11px}.hero h1{font-size:43px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.fact-box{grid-template-columns:1fr}.amounts{grid-template-columns:repeat(2,1fr)}.donation-box{padding:23px}.footer>span{margin-left:0;width:100%}}

/* Balanced patient story layout */
.story-grid{grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:7%;align-items:center}
.story-visual{max-width:390px}
.patient-photo{display:block;width:100%;height:310px;object-fit:cover;object-position:center 38%;border-radius:8px}
.photo-caption{font-size:10px;letter-spacing:.6px;color:#829391;margin:9px 0 22px}
.story-visual h2{font-size:clamp(30px,3.2vw,40px)}
.story-text{font-size:14px;line-height:1.8}
@media(max-width:850px){.story-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:5%}.patient-photo{height:260px}}
@media(max-width:640px){.story-grid{grid-template-columns:1fr;gap:28px}.story-visual{max-width:100%}.patient-photo{height:280px;max-width:320px}.story-visual h2{font-size:34px}}

/* Bank transfer details */
.bank-transfer-box { text-align: left; }
.bank-details { margin: 1.25rem 0; }
.bank-details div { display: grid; grid-template-columns: minmax(110px, 0.8fr) 1.2fr; gap: 1rem; padding: 0.85rem 0; border-bottom: 1px solid rgba(18,61,69,.14); }
.bank-details dt { font-weight: 700; color: #567074; }
.bank-details dd { margin: 0; overflow-wrap: anywhere; font-weight: 600; color: #123d45; }
@media (max-width: 520px) {
  .bank-details div { grid-template-columns: 1fr; gap: .25rem; }
}

/* Amount selection before revealing transfer instructions */
.bank-transfer-box .amounts { margin: 18px 0 4px; }
.bank-transfer-box .custom-label { margin-top: 18px; }
.bank-transfer-box #bankDetailsPanel { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--line); }
.bank-transfer-box #bankDetailsPanel[hidden] { display: none; }
.bank-panel-title { margin-top: 0 !important; }
.selected-donation { background: var(--mint); color: var(--ink); padding: 12px 14px; border-radius: 4px; font-size: 13px; }
.selected-donation strong { color: var(--teal); }
