
:root{
  --ahd-green:#0b5a45;
  --ahd-green-dark:#074534;
  --ahd-green-soft:#eaf2ed;
  --ahd-ivory:#f7f4ec;
  --ahd-paper:#fffefa;
  --ahd-gold:#b08a3d;
  --ahd-gold-soft:#eadfbe;
  --ahd-ink:#173d32;
  --ahd-muted:#75827b;
  --ahd-line:#e6dfd3;
}
html{scroll-behavior:smooth}
body:has(.ahd-app-stage){
  background:#eef1ed!important;
}
.ahd-app-stage{
  width:100vw;
  margin-left:calc(50% - 50vw);
  min-height:100vh;
  padding:0 18px 44px;
  background:
    radial-gradient(circle at 50% -10%,rgba(12,93,72,.08),transparent 28%),
    #eef1ed;
  color:var(--ahd-ink);
  font-family:inherit;
}
.ahd-app-stage *{box-sizing:border-box}
.ahd-app{
  position:relative;
  width:min(720px,100%);
  min-height:100vh;
  margin:0 auto;
  overflow:hidden;
  border-right:1px solid rgba(35,71,58,.06);
  border-left:1px solid rgba(35,71,58,.06);
  background:#fffefa;
  box-shadow:0 18px 70px rgba(20,53,43,.12);
}
.ahd-topbar{
  padding:10px 16px 5px;
  background:linear-gradient(180deg,#0b5d48,#0a5542);
}
.ahd-site-pill{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:min(340px,72%);
  min-height:32px;
  margin:0 auto;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  background:rgba(255,255,255,.07);
  color:rgba(255,255,255,.82);
  font-size:11px;
  font-weight:700;
}
.ahd-lock{
  color:#e8d9aa;
  font-size:7px;
}
.ahd-app-header{
  display:grid;
  grid-template-columns:auto minmax(180px,1fr) auto;
  gap:14px;
  align-items:center;
  padding:15px 18px 17px;
  background:linear-gradient(180deg,#0a5a45,#0a5642);
  color:#fff;
}
.ahd-brand{
  display:flex;
  align-items:center;
  gap:9px;
}
.ahd-brand-seal{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:2px solid rgba(238,221,174,.8);
  border-radius:50%;
  background:#fff;
  color:#0b5a45;
  font-family:Georgia,serif;
  font-size:14px;
  font-weight:700;
  box-shadow:0 2px 8px rgba(0,0,0,.12);
}
.ahd-brand-copy b,
.ahd-brand-copy small{
  display:block;
}
.ahd-brand-copy b{
  font-family:Georgia,serif;
  font-size:19px;
  font-weight:400;
  line-height:1.1;
}
.ahd-brand-copy small{
  margin-top:2px;
  color:rgba(255,255,255,.68);
  font-size:8px;
}
.ahd-search{
  position:relative;
  display:flex;
  align-items:center;
  min-width:0;
}
.ahd-search>span{
  position:absolute;
  left:13px;
  color:rgba(255,255,255,.72);
  font-family:Georgia,serif;
  font-size:20px;
  pointer-events:none;
}
.ahd-search input{
  width:100%;
  min-height:39px;
  padding:0 13px 0 38px!important;
  border:1px solid rgba(255,255,255,.06)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  box-shadow:none!important;
  outline:0!important;
  font-size:11px!important;
}
.ahd-search input::placeholder{color:rgba(255,255,255,.55)}
.ahd-notice-btn{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#fff;
  font-size:19px;
}
.ahd-category-strip{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:3px;
  padding:11px 14px 9px;
  border-bottom:1px solid #eee8dd;
  background:#fff;
}
.ahd-category{
  display:grid;
  justify-items:center;
  gap:6px;
  padding:4px 2px;
  color:#5a665f!important;
  text-decoration:none!important;
}
.ahd-category-icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid #e9e1d5;
  border-radius:13px;
  background:linear-gradient(145deg,#fff,#f8f4ea);
  color:#0b5a45;
  font-size:20px;
  box-shadow:0 4px 13px rgba(39,72,61,.08);
}
.ahd-category b{
  font-size:9px;
  line-height:1.2;
  text-align:center;
}
.ahd-feature-banner{
  position:relative;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  min-height:225px;
  margin:14px 16px 0;
  overflow:hidden;
  border-radius:16px;
  background:
    radial-gradient(circle at 86% 20%,rgba(210,183,112,.18),transparent 30%),
    linear-gradient(135deg,#0a5742,#084533);
  color:#fff;
}
.ahd-feature-banner:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.12;
  background:
    radial-gradient(circle at 20% 40%,transparent 0 28px,rgba(255,255,255,.22) 29px 30px,transparent 31px),
    radial-gradient(circle at 70% 75%,transparent 0 34px,rgba(255,255,255,.14) 35px 36px,transparent 37px);
}
.ahd-feature-copy{
  position:relative;
  z-index:1;
  padding:30px 16px 26px 28px;
}
.ahd-section-kicker{
  display:block;
  color:#d4b76f;
  font-size:8px;
  font-weight:900;
  letter-spacing:.13em;
}
.ahd-feature-copy h1{
  margin:8px 0 0;
  color:#fff;
  font-family:Georgia,serif;
  font-size:31px;
  font-weight:400;
  line-height:1.08;
}
.ahd-feature-copy h1 em{
  display:block;
  color:#e2bd5f;
  font-style:normal;
}
.ahd-feature-copy p{
  max-width:320px;
  margin:10px 0 0;
  color:rgba(255,255,255,.8);
  font-size:10px;
  line-height:1.55;
}
.ahd-feature-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  margin-top:16px;
  padding:0 16px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:9px;
  background:linear-gradient(180deg,#d4ae4f,#b3892d);
  color:#fff!important;
  box-shadow:0 6px 15px rgba(0,0,0,.16);
  font-size:10px;
  font-weight:900;
  text-decoration:none!important;
}
.ahd-feature-art{
  position:relative;
  display:grid;
  place-items:end center;
  z-index:1;
}
.ahd-arch{
  position:absolute;
  right:10px;
  bottom:-14px;
  width:92%;
  height:86%;
  overflow:hidden;
  border:4px solid #d9b45e;
  border-bottom:0;
  border-radius:48% 48% 0 0 / 36% 36% 0 0;
  background:
    radial-gradient(circle at 50% 85%,#dfe7df 0 12%,transparent 13%),
    linear-gradient(180deg,#edf3ea,#cbd9cf);
}
.ahd-children-mark{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  display:grid;
  place-items:center;
  height:55%;
  padding:12px;
  background:
    repeating-linear-gradient(90deg,rgba(9,82,63,.10) 0 16px,rgba(255,255,255,.22) 16px 32px),
    linear-gradient(180deg,#f4f0df,#d8e2da);
  color:#0a5642;
  text-align:center;
}
.ahd-children-mark span{
  font-family:Georgia,serif;
  font-size:28px;
}
.ahd-children-mark small{
  margin-top:3px;
  color:#61756b;
  font-size:7px;
}
.ahd-overview-card{
  display:grid;
  grid-template-columns:1.65fr repeat(3,.72fr);
  align-items:stretch;
  margin:13px 16px 0;
  overflow:hidden;
  border:1px solid #e8e0d4;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(30,62,51,.08);
}
.ahd-overview-total{
  padding:18px 19px;
}
.ahd-overview-total small,
.ahd-overview-total strong,
.ahd-overview-total span{
  display:block;
}
.ahd-overview-total small{
  color:#7d8882;
  font-size:8px;
}
.ahd-overview-total strong{
  margin-top:4px;
  color:#0b5a45;
  font-family:Georgia,serif;
  font-size:21px;
  font-weight:400;
}
.ahd-overview-total span{
  margin-top:5px;
  color:#9aa19d;
  font-size:7px;
}
.ahd-overview-stat{
  display:grid;
  align-content:center;
  justify-items:center;
  padding:10px 6px;
  border-left:1px solid #eee8de;
  text-align:center;
}
.ahd-overview-stat b{
  color:#0b5a45;
  font-family:Georgia,serif;
  font-size:20px;
  font-weight:400;
}
.ahd-overview-stat small{
  margin-top:5px;
  color:#7f8a84;
  font-size:7px;
  line-height:1.35;
}
.ahd-campaign-section{
  padding:22px 16px 8px;
}
.ahd-section-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.ahd-section-heading h2{
  margin:0;
  color:#223f36;
  font-family:Georgia,serif;
  font-size:18px;
  font-weight:400;
}
.ahd-section-heading a{
  color:#0b5a45!important;
  font-size:8px;
  font-weight:900;
  text-decoration:none!important;
}
.ahd-campaign-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
}
.ahd-campaign-card{
  overflow:hidden;
  border:1px solid #e7e0d5;
  border-radius:11px;
  background:#fff;
  box-shadow:0 6px 16px rgba(31,62,52,.06);
}
.ahd-campaign-visual{
  position:relative;
  display:flex;
  align-items:flex-end;
  min-height:115px;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 20%,rgba(255,255,255,.32),transparent 25%),
    linear-gradient(135deg,#dbe8dd,#aac2b5);
}
.ahd-campaign-visual.food{
  background:linear-gradient(135deg,#eadfbe,#c5d5bc);
}
.ahd-campaign-visual.general{
  background:linear-gradient(135deg,#d8e3db,#b5c7bd);
}
.ahd-campaign-visual>span{
  position:relative;
  z-index:1;
  margin:0 0 8px 8px;
  padding:4px 7px;
  border-radius:999px;
  background:#0b5a45;
  color:#fff;
  font-size:7px;
  font-weight:900;
}
.ahd-campaign-art-mark{
  position:absolute;
  right:10px;
  bottom:5px;
  color:rgba(11,90,69,.18);
  font-family:Georgia,serif;
  font-size:72px;
  line-height:1;
}
.ahd-campaign-body{
  padding:10px 10px 11px;
}
.ahd-campaign-body h3{
  min-height:39px;
  margin:0;
  color:#2b483f;
  font-family:Georgia,serif;
  font-size:11px;
  font-weight:400;
  line-height:1.35;
}
.ahd-campaign-body p{
  min-height:48px;
  margin:6px 0 0;
  color:#89928d;
  font-size:7px;
  line-height:1.5;
}
.ahd-campaign-body strong{
  display:block;
  margin-top:8px;
  color:#0b5a45;
  font-size:9px;
}
.ahd-progress{
  height:5px;
  margin-top:7px;
  overflow:hidden;
  border-radius:999px;
  background:#ece9df;
}
.ahd-progress i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#0b5a45;
}
.ahd-campaign-body>small{
  display:block;
  margin-top:4px;
  color:#8e9792;
  font-size:6.5px;
}
.ahd-campaign-body button{
  width:100%;
  min-height:32px;
  margin-top:9px;
  border:0;
  border-radius:8px;
  background:#f4efe1;
  color:#745f2f;
  font-size:7px;
  font-weight:900;
  cursor:pointer;
}
.ahd-donate-panel{
  margin:18px 16px 92px;
  padding:22px 18px 20px;
  border:1px solid #e4ddd1;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 22px rgba(30,62,51,.06);
}
.ahd-donate-head h2{
  margin:6px 0 0;
  color:#173d32;
  font-family:Georgia,serif;
  font-size:22px;
  font-weight:400;
}
.ahd-donate-head p{
  margin:6px 0 0;
  color:#82908a;
  font-size:8px;
}
.ahd-programs{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
  margin-top:15px;
}
.ahd-program-card{
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:66px;
  padding:11px 12px;
  border:1px solid #e4ddd2;
  border-radius:10px;
  background:#fbfaf7;
  cursor:pointer;
}
.ahd-program-card.is-selected{
  border-color:#b49b66;
  background:#f7f5ec;
  box-shadow:inset 3px 0 0 #0b5a45;
}
.ahd-program-card input{
  position:absolute;width:1px;height:1px;opacity:0;pointer-events:none
}
.ahd-program-mark{
  color:#ad8a43;
  font-size:8px;
  font-weight:900;
}
.ahd-program-copy{
  display:block;
  min-width:0;
}
.ahd-program-copy b{
  display:block;
  color:#315047;
  font-size:9px;
}
.ahd-program-copy small{
  display:block;
  margin-top:3px;
  color:#8c9590;
  font-size:6.5px;
  line-height:1.4;
}
.ahd-program-card>i{
  margin-left:auto;
  color:transparent;
  font-size:9px;
  font-style:normal;
}
.ahd-program-card.is-selected>i{color:#0b5a45}
.ahd-amounts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:7px;
  margin-top:14px;
}
.ahd-amounts button{
  min-height:39px;
  border:1px solid #ded7cc;
  border-radius:9px;
  background:#fff;
  color:#365248;
  font-size:8px;
  font-weight:900;
}
.ahd-amounts button.is-selected{
  border-color:#aa9057;
  background:#f6f4ea;
  color:#0b5a45;
}
.ahd-custom-amount{
  display:flex;
  align-items:center;
  margin-top:8px;
  overflow:hidden;
  border:1px solid #dcd5c9;
  border-radius:9px;
}
.ahd-custom-amount[hidden]{display:none!important}
.ahd-custom-amount span{
  padding-left:11px;
  color:#75837c;
  font-size:9px;
}
.ahd-custom-amount input{
  width:100%;
  min-height:39px;
  padding:0 10px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  color:#315047!important;
  font-size:9px!important;
}
.ahd-form-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:9px;
  margin-top:14px;
}
.ahd-form-grid label:not(.ahd-anonymous),
.ahd-message{
  display:grid;
  gap:5px;
  color:#51675e;
  font-size:7px;
  font-weight:900;
}
.ahd-form-grid input[type=text],
.ahd-form-grid input[type=tel],
.ahd-form-grid input[type=email],
.ahd-message textarea{
  width:100%;
  min-height:39px;
  padding:0 9px!important;
  border:1px solid #dcd5ca!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#2b4b42!important;
  box-shadow:none!important;
  outline:0!important;
  font-size:8px!important;
}
.ahd-message{
  margin-top:9px;
}
.ahd-message textarea{
  min-height:70px;
  padding:8px 9px!important;
  resize:vertical;
}
.ahd-anonymous{
  position:relative;
  display:flex;
  align-items:center;
  gap:7px;
  grid-column:1/-1;
  min-height:34px;
  color:#66756e;
  font-size:7px;
  cursor:pointer;
}
.ahd-anonymous input{
  position:absolute;width:1px;height:1px;opacity:0;pointer-events:none
}
.ahd-anonymous i{
  display:grid;
  place-items:center;
  width:16px;
  height:16px;
  border:1px solid #aeb7b1;
  border-radius:4px;
}
.ahd-anonymous input:checked+i{
  background:#0b5a45;
  border-color:#0b5a45;
}
.ahd-anonymous input:checked+i:after{
  content:"✓";
  color:#fff;
  font-size:8px;
  font-style:normal;
}
.ahd-payment-preview{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:50px;
  margin-top:14px;
  padding:10px 12px;
  border:1px solid #e5dfd5;
  border-radius:10px;
  background:#faf8f2;
}
.ahd-payment-preview small,
.ahd-payment-preview b{
  display:block;
}
.ahd-payment-preview small{
  color:#9a7b35;
  font-size:6px;
  font-weight:900;
}
.ahd-payment-preview b{
  margin-top:3px;
  color:#465c53;
  font-size:7px;
}
.ahd-payment-preview>span{
  color:#9b8248;
  font-size:18px;
}
.ahd-main-button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  min-height:44px;
  margin-top:12px;
  border:0;
  border-radius:9px;
  background:linear-gradient(180deg,#0c5a45,#084735);
  color:#fff;
  font-size:8px;
  font-weight:900;
  box-shadow:0 7px 16px rgba(7,69,53,.14);
}
.ahd-main-button.is-preview{
  background:linear-gradient(180deg,#a48642,#80642d);
}
.ahd-main-button.is-disabled{
  background:#87928d;
  box-shadow:none;
}
.ahd-preview-note,
.ahd-privacy-note{
  margin:7px 0 0;
  color:#909894;
  font-size:6.5px;
  text-align:center;
}
.ahd-bottom-nav{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  z-index:10;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  min-height:66px;
  border-top:1px solid #e6e0d6;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.ahd-bottom-nav a{
  position:relative;
  display:grid;
  place-items:center;
  align-content:center;
  gap:3px;
  color:#9aa09d!important;
  text-decoration:none!important;
}
.ahd-bottom-nav a span{
  font-size:18px;
  line-height:1;
}
.ahd-bottom-nav a b{
  font-size:7px;
}
.ahd-bottom-nav a.is-active{
  color:#0b5a45!important;
}
.ahd-bottom-nav a.is-active:before{
  content:"";
  position:absolute;
  top:0;
  width:54%;
  height:2px;
  border-radius:0 0 999px 999px;
  background:#0b5a45;
}
.ahd-modal[hidden]{display:none!important}
.ahd-modal{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  padding:20px;
}
.ahd-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(5,31,24,.7);
  backdrop-filter:blur(5px);
}
.ahd-modal-card{
  position:relative;
  z-index:1;
  width:min(420px,100%);
  padding:25px;
  border:1px solid #d9c89f;
  border-radius:16px;
  background:#fffefa;
  box-shadow:0 26px 80px rgba(0,0,0,.27);
}
.ahd-modal-card h3{
  margin:7px 0 0;
  color:#173d32;
  font-family:Georgia,serif;
  font-size:21px;
  font-weight:400;
}
.ahd-modal-card p{
  margin:9px 0 0;
  color:#6e7b75;
  font-size:9px;
  line-height:1.6;
}
.ahd-modal-card>button:not(.ahd-modal-x){
  min-height:38px;
  margin-top:16px;
  padding:0 14px;
  border:0;
  border-radius:8px;
  background:#0b5a45;
  color:#fff;
  font-size:8px;
  font-weight:900;
}
.ahd-modal-x{
  position:absolute;
  right:10px;
  top:8px;
  width:30px;
  height:30px;
  border:0;
  background:transparent;
  color:#7e8983;
  font-size:21px;
}
@media(max-width:760px){
  .ahd-app-stage{
    padding:0;
    background:#fffefa;
  }
  .ahd-app{
    width:100%;
    border:0;
    box-shadow:none;
  }
  .ahd-app-header{
    grid-template-columns:auto 1fr;
  }
  .ahd-brand-copy{
    display:none;
  }
  .ahd-notice-btn{
    display:none;
  }
  .ahd-category-strip{
    overflow-x:auto;
    grid-template-columns:repeat(5,minmax(76px,1fr));
    scrollbar-width:none;
  }
  .ahd-category-strip::-webkit-scrollbar{display:none}
  .ahd-feature-banner{
    min-height:202px;
    margin:12px 10px 0;
  }
  .ahd-feature-copy{
    padding:24px 12px 22px 18px;
  }
  .ahd-feature-copy h1{
    font-size:25px;
  }
  .ahd-feature-copy p{
    max-width:230px;
    font-size:8px;
  }
  .ahd-overview-card{
    grid-template-columns:1.45fr repeat(3,.7fr);
    margin:11px 10px 0;
  }
  .ahd-overview-total{
    padding:14px 12px;
  }
  .ahd-overview-total strong{
    font-size:17px;
  }
  .ahd-overview-stat b{
    font-size:16px;
  }
  .ahd-campaign-section{
    padding:18px 10px 6px;
  }
  .ahd-campaign-grid{
    display:flex;
    gap:8px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .ahd-campaign-grid::-webkit-scrollbar{display:none}
  .ahd-campaign-card{
    flex:0 0 78%;
    scroll-snap-align:start;
  }
  .ahd-donate-panel{
    margin:16px 10px 84px;
    padding:18px 14px;
  }
  .ahd-programs{
    grid-template-columns:1fr;
  }
  .ahd-form-grid{
    grid-template-columns:1fr;
  }
  .ahd-form-grid input[type=text],
  .ahd-form-grid input[type=tel],
  .ahd-form-grid input[type=email],
  .ahd-message textarea,
  .ahd-custom-amount input{
    font-size:16px!important;
  }
  .ahd-bottom-nav{
    position:fixed;
    right:0;
    bottom:0;
    left:0;
    width:100%;
    max-width:720px;
    margin:0 auto;
  }
}
@media(max-width:430px){
  .ahd-topbar{
    display:none;
  }
  .ahd-app-header{
    padding:11px 12px 12px;
  }
  .ahd-brand-seal{
    width:36px;
    height:36px;
    font-size:12px;
  }
  .ahd-search input{
    min-height:36px;
    font-size:10px!important;
  }
  .ahd-category-icon{
    width:40px;
    height:40px;
  }
  .ahd-category b{
    font-size:8px;
  }
  .ahd-feature-banner{
    grid-template-columns:1.25fr .75fr;
    min-height:186px;
  }
  .ahd-feature-copy h1{
    font-size:22px;
  }
  .ahd-feature-button{
    min-height:34px;
    padding:0 12px;
    font-size:8px;
  }
  .ahd-overview-card{
    grid-template-columns:1fr repeat(3,.64fr);
  }
  .ahd-overview-total span{
    display:none;
  }
  .ahd-overview-stat small{
    font-size:6px;
  }
  .ahd-amounts{
    grid-template-columns:repeat(2,1fr);
  }
}


/* =========================================================
   V3.7.35 — REFERENCE-ACCURATE DONATION APP
   - No fake domain/browser bar
   - Real Al-Hasan logo
   - Live HTML/CSS banner with ornamental background + photo area
   ========================================================= */

/* The real browser already shows the domain; keep the app clean. */
.ahd-topbar,
.ahd-site-pill,
.ahd-lock{
  display:none!important;
}

/* Header becomes close to the original donation-app reference:
   logo on the left, large search field, subtle action on the right. */
.ahd-app-header{
  grid-template-columns:52px minmax(0,1fr) 38px!important;
  gap:13px!important;
  padding:15px 19px!important;
  background:
    radial-gradient(circle at 90% 10%,rgba(225,196,121,.08),transparent 26%),
    linear-gradient(180deg,#0b5b46,#09513f)!important;
}
.ahd-brand{
  display:grid!important;
  place-items:center;
  width:46px!important;
  height:46px!important;
  padding:3px!important;
  border:1px solid rgba(231,211,163,.52);
  border-radius:50%;
  background:#fff;
  box-shadow:0 4px 12px rgba(0,0,0,.14);
  overflow:hidden;
}
.ahd-brand img{
  display:block;
  width:100%;
  height:100%;
  border-radius:50%;
  object-fit:cover;
}
.ahd-brand-seal,
.ahd-brand-copy{
  display:none!important;
}
.ahd-search input{
  min-height:42px!important;
  padding-left:42px!important;
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.07)!important;
  font-size:12px!important;
}
.ahd-search>span{
  left:15px!important;
  font-size:22px!important;
}
.ahd-notice-btn{
  display:grid!important;
  width:38px!important;
  height:38px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.055)!important;
}

/* Categories: cleaner circular controls, visually closer to the reference. */
.ahd-category-strip{
  gap:7px!important;
  padding:13px 18px 12px!important;
  background:#fffefa!important;
}
.ahd-category-icon{
  width:48px!important;
  height:48px!important;
  border:1px solid #d7bd78!important;
  border-radius:50%!important;
  background:#fffefa!important;
  box-shadow:0 5px 14px rgba(36,69,58,.055)!important;
  color:#0b5a45!important;
}
.ahd-category b{
  color:#465a52!important;
  font-size:9px!important;
  font-weight:700!important;
}

/* Main banner: actual HTML/CSS composition, not a pasted screenshot. */
.ahd-feature-banner{
  isolation:isolate;
  grid-template-columns:1.05fr .95fr!important;
  min-height:246px!important;
  margin:16px 18px 0!important;
  border:1px solid rgba(214,183,104,.46)!important;
  border-radius:19px!important;
  background:
    radial-gradient(circle at 9% 14%,rgba(215,181,91,.15),transparent 18%),
    radial-gradient(circle at 42% 115%,rgba(215,181,91,.12),transparent 27%),
    linear-gradient(132deg,#073d30 0%,#07503c 48%,#0b5c46 100%)!important;
  box-shadow:0 12px 28px rgba(10,63,48,.16)!important;
}
.ahd-feature-banner:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  opacity:.36!important;
  pointer-events:none!important;
  background-image:
    radial-gradient(circle at 0 0,transparent 0 18px,rgba(223,191,108,.23) 19px 20px,transparent 21px),
    radial-gradient(circle at 36px 36px,transparent 0 18px,rgba(223,191,108,.16) 19px 20px,transparent 21px)!important;
  background-size:72px 72px!important;
  mask-image:linear-gradient(90deg,#000 0 55%,transparent 88%)!important;
  -webkit-mask-image:linear-gradient(90deg,#000 0 55%,transparent 88%)!important;
}
.ahd-feature-banner:after{
  content:"";
  position:absolute;
  left:-76px;
  bottom:-104px;
  z-index:0;
  width:245px;
  height:245px;
  border:1px solid rgba(221,188,101,.34);
  border-radius:50%;
  box-shadow:
    0 0 0 18px rgba(221,188,101,.035),
    0 0 0 38px rgba(221,188,101,.025);
}
.ahd-feature-copy{
  position:relative!important;
  z-index:3!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:31px 10px 29px 31px!important;
}
.ahd-feature-copy:after{
  content:"";
  position:absolute;
  top:22px;
  left:18px;
  width:54px;
  height:1px;
  background:linear-gradient(90deg,#d5ad4e,transparent);
}
.ahd-feature-copy h1{
  max-width:360px!important;
  margin-top:9px!important;
  font-size:33px!important;
  line-height:1.06!important;
  text-shadow:0 2px 8px rgba(0,0,0,.12);
}
.ahd-feature-copy h1 em{
  color:#e1bc5e!important;
}
.ahd-feature-copy p{
  max-width:330px!important;
  margin-top:11px!important;
  color:rgba(255,255,255,.82)!important;
  font-size:10px!important;
  line-height:1.6!important;
}
.ahd-feature-button{
  align-self:flex-start;
  min-height:40px!important;
  margin-top:16px!important;
  padding:0 18px!important;
  border-color:rgba(255,244,209,.45)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,#d5b252,#b68b2b)!important;
  box-shadow:0 7px 17px rgba(0,0,0,.18)!important;
  font-size:10px!important;
}

/* The photo is a separate live image layer. */
.ahd-feature-art{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  min-width:0;
}
.ahd-feature-photo{
  position:absolute;
  top:15px;
  right:14px;
  bottom:0;
  left:0;
  overflow:hidden;
  border-top:3px solid #d2ab50;
  border-right:3px solid #d2ab50;
  border-left:3px solid #d2ab50;
  border-radius:48% 48% 0 0 / 31% 31% 0 0;
  background:#dce4dd;
  box-shadow:
    -18px 0 30px rgba(4,46,34,.22),
    inset 0 0 0 1px rgba(255,255,255,.22);
}
.ahd-feature-photo:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(6,59,44,.20),transparent 34%),
    linear-gradient(0deg,rgba(5,50,38,.20),transparent 36%);
  pointer-events:none;
}
.ahd-feature-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.ahd-arch,
.ahd-children-mark{
  display:none!important;
}

/* Stats closer to the clean single-card reference. */
.ahd-overview-card{
  margin:14px 18px 0!important;
  border-color:#e7dfd2!important;
  border-radius:17px!important;
  background:
    radial-gradient(circle at 6% 22%,rgba(200,171,96,.065),transparent 22%),
    #fff!important;
  box-shadow:0 11px 27px rgba(32,63,53,.075)!important;
}
.ahd-overview-total{
  padding:20px 20px!important;
}
.ahd-overview-total strong{
  margin-top:5px!important;
  font-size:23px!important;
}
.ahd-overview-stat{
  padding:12px 7px!important;
}

/* Campaign cards get the white rounded treatment from the reference. */
.ahd-campaign-section{
  padding:24px 18px 10px!important;
}
.ahd-campaign-grid{
  gap:10px!important;
}
.ahd-campaign-card{
  border-radius:13px!important;
  box-shadow:0 7px 18px rgba(31,62,52,.065)!important;
}
.ahd-campaign-visual{
  min-height:120px!important;
}

/* Bottom nav visually sits as part of the narrow app. */
.ahd-bottom-nav{
  min-height:70px!important;
  box-shadow:0 -6px 20px rgba(24,55,45,.055);
}

@media(max-width:760px){
  .ahd-app-header{
    grid-template-columns:45px minmax(0,1fr) 36px!important;
    padding:12px 12px!important;
  }
  .ahd-brand{
    width:40px!important;
    height:40px!important;
  }
  .ahd-notice-btn{
    display:grid!important;
    width:34px!important;
    height:34px!important;
  }
  .ahd-category-strip{
    padding-right:11px!important;
    padding-left:11px!important;
  }
  .ahd-feature-banner{
    min-height:218px!important;
    margin:12px 10px 0!important;
    border-radius:16px!important;
  }
  .ahd-feature-copy{
    padding:25px 6px 23px 18px!important;
  }
  .ahd-feature-copy h1{
    font-size:26px!important;
  }
  .ahd-feature-copy p{
    max-width:245px!important;
    font-size:8px!important;
  }
  .ahd-feature-photo{
    top:13px;
    right:8px;
    border-width:2px;
  }
  .ahd-overview-card{
    margin:11px 10px 0!important;
  }
  .ahd-campaign-section{
    padding-right:10px!important;
    padding-left:10px!important;
  }
}

@media(max-width:430px){
  .ahd-app-header{
    grid-template-columns:38px minmax(0,1fr) 32px!important;
    gap:8px!important;
  }
  .ahd-brand{
    width:36px!important;
    height:36px!important;
  }
  .ahd-notice-btn{
    width:32px!important;
    height:32px!important;
    font-size:16px!important;
  }
  .ahd-category-strip{
    grid-template-columns:repeat(5,minmax(68px,1fr))!important;
  }
  .ahd-category-icon{
    width:40px!important;
    height:40px!important;
    font-size:17px!important;
  }
  .ahd-feature-banner{
    grid-template-columns:1.08fr .92fr!important;
    min-height:192px!important;
  }
  .ahd-feature-copy{
    padding-left:15px!important;
  }
  .ahd-feature-copy h1{
    font-size:22px!important;
  }
  .ahd-feature-copy p{
    max-width:205px!important;
    font-size:7.5px!important;
  }
  .ahd-feature-button{
    min-height:34px!important;
    padding:0 11px!important;
    font-size:8px!important;
  }
  .ahd-feature-photo{
    left:-5px;
  }
}


/* =========================================================
   V3.7.36 — HIDE THEME PAGE TITLE ON /DONASI/
   donation.css hanya dimuat pada halaman Donasi publik.
   Judul tetap tersimpan di editor/admin, tetapi tidak tampil
   sebagai heading tema di frontend.
   ========================================================= */
body .entry-header,
body header.entry-header,
body .page-header,
body .page-title,
body h1.entry-title,
body .wp-block-post-title,
body .post-title{
  display:none!important;
}

/* Hilangkan ruang yang biasanya ditinggalkan template tema */
body .site-main,
body main.site-main,
body .site-content,
body .content-area,
body .entry-content,
body article.page,
body article.type-page{
  margin-top:0!important;
  padding-top:0!important;
}

body .entry-content{
  margin-bottom:0!important;
}

body article.page,
body article.type-page{
  margin-bottom:0!important;
}

/* Bila tema memberi max-width pada konten halaman, app-shell
   tetap mengambil alih lebarnya sendiri. */
body .entry-content>.ahd-app-stage{
  margin-top:0!important;
}


/* =========================================================
   V3.7.38 — TRUE STANDALONE DONATION PAGE
   Template plugin sendiri: tanpa header/footer/judul tema.
   ========================================================= */
html:has(body.ahsim-donation-standalone),
body.ahsim-donation-standalone{
  width:100%;
  min-height:100%;
  margin:0!important;
  padding:0!important;
  background:#eef1ed!important;
}

body.ahsim-donation-standalone{
  overflow-x:hidden;
}

body.ahsim-donation-standalone #wpadminbar{
  display:none!important;
}

body.ahsim-donation-standalone .ahsim-donation-root{
  width:100%;
  min-height:100vh;
  margin:0!important;
  padding:0!important;
}

body.ahsim-donation-standalone .ahd-app-stage{
  margin-left:0!important;
}

/* Defensive: bila theme/plugin menyisipkan wrapper global via hook,
   jangan biarkan tampil di halaman Donasi standalone. */
body.ahsim-donation-standalone > header:not(.ahd-app-header),
body.ahsim-donation-standalone > footer,
body.ahsim-donation-standalone .site-header,
body.ahsim-donation-standalone .site-footer,
body.ahsim-donation-standalone #masthead,
body.ahsim-donation-standalone #colophon{
  display:none!important;
}

@media(max-width:760px){
  html:has(body.ahsim-donation-standalone),
  body.ahsim-donation-standalone{
    background:#fffefa!important;
  }
}


/* =========================================================
   V3.7.39 — READABLE TYPOGRAPHY + TRUE APP FOOTER
   ========================================================= */

/* General readable scale */
.ahd-search input{
  font-size:14px!important;
}
.ahd-category b{
  font-size:11px!important;
  line-height:1.3!important;
}
.ahd-category-icon{
  width:52px!important;
  height:52px!important;
  font-size:24px!important;
}

.ahd-section-kicker{
  font-size:10px!important;
}
.ahd-feature-copy h1{
  font-size:36px!important;
}
.ahd-feature-copy p{
  font-size:13px!important;
  line-height:1.65!important;
}
.ahd-feature-button{
  min-height:44px!important;
  padding:0 19px!important;
  font-size:12px!important;
}

.ahd-overview-total small{
  font-size:11px!important;
}
.ahd-overview-total strong{
  font-size:26px!important;
}
.ahd-overview-total span{
  font-size:10px!important;
}
.ahd-overview-stat b{
  font-size:23px!important;
}
.ahd-overview-stat small{
  font-size:10px!important;
  line-height:1.4!important;
}

.ahd-section-heading h2{
  font-size:21px!important;
}
.ahd-section-heading a{
  font-size:11px!important;
}

.ahd-campaign-visual>span{
  font-size:9px!important;
}
.ahd-campaign-body h3{
  min-height:auto!important;
  font-size:14px!important;
  line-height:1.4!important;
}
.ahd-campaign-body p{
  min-height:auto!important;
  font-size:10.5px!important;
  line-height:1.55!important;
}
.ahd-campaign-body strong{
  font-size:12px!important;
}
.ahd-campaign-body>small{
  font-size:9px!important;
}
.ahd-campaign-body button{
  min-height:38px!important;
  font-size:10px!important;
}

.ahd-donate-head h2{
  font-size:26px!important;
}
.ahd-donate-head p{
  font-size:11px!important;
  line-height:1.5!important;
}
.ahd-program-mark{
  font-size:10px!important;
}
.ahd-program-copy b{
  font-size:12px!important;
}
.ahd-program-copy small{
  font-size:9.5px!important;
  line-height:1.45!important;
}
.ahd-program-card>i{
  font-size:12px!important;
}
.ahd-amounts button{
  min-height:46px!important;
  font-size:11px!important;
}
.ahd-custom-amount span{
  font-size:12px!important;
}
.ahd-form-grid label:not(.ahd-anonymous),
.ahd-message{
  font-size:10.5px!important;
}
.ahd-form-grid input[type=text],
.ahd-form-grid input[type=tel],
.ahd-form-grid input[type=email],
.ahd-message textarea{
  min-height:44px!important;
  font-size:12px!important;
}
.ahd-anonymous{
  font-size:10px!important;
}
.ahd-payment-preview small{
  font-size:9px!important;
}
.ahd-payment-preview b{
  font-size:10.5px!important;
}
.ahd-payment-preview>span{
  font-size:24px!important;
}
.ahd-main-button{
  min-height:48px!important;
  font-size:11px!important;
}
.ahd-preview-note,
.ahd-privacy-note{
  font-size:9px!important;
  line-height:1.5!important;
}

/* Campaign visual symbols were too tiny/weak */
.ahd-campaign-art-mark{
  font-size:86px!important;
}

/* TRUE footer: lives at the end of the document, never fixed. */
.ahd-app{
  padding-bottom:0!important;
}
.ahd-donate-panel{
  margin-bottom:24px!important;
}
.ahd-app-footer{
  position:relative;
  z-index:5;
  margin-top:18px;
  border-top:1px solid #e3ddd2;
  background:
    radial-gradient(circle at 50% 0,rgba(178,145,68,.06),transparent 45%),
    #fff;
}
.ahd-bottom-nav{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  width:100%!important;
  max-width:none!important;
  min-height:82px!important;
  margin:0!important;
  border-top:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.ahd-bottom-nav a{
  min-height:82px!important;
  gap:6px!important;
}
.ahd-bottom-nav a span{
  font-size:27px!important;
  line-height:1!important;
}
.ahd-bottom-nav a b{
  font-size:10.5px!important;
  font-weight:800!important;
}
.ahd-bottom-nav a.is-active:before{
  width:42%!important;
  height:3px!important;
}

/* footer bottom breathing room */
.ahd-app-footer:after{
  content:"Yayasan Al-Hasan Surabaya";
  display:block;
  padding:0 16px 18px;
  color:#9aa19d;
  font-size:9px;
  text-align:center;
  letter-spacing:.02em;
}

/* ---------------------------------------------------------
   Mobile scale
   --------------------------------------------------------- */
@media(max-width:760px){
  .ahd-app-stage{
    padding-bottom:0!important;
  }
  .ahd-feature-copy h1{
    font-size:30px!important;
  }
  .ahd-feature-copy p{
    font-size:11px!important;
  }
  .ahd-category b{
    font-size:10px!important;
  }
  .ahd-category-icon{
    width:46px!important;
    height:46px!important;
    font-size:21px!important;
  }

  .ahd-overview-total strong{
    font-size:21px!important;
  }
  .ahd-overview-stat b{
    font-size:19px!important;
  }
  .ahd-overview-stat small{
    font-size:8.5px!important;
  }

  .ahd-campaign-body h3{
    font-size:15px!important;
  }
  .ahd-campaign-body p{
    font-size:11px!important;
  }
  .ahd-campaign-body strong{
    font-size:12px!important;
  }
  .ahd-campaign-body>small{
    font-size:9px!important;
  }
  .ahd-campaign-body button{
    font-size:10px!important;
  }

  .ahd-donate-head h2{
    font-size:24px!important;
  }
  .ahd-donate-head p{
    font-size:11px!important;
  }
  .ahd-program-copy b{
    font-size:12px!important;
  }
  .ahd-program-copy small{
    font-size:10px!important;
  }
  .ahd-form-grid label:not(.ahd-anonymous),
  .ahd-message{
    font-size:11px!important;
  }

  /* Keep 16px fields on phone to avoid Safari zoom */
  .ahd-form-grid input[type=text],
  .ahd-form-grid input[type=tel],
  .ahd-form-grid input[type=email],
  .ahd-message textarea,
  .ahd-custom-amount input{
    font-size:16px!important;
  }

  .ahd-bottom-nav{
    position:relative!important;
  }
  .ahd-bottom-nav a span{
    font-size:26px!important;
  }
  .ahd-bottom-nav a b{
    font-size:10px!important;
  }
}

@media(max-width:430px){
  .ahd-feature-copy h1{
    font-size:25px!important;
  }
  .ahd-feature-copy p{
    font-size:9.5px!important;
  }
  .ahd-category b{
    font-size:9px!important;
  }
  .ahd-overview-total small{
    font-size:9px!important;
  }
  .ahd-overview-total strong{
    font-size:18px!important;
  }
  .ahd-overview-stat b{
    font-size:17px!important;
  }
  .ahd-overview-stat small{
    font-size:7.5px!important;
  }
  .ahd-bottom-nav a span{
    font-size:24px!important;
  }
  .ahd-bottom-nav a b{
    font-size:9.5px!important;
  }
}


/* =========================================================
   V3.7.40 — DONATION CHECKOUT AS A SEPARATE SCREEN
   ========================================================= */
.ahd-campaign-donate{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:38px;
  margin-top:9px;
  border-radius:8px;
  background:#f4efe1;
  color:#745f2f!important;
  font-size:10px;
  font-weight:900;
  text-decoration:none!important;
}
.ahd-campaign-donate:hover{
  background:#eee5ce;
  color:#5f4a1f!important;
}

/* Hide obsolete embedded-form styling by architecture; home ends at campaigns/footer. */
.ahd-checkout-shell{
  width:min(650px,100%);
  min-height:100vh;
  margin:0 auto;
  background:#fff;
  color:#263b50;
}
.ahd-checkout-header{
  position:sticky;
  top:0;
  z-index:20;
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  align-items:center;
  gap:6px;
  min-height:64px;
  padding:0 18px;
  border-bottom:1px solid #edf0f3;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.ahd-checkout-back{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border-radius:50%;
  color:#263b50!important;
  font-size:27px;
  font-weight:400;
  text-decoration:none!important;
}
.ahd-checkout-back:hover{
  background:#f3f5f6;
}
.ahd-checkout-title{
  overflow:hidden;
  color:#263b50;
  font-size:15px;
  font-weight:700;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ahd-checkout-program{
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:20px;
  align-items:center;
  padding:34px 30px 28px;
  border-bottom:1px solid #eef0f2;
  background:linear-gradient(180deg,#fff,#fdfefe);
}
.ahd-checkout-thumb{
  position:relative;
  display:grid;
  place-items:center;
  min-height:145px;
  overflow:hidden;
  border-radius:10px;
  background:
    radial-gradient(circle at 72% 22%,rgba(255,255,255,.34),transparent 26%),
    linear-gradient(135deg,#d9e8dd,#aec8bb);
  box-shadow:0 9px 24px rgba(34,69,58,.12);
}
.ahd-checkout-thumb.food{
  background:linear-gradient(135deg,#efe2b7,#c8d9bd);
}
.ahd-checkout-thumb.jumat{
  background:linear-gradient(135deg,#d6e3db,#b7cdbf);
}
.ahd-checkout-thumb.general{
  background:linear-gradient(135deg,#dce5df,#bdcec4);
}
.ahd-checkout-thumb span{
  color:rgba(11,90,69,.30);
  font-family:Georgia,serif;
  font-size:72px;
}
.ahd-checkout-program-copy small{
  display:block;
  color:#a5b5c3;
  font-size:11px;
}
.ahd-checkout-program-copy h1{
  margin:8px 0 0;
  color:#263b50;
  font-size:18px;
  font-weight:800;
  line-height:1.35;
}
.ahd-checkout-program-copy p{
  margin:8px 0 0;
  color:#7d8c98;
  font-size:11px;
  line-height:1.55;
}
.ahd-checkout-body{
  padding:30px;
}
.ahd-checkout-section h2{
  margin:0 0 19px;
  color:#263b50;
  font-size:15px;
  font-weight:700;
}
.ahd-checkout-amounts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.ahd-checkout-amounts button{
  min-height:80px;
  padding:10px 8px;
  border:1px solid #eef0f3;
  border-radius:13px;
  background:#fff;
  box-shadow:0 10px 27px rgba(44,61,76,.08);
  color:#30343a;
  cursor:pointer;
  transition:.16s ease;
}
.ahd-checkout-amounts button:hover,
.ahd-checkout-amounts button.is-selected{
  border-color:#b59a56;
  background:#faf8f1;
  box-shadow:0 10px 28px rgba(44,61,76,.10),inset 0 0 0 1px #b59a56;
}
.ahd-checkout-amounts b,
.ahd-checkout-amounts small{
  display:block;
}
.ahd-checkout-amounts b{
  font-size:16px;
  font-weight:500;
}
.ahd-checkout-amounts small{
  margin-top:7px;
  color:#a0a5aa;
  font-size:10px;
}
.ahd-checkout-custom-amount{
  display:flex;
  align-items:center;
  margin-top:12px;
  overflow:hidden;
  border:1px solid #dce2e7;
  border-radius:10px;
}
.ahd-checkout-custom-amount[hidden]{
  display:none!important;
}
.ahd-checkout-custom-amount span{
  padding-left:13px;
  color:#63727e;
  font-size:13px;
  font-weight:700;
}
.ahd-checkout-custom-amount input{
  width:100%;
  min-height:48px;
  padding:0 12px!important;
  border:0!important;
  background:#fff!important;
  box-shadow:none!important;
  outline:0!important;
  color:#263b50!important;
  font-size:15px!important;
}
.ahd-payment-row{
  display:grid;
  grid-template-columns:88px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-height:97px;
  margin-top:40px;
  padding:12px 16px;
  border:1px solid #d7e5f1;
  border-radius:6px;
  background:#eef8ff;
}
.ahd-payment-icon{
  display:grid;
  place-items:center;
  min-height:54px;
  border:1px solid #bdd6ed;
  border-radius:5px;
  background:#fff;
  color:#0b5a45;
  font-size:28px;
}
.ahd-payment-row small,
.ahd-payment-row b{
  display:block;
}
.ahd-payment-row small{
  color:#9babb8;
  font-size:9px;
}
.ahd-payment-row b{
  margin-top:4px;
  color:#263b50;
  font-size:13px;
  font-weight:600;
}
.ahd-payment-row>button{
  min-width:100px;
  min-height:42px;
  border:1px solid #6da0d1;
  border-radius:5px;
  background:#fff;
  color:#4778a6;
  font-size:12px;
  cursor:pointer;
}
.ahd-payment-options{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
  margin-top:8px;
  padding:10px;
  border:1px solid #e1e6eb;
  border-radius:9px;
  background:#fff;
  box-shadow:0 10px 28px rgba(38,59,80,.08);
}
.ahd-payment-options[hidden]{
  display:none!important;
}
.ahd-payment-options button{
  min-height:40px;
  border:1px solid #e0e5e9;
  border-radius:7px;
  background:#f8fafb;
  color:#405568;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}
.ahd-payment-options button.is-selected{
  border-color:#0b5a45;
  background:#eff7f4;
  color:#0b5a45;
}
.ahd-salutation{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:14px;
  margin-top:42px;
}
.ahd-salutation>span{
  color:#263b50;
  font-size:13px;
}
.ahd-salutation>div{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  overflow:hidden;
  border:1px solid #dfe4e8;
  border-radius:6px;
}
.ahd-salutation button{
  min-height:46px;
  border:0;
  border-right:1px solid #e2e6e9;
  background:#fff;
  color:#777;
  font-size:12px;
}
.ahd-salutation button:last-child{
  border-right:0;
}
.ahd-salutation button.is-selected{
  background:#0b5a45;
  color:#fff;
}
.ahd-checkout-field{
  display:grid;
  gap:7px;
  margin-top:28px;
}
.ahd-checkout-field>span{
  color:#8b98a4;
  font-size:11px;
  font-weight:700;
}
.ahd-checkout-field>span em{
  color:#a5adb4;
  font-size:10px;
  font-style:normal;
  font-weight:500;
}
.ahd-checkout-field input,
.ahd-checkout-field textarea{
  width:100%;
  min-height:60px;
  padding:0 18px!important;
  border:1px solid #dfe4e8!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#263b50!important;
  box-shadow:none!important;
  outline:0!important;
  font-size:14px!important;
}
.ahd-checkout-field textarea{
  min-height:106px;
  padding-top:14px!important;
  resize:vertical;
}
.ahd-checkout-field input::placeholder,
.ahd-checkout-field textarea::placeholder{
  color:#aab1c5;
}
.ahd-anon-switch{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  min-height:58px;
  margin-top:12px;
  color:#263b50;
  font-size:13px;
  cursor:pointer;
}
.ahd-anon-switch input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.ahd-anon-switch i{
  position:relative;
  flex:0 0 58px;
  width:58px;
  height:32px;
  border-radius:999px;
  background:#d7d9db;
  transition:.18s ease;
}
.ahd-anon-switch i:after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:26px;
  height:26px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 6px rgba(0,0,0,.14);
  transition:.18s ease;
}
.ahd-anon-switch input:checked+i{
  background:#0b5a45;
}
.ahd-anon-switch input:checked+i:after{
  transform:translateX(26px);
}
.ahd-checkout-submit{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  min-height:58px;
  margin-top:34px;
  border:0;
  border-radius:7px;
  background:#0b5a45;
  color:#fff;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}
.ahd-checkout-submit.is-preview{
  background:#a4833a;
}
.ahd-checkout-submit.is-disabled{
  background:#9aa5a0;
  cursor:not-allowed;
}
.ahd-checkout-note{
  margin:10px 0 0;
  color:#9aa5ad;
  font-size:9px;
  text-align:center;
}

@media(max-width:700px){
  .ahd-checkout-shell{
    width:100%;
  }
  .ahd-checkout-header{
    min-height:58px;
    padding:0 12px;
  }
  .ahd-checkout-title{
    font-size:13px;
  }
  .ahd-checkout-program{
    grid-template-columns:110px minmax(0,1fr);
    gap:14px;
    padding:24px 16px 20px;
  }
  .ahd-checkout-thumb{
    min-height:105px;
  }
  .ahd-checkout-thumb span{
    font-size:52px;
  }
  .ahd-checkout-program-copy small{
    font-size:9px;
  }
  .ahd-checkout-program-copy h1{
    font-size:15px;
  }
  .ahd-checkout-program-copy p{
    display:none;
  }
  .ahd-checkout-body{
    padding:22px 16px 28px;
  }
  .ahd-checkout-section h2{
    font-size:14px;
  }
  .ahd-checkout-amounts{
    grid-template-columns:repeat(2,1fr);
    gap:12px;
  }
  .ahd-checkout-amounts button{
    min-height:72px;
  }
  .ahd-payment-row{
    grid-template-columns:58px minmax(0,1fr) auto;
    min-height:82px;
    margin-top:28px;
    padding:10px;
  }
  .ahd-payment-icon{
    min-height:48px;
    font-size:23px;
  }
  .ahd-payment-row>button{
    min-width:76px;
  }
  .ahd-salutation{
    grid-template-columns:1fr;
    gap:8px;
    margin-top:30px;
  }
  .ahd-checkout-field input,
  .ahd-checkout-field textarea,
  .ahd-checkout-custom-amount input{
    font-size:16px!important;
  }
}

@media(max-width:390px){
  .ahd-checkout-program{
    grid-template-columns:88px minmax(0,1fr);
  }
  .ahd-checkout-thumb{
    min-height:88px;
  }
  .ahd-checkout-program-copy h1{
    font-size:14px;
  }
  .ahd-checkout-amounts button{
    min-height:66px;
  }
  .ahd-checkout-amounts b{
    font-size:14px;
  }
}

/* =========================================================
   V3.7.41 — AL-HASAN CHECKOUT PALETTE + PAYMENT MODAL
   Deep green · ivory · restrained gold
   ========================================================= */
.ahd-checkout-shell{background:#fffefa!important;color:#1f473b!important}
.ahd-checkout-header{border-bottom-color:#e9e2d5!important;background:rgba(255,254,250,.97)!important}
.ahd-checkout-back,.ahd-checkout-title{color:#1f473b!important}
.ahd-checkout-back:hover{background:#f3efe6!important}
.ahd-checkout-program{border-bottom-color:#ece5d9!important;background:linear-gradient(180deg,#fffefa,#fbf9f3)!important}
.ahd-checkout-program-copy small{color:#a18442!important}
.ahd-checkout-program-copy h1{color:#1e493c!important}
.ahd-checkout-program-copy p{color:#75847d!important}
.ahd-checkout-body{background:#fffefa!important}
.ahd-checkout-section h2,.ahd-salutation>span,.ahd-anon-switch{color:#294a40!important}
.ahd-checkout-amounts button{border-color:#e5ded2!important;background:#fff!important;color:#375248!important;box-shadow:0 9px 24px rgba(31,67,55,.065)!important}
.ahd-checkout-amounts button:hover,.ahd-checkout-amounts button.is-selected{border-color:#ad945c!important;background:#f8f6ee!important;color:#0b5a45!important;box-shadow:0 9px 24px rgba(31,67,55,.08),inset 0 0 0 1px #ad945c!important}
.ahd-checkout-amounts small{color:#96865f!important}
.ahd-checkout-custom-amount{border-color:#ddd5c8!important;background:#fff!important}
.ahd-checkout-custom-amount span{color:#8a743e!important}
.ahd-checkout-custom-amount input{color:#294a40!important}
button.ahd-payment-row{width:100%;border:1px solid #dcd2bf!important;background:linear-gradient(135deg,#f8f5ec,#fffefa)!important;box-shadow:0 6px 18px rgba(31,67,55,.045)!important;text-align:left;cursor:pointer}
.ahd-payment-icon{border-color:#d5c69e!important;background:#fff!important;color:#0b5a45!important}
.ahd-payment-copy{display:block;min-width:0}
.ahd-payment-copy small,.ahd-payment-copy b{display:block}
.ahd-payment-copy small{color:#9a7a34!important}
.ahd-payment-copy b{margin-top:4px;color:#294a40!important;font-size:13px}
.ahd-payment-action{display:inline-flex;align-items:center;gap:6px;min-width:96px;min-height:42px;padding:0 12px;border:1px solid #b89d61;border-radius:6px;background:#fff;color:#80662e;font-size:12px;justify-content:center}
.ahd-payment-action i{font-style:normal}
.ahd-salutation>div{border-color:#ddd5c9!important}
.ahd-salutation button{border-right-color:#e6dfd4!important;color:#716f68!important;background:#fff!important}
.ahd-salutation button.is-selected{background:#0b5a45!important;color:#fff!important}
.ahd-checkout-field>span{color:#687a72!important}
.ahd-checkout-field input,.ahd-checkout-field textarea{border-color:#ddd6ca!important;color:#294a40!important;background:#fff!important}
.ahd-checkout-field input::placeholder,.ahd-checkout-field textarea::placeholder{color:#a2aaa5!important}
.ahd-anon-switch i{background:#d9ddd9!important}
.ahd-anon-switch input:checked+i{background:#0b5a45!important}
.ahd-checkout-submit{background:linear-gradient(180deg,#0c5b45,#084936)!important;box-shadow:0 8px 18px rgba(8,73,54,.15)}
.ahd-checkout-submit.is-preview{background:linear-gradient(180deg,#a98a45,#85692f)!important}
.ahd-checkout-submit.is-disabled{background:#909c97!important;box-shadow:none!important}
.ahd-checkout-note{color:#8d9691!important}
.ahd-pay-modal[hidden]{display:none!important}
.ahd-pay-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:20px}
.ahd-pay-backdrop{position:absolute;inset:0;background:rgba(4,31,23,.72);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.ahd-pay-sheet{position:relative;z-index:1;display:flex;flex-direction:column;width:min(540px,100%);max-height:min(760px,88vh);overflow:hidden;border:1px solid rgba(214,190,129,.72);border-radius:18px;background:#fffefa;box-shadow:0 28px 90px rgba(4,31,23,.32)}
.ahd-pay-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 24px 21px;background:radial-gradient(circle at 90% 0,rgba(210,178,94,.16),transparent 33%),linear-gradient(135deg,#0a5b45,#074735);color:#fff}
.ahd-pay-head small{display:block;color:#d9bd75;font-size:9px;font-weight:900;letter-spacing:.12em}
.ahd-pay-head h2{margin:5px 0 0;color:#fff;font-family:Georgia,serif;font-size:27px;font-weight:400}
.ahd-pay-head>button{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;font-size:25px;cursor:pointer}
.ahd-pay-scroll{overflow:auto;scrollbar-width:thin;scrollbar-color:#cfc5b0 transparent}
.ahd-pay-group{border-bottom:1px solid #ebe4d8}
.ahd-pay-group:last-child{border-bottom:0}
.ahd-pay-group-title{display:flex;align-items:center;gap:11px;padding:14px 18px;border-bottom:1px solid #ede7dc;background:#f8f5ec}
.ahd-pay-group-title>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:8px;background:#eee3c8;color:#8b6c28;font-size:8px;font-weight:900}
.ahd-pay-group-title b,.ahd-pay-group-title small{display:block}
.ahd-pay-group-title b{color:#315147;font-size:12px}
.ahd-pay-group-title small{margin-top:2px;color:#8b958f;font-size:9px}
.ahd-pay-list{background:#fffefa}
.ahd-pay-list>button{display:grid;grid-template-columns:56px minmax(0,1fr) 24px;gap:12px;align-items:center;width:100%;min-height:66px;padding:9px 18px;border:0;border-bottom:1px solid #eee9df;background:#fffefa;text-align:left;cursor:pointer;transition:.15s ease}
.ahd-pay-list>button:last-child{border-bottom:0}
.ahd-pay-list>button:hover,.ahd-pay-list>button.is-selected{background:#f7f6ef}
.ahd-pay-logo{display:grid;place-items:center;min-height:38px;padding:0 5px;border:1px solid #ded5c3;border-radius:8px;background:#fff;color:#0b5a45;font-size:10px;font-weight:900;letter-spacing:-.02em}
.ahd-pay-list>button>span:nth-child(2){min-width:0}
.ahd-pay-list b,.ahd-pay-list small{display:block}
.ahd-pay-list b{color:#294a40;font-size:12px}
.ahd-pay-list small{margin-top:3px;color:#8c9691;font-size:9px}
.ahd-pay-list i{color:#af965f;font-size:20px;font-style:normal;text-align:right}
@media(max-width:700px){
  .ahd-pay-modal{align-items:end;padding:0}
  .ahd-pay-sheet{width:100%;max-height:88vh;border-right:0;border-bottom:0;border-left:0;border-radius:20px 20px 0 0}
  .ahd-pay-head{padding:20px 18px 17px}
  .ahd-pay-head h2{font-size:23px}
  .ahd-pay-list>button{min-height:64px;padding-right:15px;padding-left:15px}
}
@media(max-width:430px){
  .ahd-payment-row{grid-template-columns:52px minmax(0,1fr) auto!important}
  .ahd-payment-action{min-width:76px;padding:0 9px;font-size:10px}
  .ahd-pay-head h2{font-size:21px}
  .ahd-pay-group-title{padding-right:14px;padding-left:14px}
  .ahd-pay-list>button{grid-template-columns:50px minmax(0,1fr) 18px;gap:10px}
}


/* =========================================================
   V3.7.43 — LARGE / SENIOR-FRIENDLY CHECKOUT + REAL PAYMENT LOGOS
   ========================================================= */

/* Checkout: deliberately larger for older donors */
.ahd-checkout-title{
  font-size:18px!important;
  line-height:1.35!important;
}
.ahd-checkout-program-copy small{
  font-size:13px!important;
  line-height:1.45!important;
}
.ahd-checkout-program-copy h1{
  margin-top:9px!important;
  font-size:22px!important;
  line-height:1.35!important;
}
.ahd-checkout-program-copy p{
  margin-top:9px!important;
  font-size:14px!important;
  line-height:1.6!important;
}
.ahd-checkout-section h2{
  margin-bottom:21px!important;
  font-size:18px!important;
}
.ahd-checkout-amounts b{
  font-size:20px!important;
  font-weight:650!important;
}
.ahd-checkout-amounts small{
  margin-top:7px!important;
  font-size:12px!important;
}
.ahd-checkout-custom-amount span{
  font-size:15px!important;
}
.ahd-checkout-custom-amount input{
  min-height:54px!important;
  font-size:17px!important;
}

.ahd-payment-copy small{
  font-size:12px!important;
}
.ahd-payment-copy b{
  margin-top:5px!important;
  font-size:16px!important;
  line-height:1.35!important;
}
.ahd-payment-action{
  min-width:106px!important;
  min-height:46px!important;
  font-size:14px!important;
}

.ahd-salutation>span{
  font-size:16px!important;
}
.ahd-salutation button{
  min-height:51px!important;
  font-size:15px!important;
}
.ahd-checkout-field>span{
  font-size:14px!important;
  line-height:1.4!important;
}
.ahd-checkout-field>span em{
  font-size:12px!important;
}
.ahd-checkout-field input,
.ahd-checkout-field textarea{
  min-height:64px!important;
  font-size:17px!important;
}
.ahd-checkout-field textarea{
  min-height:118px!important;
}
.ahd-anon-switch{
  min-height:64px!important;
  font-size:15px!important;
}
.ahd-checkout-submit{
  min-height:62px!important;
  font-size:17px!important;
}
.ahd-checkout-note{
  font-size:11px!important;
  line-height:1.55!important;
}

/* Payment modal */
.ahd-pay-head small{
  font-size:11px!important;
}
.ahd-pay-head h2{
  font-size:31px!important;
}
.ahd-pay-group-title{
  min-height:64px;
}
.ahd-pay-group-title>span{
  width:32px!important;
  height:32px!important;
  flex-basis:32px!important;
  font-size:10px!important;
}
.ahd-pay-group-title b{
  font-size:15px!important;
}
.ahd-pay-group-title small{
  font-size:11px!important;
}
.ahd-pay-list>button{
  grid-template-columns:84px minmax(0,1fr) 26px!important;
  min-height:78px!important;
  padding-top:10px!important;
  padding-bottom:10px!important;
}
.ahd-pay-list b{
  font-size:15px!important;
  line-height:1.35!important;
}
.ahd-pay-list small{
  margin-top:4px!important;
  font-size:11.5px!important;
  line-height:1.4!important;
}
.ahd-pay-list i{
  font-size:24px!important;
}

/* Real payment logo holder */
.ahd-pay-logo{
  display:grid!important;
  place-items:center!important;
  width:76px!important;
  min-height:46px!important;
  padding:5px 6px!important;
  overflow:hidden;
  border:1px solid #e0d8c8!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#0b5a45!important;
}
.ahd-pay-logo img{
  display:block;
  width:100%!important;
  max-width:68px!important;
  height:36px!important;
  object-fit:contain!important;
}
.ahd-pay-logo-fallback{
  place-items:center;
  width:100%;
  min-height:34px;
  color:#0b5a45;
  font-size:11px;
  font-weight:900;
  text-align:center;
}
.ahd-pay-brand-text{
  display:grid;
  place-items:center;
  width:100%;
  min-height:34px;
  font-size:13px;
  font-weight:900;
  letter-spacing:-.02em;
}
.ahd-pay-brand-text.ovo{
  color:#6f36a8;
}
.ahd-pay-brand-text.shopee{
  color:#ee4d2d;
  font-size:11px;
}

@media(max-width:700px){
  .ahd-checkout-title{
    font-size:16px!important;
  }
  .ahd-checkout-program-copy small{
    font-size:11px!important;
  }
  .ahd-checkout-program-copy h1{
    font-size:18px!important;
  }
  .ahd-checkout-section h2{
    font-size:17px!important;
  }
  .ahd-checkout-amounts b{
    font-size:18px!important;
  }
  .ahd-checkout-amounts small{
    font-size:11px!important;
  }
  .ahd-payment-copy small{
    font-size:11px!important;
  }
  .ahd-payment-copy b{
    font-size:14px!important;
  }
  .ahd-salutation>span{
    font-size:15px!important;
  }
  .ahd-salutation button{
    font-size:14px!important;
  }
  .ahd-checkout-field>span{
    font-size:13px!important;
  }
  .ahd-anon-switch{
    font-size:14px!important;
  }
  .ahd-checkout-submit{
    font-size:16px!important;
  }

  .ahd-pay-head h2{
    font-size:27px!important;
  }
  .ahd-pay-group-title b{
    font-size:14px!important;
  }
  .ahd-pay-group-title small{
    font-size:10.5px!important;
  }
  .ahd-pay-list>button{
    grid-template-columns:76px minmax(0,1fr) 22px!important;
    min-height:76px!important;
  }
  .ahd-pay-list b{
    font-size:14.5px!important;
  }
  .ahd-pay-list small{
    font-size:11px!important;
  }
  .ahd-pay-logo{
    width:70px!important;
  }
  .ahd-pay-logo img{
    max-width:62px!important;
    height:34px!important;
  }
}

@media(max-width:430px){
  .ahd-checkout-program-copy h1{
    font-size:17px!important;
  }
  .ahd-checkout-amounts b{
    font-size:17px!important;
  }
  .ahd-payment-action{
    min-width:84px!important;
    font-size:12px!important;
  }
  .ahd-pay-head h2{
    font-size:25px!important;
  }
  .ahd-pay-list>button{
    grid-template-columns:70px minmax(0,1fr) 18px!important;
    gap:11px!important;
  }
  .ahd-pay-logo{
    width:66px!important;
  }
  .ahd-pay-logo img{
    max-width:58px!important;
    height:32px!important;
  }
}


/* =========================================================
   V3.7.44 — FINAL AL-HASAN CHECKOUT BEFORE PAYMENT PROVIDER
   No payment-method selector. Senior-friendly reading scale.
   ========================================================= */

.ahd-checkout-body{
  padding-top:34px!important;
}
.ahd-checkout-program-copy h1{
  font-size:24px!important;
}
.ahd-checkout-program-copy p{
  font-size:15px!important;
}
.ahd-checkout-section h2{
  font-size:20px!important;
}
.ahd-checkout-amounts button{
  min-height:88px!important;
}
.ahd-checkout-amounts b{
  font-size:21px!important;
}
.ahd-checkout-amounts small{
  font-size:13px!important;
}

/* Clean transition from amount to donor identity */
.ahd-checkout-divider{
  margin-top:42px;
  padding-top:28px;
  border-top:1px solid #e5ded1;
}
.ahd-checkout-divider>span{
  display:block;
  color:#9a7b37;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
}
.ahd-checkout-divider h2{
  margin:7px 0 0;
  color:#244a3e;
  font-family:Georgia,serif;
  font-size:26px;
  font-weight:400;
  line-height:1.3;
}
.ahd-checkout-divider p{
  margin:7px 0 0;
  color:#75847d;
  font-size:14px;
  line-height:1.6;
}
.ahd-salutation{
  margin-top:26px!important;
}
.ahd-salutation>span{
  font-size:16px!important;
  font-weight:700;
}
.ahd-salutation button{
  min-height:54px!important;
  font-size:16px!important;
}
.ahd-checkout-field{
  margin-top:29px!important;
}
.ahd-checkout-field>span{
  font-size:15px!important;
  font-weight:750!important;
}
.ahd-checkout-field>span em{
  font-size:13px!important;
}
.ahd-checkout-field input,
.ahd-checkout-field textarea{
  font-size:18px!important;
}
.ahd-anon-switch{
  font-size:15px!important;
  line-height:1.45!important;
}
.ahd-checkout-submit{
  min-height:66px!important;
  margin-top:38px!important;
  padding:0 20px!important;
  font-size:18px!important;
}
.ahd-checkout-submit span{
  font-size:18px!important;
}
.ahd-checkout-submit b{
  font-size:18px!important;
}
.ahd-next-preview-note{
  margin-top:12px;
  padding:13px 15px;
  border:1px solid #dfd4bd;
  border-radius:9px;
  background:#faf7ef;
  color:#6e765f;
  font-size:13px;
  line-height:1.55;
  text-align:center;
}
.ahd-next-preview-note[hidden]{
  display:none!important;
}
.ahd-next-preview-note.is-public{
  color:#7e877f;
}
.ahd-checkout-note{
  margin-top:12px!important;
  font-size:12px!important;
  line-height:1.55!important;
}

/* Old payment UI is intentionally not part of the checkout anymore. */
.ahd-payment-row,
.ahd-pay-modal{
  display:none!important;
}

@media(max-width:700px){
  .ahd-checkout-body{
    padding-top:25px!important;
  }
  .ahd-checkout-program-copy h1{
    font-size:19px!important;
  }
  .ahd-checkout-section h2{
    font-size:18px!important;
  }
  .ahd-checkout-amounts button{
    min-height:80px!important;
  }
  .ahd-checkout-amounts b{
    font-size:19px!important;
  }
  .ahd-checkout-amounts small{
    font-size:12px!important;
  }
  .ahd-checkout-divider{
    margin-top:34px;
    padding-top:24px;
  }
  .ahd-checkout-divider>span{
    font-size:10px;
  }
  .ahd-checkout-divider h2{
    font-size:23px;
  }
  .ahd-checkout-divider p{
    font-size:13px;
  }
  .ahd-salutation{
    margin-top:22px!important;
  }
  .ahd-salutation>span{
    font-size:15px!important;
  }
  .ahd-salutation button{
    font-size:15px!important;
  }
  .ahd-checkout-field>span{
    font-size:14px!important;
  }
  .ahd-checkout-field input,
  .ahd-checkout-field textarea{
    font-size:18px!important;
  }
  .ahd-anon-switch{
    font-size:14px!important;
  }
  .ahd-checkout-submit,
  .ahd-checkout-submit span,
  .ahd-checkout-submit b{
    font-size:17px!important;
  }
  .ahd-next-preview-note{
    font-size:12.5px;
  }
}

@media(max-width:430px){
  .ahd-checkout-program-copy h1{
    font-size:18px!important;
  }
  .ahd-checkout-amounts b{
    font-size:18px!important;
  }
  .ahd-checkout-divider h2{
    font-size:22px;
  }
  .ahd-checkout-submit{
    min-height:64px!important;
  }
}


/* =========================================================
   V3.7.45 — DONATION TRANSACTION STATUS SCREENS
   Waiting · Success · Incomplete
   ========================================================= */

.ahd-status-shell{
  display:flex;
  flex-direction:column;
  width:min(680px,100%);
  min-height:100vh;
  margin:0 auto;
  background:
    radial-gradient(circle at 50% 0,rgba(184,153,83,.10),transparent 26%),
    #fffefa;
  color:#294a40;
}
.ahd-status-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:72px;
  padding:10px 22px;
  border-bottom:1px solid #e9e2d5;
  background:rgba(255,254,250,.94);
}
.ahd-status-brand{
  display:flex;
  align-items:center;
  gap:10px;
  color:#21483c!important;
  font-size:15px;
  font-weight:850;
  text-decoration:none!important;
}
.ahd-status-brand img{
  width:42px;
  height:42px;
  object-fit:cover;
  border:1px solid #d8cba9;
  border-radius:50%;
}
.ahd-status-preview-badge{
  padding:7px 9px;
  border:1px solid #d6c18d;
  border-radius:999px;
  background:#f8f1df;
  color:#80642e;
  font-size:9px;
  font-weight:900;
  letter-spacing:.1em;
}
.ahd-status-main{
  display:grid;
  flex:1;
  place-items:center;
  width:100%;
  padding:38px 24px;
}
.ahd-status-card{
  width:100%;
  padding:38px 34px 32px;
  border:1px solid #e4dccf;
  border-radius:24px;
  background:#fff;
  box-shadow:0 22px 60px rgba(31,67,55,.10);
  text-align:center;
}
.ahd-status-symbol{
  display:grid;
  place-items:center;
  width:84px;
  height:84px;
  margin:0 auto 20px;
  border:2px solid #c4a866;
  border-radius:50%;
  background:#fbf7ed;
  color:#8b6d2f;
  font-family:Georgia,serif;
  font-size:38px;
  font-weight:700;
}
.ahd-status-success .ahd-status-symbol{
  border-color:#2f7b61;
  background:#edf7f2;
  color:#0b5a45;
}
.ahd-status-incomplete .ahd-status-symbol{
  border-color:#c59069;
  background:#fbf1e9;
  color:#8d5a35;
}
.ahd-status-invalid .ahd-status-symbol{
  border-color:#b6bbb8;
  background:#f4f5f4;
  color:#68726d;
}
.ahd-status-eyebrow{
  display:block;
  color:#9a7935;
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
}
.ahd-status-card h1{
  margin:8px 0 0;
  color:#20483b;
  font-family:Georgia,serif;
  font-size:34px;
  font-weight:400;
  line-height:1.2;
}
.ahd-status-message{
  max-width:510px;
  margin:13px auto 0;
  color:#6f8078;
  font-size:16px;
  line-height:1.7;
}
.ahd-status-summary{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  margin-top:30px;
  overflow:hidden;
  border:1px solid #e6dfd4;
  border-radius:14px;
  background:#e6dfd4;
  text-align:left;
}
.ahd-status-summary>div{
  min-height:86px;
  padding:15px 17px;
  background:#fcfbf7;
}
.ahd-status-summary small,
.ahd-status-summary b,
.ahd-status-summary strong{
  display:block;
}
.ahd-status-summary small{
  color:#8c9691;
  font-size:11px;
  font-weight:700;
}
.ahd-status-summary b{
  margin-top:6px;
  color:#36554b;
  font-size:14px;
  line-height:1.45;
}
.ahd-status-summary strong{
  margin-top:6px;
  color:#0b5a45;
  font-size:20px;
}
.ahd-status-summary-wide{
  grid-column:1/-1;
}
.ahd-status-pill{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  margin-top:7px;
  padding:0 10px;
  border-radius:999px;
  background:#f4ead1;
  color:#826627;
  font-size:11px;
  font-weight:850;
}
.ahd-status-success .ahd-status-pill{
  background:#e6f3ed;
  color:#0b5a45;
}
.ahd-status-incomplete .ahd-status-pill{
  background:#f8e9dc;
  color:#8a5633;
}
.ahd-status-actions{
  display:grid;
  gap:10px;
  margin-top:28px;
}
.ahd-status-primary,
.ahd-status-secondary{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:58px;
  border-radius:9px;
  font-size:16px;
  font-weight:850;
  text-decoration:none!important;
}
.ahd-status-primary{
  border:1px solid #0b5a45;
  background:linear-gradient(180deg,#0d5e47,#084a37);
  color:#fff!important;
}
button.ahd-status-primary{
  cursor:pointer;
}
.ahd-status-primary.is-disabled-preview{
  border-color:#b49a5f;
  background:linear-gradient(180deg,#ad914f,#876b30);
}
.ahd-status-secondary{
  border:1px solid #d9d0c0;
  background:#fff;
  color:#456158!important;
}
.ahd-status-action-note{
  display:block;
  margin:-2px 0 2px;
  color:#8d9691;
  font-size:11px;
  line-height:1.5;
}
.ahd-status-preview-nav{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:25px;
  padding-top:18px;
  border-top:1px solid #ebe5da;
}
.ahd-status-preview-nav>span{
  width:100%;
  margin-bottom:2px;
  color:#8c9691;
  font-size:10px;
}
.ahd-status-preview-nav a{
  padding:7px 10px;
  border:1px solid #dfd7c8;
  border-radius:999px;
  background:#fff;
  color:#66776f!important;
  font-size:10px;
  font-weight:750;
  text-decoration:none!important;
}
.ahd-status-preview-nav a.is-active{
  border-color:#b69b5d;
  background:#f7f1e3;
  color:#775d28!important;
}
.ahd-status-footer{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:86px;
  padding:16px 20px;
  border-top:1px solid #e8e1d5;
  background:#f8f6ef;
  text-align:left;
}
.ahd-status-footer img{
  width:34px;
  height:34px;
  object-fit:cover;
  border-radius:50%;
}
.ahd-status-footer b,
.ahd-status-footer small{
  display:block;
}
.ahd-status-footer b{
  color:#496157;
  font-size:11px;
}
.ahd-status-footer small{
  margin-top:2px;
  color:#8b958f;
  font-size:9px;
}

@media(max-width:700px){
  .ahd-status-header{
    min-height:64px;
    padding:8px 15px;
  }
  .ahd-status-brand{
    font-size:14px;
  }
  .ahd-status-brand img{
    width:38px;
    height:38px;
  }
  .ahd-status-main{
    align-items:start;
    padding:24px 14px;
  }
  .ahd-status-card{
    padding:31px 20px 25px;
    border-radius:18px;
  }
  .ahd-status-symbol{
    width:74px;
    height:74px;
    margin-bottom:17px;
    font-size:34px;
  }
  .ahd-status-card h1{
    font-size:29px;
  }
  .ahd-status-message{
    font-size:15px;
  }
  .ahd-status-summary{
    grid-template-columns:1fr;
  }
  .ahd-status-summary-wide{
    grid-column:auto;
  }
  .ahd-status-summary>div{
    min-height:76px;
  }
  .ahd-status-summary small{
    font-size:11px;
  }
  .ahd-status-summary b{
    font-size:14px;
  }
  .ahd-status-summary strong{
    font-size:19px;
  }
  .ahd-status-primary,
  .ahd-status-secondary{
    min-height:58px;
    font-size:16px;
  }
}

@media(max-width:430px){
  .ahd-status-card h1{
    font-size:27px;
  }
  .ahd-status-message{
    font-size:14px;
  }
}


/* =========================================================
   V3.7.46 — THREE EVERGREEN CAMPAIGNS WITH REAL AL-HASAN PHOTOS
   ========================================================= */

.ahd-category-strip-permanent{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  overflow:visible!important;
}
.ahd-category-strip-permanent .ahd-category{
  min-width:0!important;
}
.ahd-category-strip-permanent .ahd-category b{
  max-width:100%;
  white-space:normal;
  text-align:center;
}

/* Real campaign photography */
.ahd-campaign-visual{
  position:relative;
  min-height:155px!important;
  background:#e7ebe7!important;
}
.ahd-campaign-visual>img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.ahd-campaign-visual:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 44%,rgba(5,46,35,.58) 100%);
  pointer-events:none;
}
.ahd-campaign-visual>span{
  position:absolute!important;
  right:auto;
  bottom:10px;
  left:10px;
  z-index:2!important;
  margin:0!important;
  padding:6px 9px!important;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(7,74,56,.90)!important;
  box-shadow:0 4px 12px rgba(5,42,32,.15);
  font-size:10px!important;
}
.ahd-campaign-art-mark{
  display:none!important;
}
.ahd-campaign-body{
  padding:14px 13px 14px!important;
}
.ahd-campaign-body h3{
  font-size:16px!important;
  line-height:1.38!important;
}
.ahd-campaign-body p{
  margin-top:7px!important;
  font-size:12px!important;
  line-height:1.58!important;
}
.ahd-campaign-note{
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid #eee8dc;
  color:#7a765f;
}
.ahd-campaign-note i{
  color:#b08d45;
  font-size:18px;
  font-style:normal;
  line-height:.5;
}
.ahd-campaign-note span{
  font-size:10.5px;
  font-weight:700;
  line-height:1.45;
}
.ahd-campaign-donate{
  min-height:44px!important;
  margin-top:12px!important;
  font-size:11.5px!important;
}

/* Same actual campaign photo on checkout */
.ahd-checkout-thumb{
  background:#e9ece8!important;
}
.ahd-checkout-thumb>img{
  display:block;
  width:100%;
  height:100%;
  min-height:145px;
  object-fit:cover;
  object-position:center;
}
.ahd-checkout-thumb>span{
  display:none!important;
}

@media(max-width:760px){
  .ahd-category-strip-permanent{
    gap:8px!important;
  }
  .ahd-category-strip-permanent .ahd-category-icon{
    width:44px!important;
    height:44px!important;
  }
  .ahd-category-strip-permanent .ahd-category b{
    font-size:10px!important;
  }

  .ahd-campaign-visual{
    min-height:180px!important;
  }
  .ahd-campaign-body h3{
    font-size:17px!important;
  }
  .ahd-campaign-body p{
    font-size:12.5px!important;
  }
  .ahd-campaign-note span{
    font-size:11px;
  }
  .ahd-campaign-donate{
    min-height:46px!important;
    font-size:12px!important;
  }

  .ahd-checkout-thumb>img{
    min-height:105px;
  }
}

@media(max-width:430px){
  .ahd-category-strip-permanent .ahd-category b{
    font-size:9px!important;
  }
  .ahd-campaign-visual{
    min-height:168px!important;
  }
}


/* =========================================================
   V3.7.47 — CAMPAIGN DISPLAY SHORTCODES
   Utama: max 3 cards in current grid.
   Tambahan: one wide card per row below.
   ========================================================= */
.ahd-section-heading>span{
  color:#8b958f;
  font-size:10px;
  font-weight:750;
}

.ahd-campaign-list{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}

.ahd-campaign-card-wide{
  display:grid!important;
  grid-template-columns:minmax(210px,38%) minmax(0,1fr);
  min-height:220px;
  overflow:hidden;
}

.ahd-campaign-card-wide .ahd-campaign-visual{
  min-height:220px!important;
  height:100%;
}

.ahd-campaign-card-wide .ahd-campaign-body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:22px 23px!important;
}

.ahd-campaign-card-wide .ahd-campaign-body h3{
  font-size:20px!important;
}

.ahd-campaign-card-wide .ahd-campaign-body p{
  font-size:13px!important;
  line-height:1.65!important;
}

.ahd-campaign-card-wide .ahd-campaign-note{
  margin-top:14px;
}

.ahd-campaign-card-wide .ahd-campaign-donate{
  align-self:flex-start;
  width:auto;
  min-width:190px;
  padding:0 18px;
}

.ahd-campaign-single{
  margin-top:0!important;
}

@media(max-width:700px){
  .ahd-campaign-card-wide{
    grid-template-columns:1fr;
  }

  .ahd-campaign-card-wide .ahd-campaign-visual{
    min-height:190px!important;
  }

  .ahd-campaign-card-wide .ahd-campaign-body{
    padding:17px 16px 18px!important;
  }

  .ahd-campaign-card-wide .ahd-campaign-body h3{
    font-size:18px!important;
  }

  .ahd-campaign-card-wide .ahd-campaign-body p{
    font-size:12.5px!important;
  }

  .ahd-campaign-card-wide .ahd-campaign-donate{
    width:100%;
    min-width:0;
  }
}


/* =========================================================
   V3.7.48 — DYNAMIC CAMPAIGN CHECKOUT
   ========================================================= */
.ahd-checkout-amounts{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
@media(min-width:560px){
  .ahd-checkout-amounts{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}


/* V3.7.52 — MIDTRANS CHECKOUT FEEDBACK */
.ahd-checkout-live-message{
  margin-top:10px;
  padding:10px 12px;
  border-radius:10px;
  font-size:12px;
  line-height:1.5;
  text-align:center;
}
.ahd-checkout-live-message.is-error{
  border:1px solid #efd5ce;
  background:#fff5f2;
  color:#8a4737;
}
.ahd-checkout-live-message.is-info{
  border:1px solid #d8e7df;
  background:#f3f8f5;
  color:#2d6250;
}
.ahd-checkout-submit.is-loading{
  opacity:.78;
  cursor:wait;
}


/* =========================================================
   V3.7.54 — PUBLIC CAMPAIGN CTA ALIGNMENT
   ========================================================= */
.ahd-campaign-card:not(.ahd-campaign-card-wide){
  display:flex!important;
  flex-direction:column;
}
.ahd-campaign-card:not(.ahd-campaign-card-wide) .ahd-campaign-body{
  display:flex!important;
  flex:1 1 auto;
  flex-direction:column;
  width:100%;
}
.ahd-campaign-card:not(.ahd-campaign-card-wide) .ahd-campaign-note{
  margin-bottom:0;
}
.ahd-campaign-card:not(.ahd-campaign-card-wide) .ahd-campaign-donate{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  margin-top:auto!important;
  padding:9px 12px!important;
  line-height:1.35!important;
  text-align:center!important;
  box-sizing:border-box;
}
.ahd-campaign-card-wide .ahd-campaign-donate{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:9px 16px!important;
  line-height:1.35!important;
  text-align:center!important;
  box-sizing:border-box;
}
@media(max-width:700px){
  .ahd-campaign-card-wide .ahd-campaign-donate{
    width:100%!important;
  }
}


/* =========================================================
   V3.7.56 — PREMIUM PUBLIC DONATION FOOTER
   True footer, not an app-style bottom navigation.
   ========================================================= */
.ahd-public-footer{
  position:relative;
  margin-top:30px;
  padding:25px 20px 19px;
  overflow:hidden;
  border-top:1px solid rgba(190,157,80,.35);
  border-radius:22px 22px 0 0;
  background:
    radial-gradient(circle at 18% 0,rgba(214,183,107,.12),transparent 34%),
    linear-gradient(145deg,#073f32 0%,#0a503f 56%,#083d31 100%);
  color:#f8f4e9;
}
.ahd-public-footer:before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  width:88px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#d2b56c,transparent);
  transform:translateX(-50%);
}
.ahd-footer-brand{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  max-width:540px;
  margin:0 auto;
  text-align:left;
}
.ahd-footer-brandmark{
  flex:0 0 auto;
  width:48px;
  height:48px;
  padding:3px;
  overflow:hidden;
  border:1px solid rgba(213,184,111,.55);
  border-radius:15px;
  background:rgba(255,255,255,.08);
  box-shadow:0 6px 18px rgba(0,0,0,.12);
}
.ahd-footer-brandmark img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:11px;
}
.ahd-footer-brandcopy{
  min-width:0;
}
.ahd-footer-brandcopy b{
  display:block;
  margin:0;
  color:#fffdf7;
  font-family:Georgia,"Times New Roman",serif;
  font-size:15px;
  font-weight:700;
  line-height:1.25;
}
.ahd-footer-brandcopy p{
  max-width:390px;
  margin:4px 0 0;
  color:rgba(245,241,230,.72);
  font-size:10.5px;
  line-height:1.55;
}

.ahd-footer-links{
  position:relative;
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:7px 9px;
  max-width:620px;
  margin:20px auto 0;
  padding:14px 0 13px;
  border-top:1px solid rgba(255,255,255,.10);
  border-bottom:1px solid rgba(255,255,255,.10);
}
.ahd-footer-links a{
  position:relative;
  display:inline-flex;
  min-height:38px;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0 10px;
  border-radius:10px;
  color:rgba(248,245,236,.76);
  font-size:10.5px;
  font-weight:750;
  line-height:1;
  text-decoration:none;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.ahd-footer-links a:hover,
.ahd-footer-links a:focus-visible{
  background:rgba(255,255,255,.07);
  color:#fff;
  outline:none;
  transform:translateY(-1px);
}
.ahd-footer-links a.is-current{
  color:#e4c779;
}
.ahd-footer-links a.is-current:after{
  content:"";
  position:absolute;
  right:10px;
  bottom:3px;
  left:10px;
  height:1px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#d8bb70,transparent);
}
.ahd-footer-links svg{
  width:18px;
  height:18px;
  flex:0 0 18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ahd-footer-links span{
  display:block;
  line-height:1;
}

.ahd-footer-bottom{
  position:relative;
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:13px;
  color:rgba(239,236,226,.52);
  font-size:9px;
  line-height:1.45;
  text-align:center;
}
.ahd-footer-bottom i{
  display:block;
  width:3px;
  height:3px;
  border-radius:50%;
  background:#cdb169;
  opacity:.75;
}

/* Old app-navigation footer is intentionally retired in V3.7.56. */
.ahd-app-footer,
.ahd-bottom-nav{
  display:none!important;
}

@media(max-width:520px){
  .ahd-public-footer{
    margin-top:24px;
    padding:22px 15px 18px;
    border-radius:18px 18px 0 0;
  }
  .ahd-footer-brand{
    align-items:flex-start;
    gap:10px;
  }
  .ahd-footer-brandmark{
    width:44px;
    height:44px;
    border-radius:13px;
  }
  .ahd-footer-brandcopy b{
    font-size:14px;
  }
  .ahd-footer-brandcopy p{
    font-size:10px;
  }
  .ahd-footer-links{
    gap:5px 6px;
    margin-top:17px;
    padding:12px 0;
  }
  .ahd-footer-links a{
    min-height:36px;
    gap:5px;
    padding:0 8px;
    font-size:10px;
  }
  .ahd-footer-links svg{
    width:17px;
    height:17px;
    flex-basis:17px;
  }
  .ahd-footer-bottom{
    display:grid;
    gap:3px;
    margin-top:12px;
    font-size:8.5px;
  }
  .ahd-footer-bottom i{
    display:none;
  }
}

@media(max-width:360px){
  .ahd-footer-links a{
    padding:0 6px;
    font-size:9.5px;
  }
}

/* =========================================================
   V1.23 — DONATION / PRIVACY POLICY PAGES
   ========================================================= */
.ahd-policy{
  width:min(920px,100%);
  margin:0 auto;
  color:#213b32;
  font-size:15px;
  line-height:1.78;
}
.ahd-policy-intro{
  margin:0 0 26px;
  padding:26px 28px;
  border:1px solid #e4ddd0;
  border-radius:20px;
  background:linear-gradient(145deg,#f9f7f1,#fff);
}
.ahd-policy-intro>span{
  display:block;
  margin-bottom:8px;
  color:#9b7627;
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
}
.ahd-policy-intro p{margin:0;color:#496158;font-size:16px}
.ahd-policy-intro small{display:block;margin-top:10px;color:#8a958f}
.ahd-policy section{
  margin:0 0 14px;
  padding:22px 24px;
  border:1px solid #ebe6dd;
  border-radius:16px;
  background:#fff;
}
.ahd-policy h2{
  margin:0 0 10px;
  color:#173f34;
  font-family:Georgia,"Times New Roman",serif;
  font-size:22px;
  line-height:1.28;
}
.ahd-policy p{margin:0 0 11px}
.ahd-policy p:last-child{margin-bottom:0}
.ahd-policy ul{margin:8px 0 12px;padding-left:22px}
.ahd-policy li{margin:5px 0}
.ahd-policy a{color:#1d6b4f;text-decoration:underline;text-underline-offset:2px}
.ahd-policy-help{background:#f6fbf8!important;border-color:#dcebe3!important}
.ahd-policy-contact{margin-bottom:0!important}
.ahd-policy-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.ahd-policy-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 16px;
  border-radius:999px;
  background:#173f34;
  color:#fff;
  font-weight:800;
  text-decoration:none;
}
.ahd-policy-actions a+ a{background:#f2ead7;color:#73591e}
.ahd-checkout-note a{color:inherit;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.ahd-footer-legal a{color:inherit;text-decoration:underline;text-underline-offset:2px}
@media(max-width:620px){
  .ahd-policy{font-size:14px;line-height:1.7}
  .ahd-policy-intro{padding:20px 18px;border-radius:16px}
  .ahd-policy section{padding:18px 17px;border-radius:14px}
  .ahd-policy h2{font-size:19px}
  .ahd-policy-actions{display:grid;grid-template-columns:1fr}
}
