.ha-dw { box-sizing:border-box; margin:0 auto; padding:24px; background:linear-gradient(90deg,rgba(3,24,48,.86),rgba(4,30,62,.4)),url("donor-background.png") center/cover no-repeat; color:#fff; }
.ha-dw *, .ha-dw *::before, .ha-dw *::after { box-sizing:border-box; }
.ha-dw-inner { display:grid; grid-template-columns:minmax(0,230px) minmax(0,1fr); align-items:center; gap:26px; width:min(100%,1180px); margin:auto; }
.ha-dw .ha-dw-eyebrow { margin:0 0 10px; color:#ffd43b; text-transform:uppercase; letter-spacing:.16em; font:800 10px/1.5 Arial,sans-serif; }
.ha-dw .ha-dw-heading h2 { margin:0 0 10px; color:#fff; font:700 29px/1.12 Georgia,serif; }
.ha-dw .ha-dw-heading>p:last-child { color:#f2f6fa; margin:0; font:400 13px/1.5 Arial,sans-serif; }
.ha-dw-card { container-type:inline-size; width:100%; padding:14px; background:#fff; color:#082b4a; border-radius:18px; box-shadow:0 10px 28px rgba(0,16,38,.15); min-width:0; }
.ha-dw-card-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.ha-dw .ha-dw-card h3 { margin:0; color:#082b4a; font:700 20px/1.2 Georgia,serif; }
.ha-dw .ha-dw-pause { border:0; background:#edf6fc; color:#315579; padding:6px 12px; min-height:32px; border-radius:18px; font:600 11px Arial,sans-serif; cursor:pointer; }
.ha-dw .ha-dw-pause:focus-visible { outline:2px solid #087cbb; outline-offset:2px; }
.ha-dw [hidden] { display:none!important; }
.ha-dw-list { --ha-dw-visible:6; display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 60px)/6); align-items:stretch; gap:12px; overflow-x:auto; scrollbar-width:thin; list-style:none!important; padding:0!important; margin:0!important; }
.ha-dw-row { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:7px; min-width:0; min-height:146px; padding:12px 9px; border:1px solid #ead8a6; border-radius:13px; background:linear-gradient(150deg,#fffdf7,#f4f9ff); margin:0!important; text-align:center; }
.ha-dw-avatar { width:30px; height:25px; display:grid; place-items:center; color:#bd8b21; }
.ha-dw-crown { display:block; width:30px; height:25px; }
.ha-dw-person { min-width:0; max-width:100%; }
.ha-dw .ha-dw-person strong { display:block; font:700 13px/1.3 Arial,sans-serif; color:#082b4a; overflow-wrap:anywhere; }
.ha-dw-person>span { display:block; margin-top:3px; color:#57718c; font:400 10px/1.3 Arial,sans-serif; }
.ha-dw-person>.ha-dw-city { color:#49647a; font-size:11px; overflow-wrap:anywhere; }
.ha-dw .ha-dw-money strong { display:block; color:#082b4a; font:700 21px/1.2 Georgia,serif; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.ha-dw-money { max-width:100%; text-align:center; }
.ha-dw-money small { display:block; color:#57718c; font:400 10px/1.3 Arial,sans-serif; margin-top:2px; }
.ha-dw .ha-dw-empty { color:#57718c; font:400 13px/1.5 Arial,sans-serif; margin:12px 0; }
.ha-dw .ha-dw-thanks { margin:10px 0 0; color:#315579; font:400 11px/1.4 Arial,sans-serif; text-align:center; }
.ha-dw-thanks>span { display:inline; color:#d29a21; font-size:15px; margin-right:6px; }
.ha-dw--product { margin-top:22px; padding:18px; border-radius:18px; }
.ha-dw--product .ha-dw-inner { grid-template-columns:minmax(0,1fr); gap:14px; }
.ha-dw--product .ha-dw-heading h2 { font-size:24px; margin-bottom:6px; }
.woocommerce div.product div.summary .ha-dw .ha-dw-eyebrow { color:#ffd43b; font-size:10px; line-height:1.5; }
.woocommerce div.product div.summary .ha-dw .ha-dw-heading>p:last-child { color:#f2f6fa; font-size:12px; line-height:1.5; }
.woocommerce div.product div.summary .ha-dw .ha-dw-thanks { color:#315579; font-size:11px; line-height:1.4; }
.woocommerce div.product div.summary .ha-dw .ha-dw-empty { color:#57718c; font-size:13px; line-height:1.5; }
@container(max-width:850px) { .ha-dw-list { --ha-dw-visible:5; grid-auto-columns:calc((100% - 48px)/5); } }
@container(max-width:700px) { .ha-dw-list { --ha-dw-visible:4; grid-auto-columns:calc((100% - 36px)/4); } }
@container(max-width:590px) { .ha-dw-list { --ha-dw-visible:3; grid-auto-columns:calc((100% - 24px)/3); } }
@container(max-width:430px) { .ha-dw-list { --ha-dw-visible:2; grid-auto-columns:calc((100% - 12px)/2); } }
@container(max-width:310px) { .ha-dw-list { --ha-dw-visible:1; grid-auto-columns:100%; } }
@media(max-width:750px) { .ha-dw { padding:18px; } .ha-dw-inner { grid-template-columns:minmax(0,1fr); gap:14px; } .ha-dw .ha-dw-heading h2 { font-size:25px; } .ha-dw--product { padding:14px; } }
@supports not (container-type:inline-size) { @media(max-width:1000px) { .ha-dw-list { --ha-dw-visible:2; grid-auto-columns:calc((100% - 12px)/2); } } @media(max-width:430px) { .ha-dw-list { --ha-dw-visible:1; grid-auto-columns:100%; } } .ha-dw--product .ha-dw-list { --ha-dw-visible:1; grid-auto-columns:100%; } }
.ha-dw-consent { padding:16px; margin:15px 0 20px; border:1px solid #dbe6ec; border-radius:12px; background:#f4f9fc; }
.ha-dw-consent label { display:flex!important; align-items:flex-start; gap:10px; color:#082b4a!important; font-size:13px!important; line-height:1.6; }
.ha-dw-consent input[type=checkbox] { flex:0 0 18px; width:18px!important; height:18px!important; min-height:0!important; margin:3px 0 0!important; accent-color:#087cbb; }
.ha-dw-consent p { margin:10px 0 0!important; color:#536b7e!important; font-size:12px!important; font-weight:400!important; line-height:1.6!important; }

.woocommerce div.product .ha-dw-photo-column { min-width:0; }
.woocommerce div.product .ha-dw-photo-column div.images { position:static!important; top:auto; width:100%!important; }
.ha-dw-photo-column .ha-dw--product { margin-top:16px; }

.ha-dw-heart { display:block; width:25px; height:25px; color:#bd8b21; }
