:root{
  --purple:#7413dc;--purple-dark:#3c087a;--purple-mid:#5b12af;--cream:#fff8ea;--gold:#ffc928;--ink:#22152f;--muted:#6d6079;--card:#ffffff;--soft:#f5efff;--line:#eee2ff;--shadow:0 18px 50px rgba(73,25,120,.12)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(135deg,#fff 0%,#f7f0ff 45%,#fff8e4 100%);font-size:16px}a{color:inherit}.topbar{background:var(--purple-dark);color:white;text-align:center;padding:10px 16px;font-weight:800;letter-spacing:.2px}.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(60,8,122,.08);backdrop-filter:blur(10px)}.nav-inner{width:min(1180px,100%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px}.brand{font-weight:900;color:var(--purple-dark);text-decoration:none;font-size:18px;white-space:nowrap}.menu{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.menu a{padding:9px 12px;border-radius:999px;text-decoration:none;font-weight:800;color:var(--purple-dark);background:var(--soft);font-size:14px}.menu a:hover{background:var(--gold);color:#2d1450}.hero{position:relative;overflow:hidden;min-height:620px;display:grid;place-items:center;padding:46px 18px;background:radial-gradient(circle at 10% 10%,rgba(255,201,40,.34),transparent 28%),linear-gradient(135deg,var(--purple) 0%,var(--purple-dark) 100%);color:white}.hero:before{content:"";position:absolute;inset:-80px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.055) 0 2px,transparent 2px 18px);transform:rotate(-2deg)}.hero-inner{position:relative;width:min(1180px,100%);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:32px;align-items:center}.logo-mark{width:132px;height:132px;background:white;color:var(--purple-dark);border-radius:30px;display:grid;place-items:center;font-size:66px;box-shadow:0 24px 60px rgba(0,0,0,.25);margin-bottom:20px}.badge{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);padding:10px 14px;border-radius:999px;font-weight:800;backdrop-filter:blur(8px);margin-bottom:16px}h1{margin:0;font-size:clamp(42px,7vw,78px);line-height:.95;letter-spacing:-2.8px}h2{font-size:clamp(28px,4vw,46px);line-height:1.05;letter-spacing:-1px}.subtitle{font-size:clamp(19px,2.5vw,28px);margin:18px 0 0;color:#f6ecff;max-width:720px;line-height:1.3}.buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.btn{border:0;text-decoration:none;display:inline-block;padding:15px 22px;border-radius:14px;font-weight:900;box-shadow:0 12px 24px rgba(0,0,0,.18);cursor:pointer;text-align:center}.btn.primary{background:var(--gold);color:#2d1450}.btn.secondary{background:white;color:var(--purple-dark)}.btn.danger{background:#ffecec;color:#9a1111}.hero-card,.panel{background:rgba(255,255,255,.96);color:var(--ink);border-radius:30px;padding:26px;box-shadow:0 28px 80px rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.5)}.hero-card h2,.panel h2{margin:0 0 12px;color:var(--purple-dark)}.info-list{display:grid;gap:14px;margin-top:18px}.info{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:18px;background:var(--soft)}.icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:var(--purple);color:white;flex:0 0 34px}main{width:min(1180px,100%);margin:auto;padding:54px 18px}.section-title{text-align:center;margin:0 auto 28px;max-width:760px}.section-title h2{margin:0;color:var(--purple-dark)}.section-title p{font-size:18px;color:var(--muted);line-height:1.55}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:var(--card);border-radius:24px;padding:24px;box-shadow:0 16px 40px rgba(73,25,120,.10);border:1px solid var(--line);text-decoration:none}.card h3{margin:10px 0 8px;color:var(--purple-dark);font-size:23px}.card p{margin:8px 0 0;color:var(--muted);line-height:1.5}.feature{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:28px;align-items:center;margin-top:54px;background:white;border-radius:34px;padding:28px;box-shadow:var(--shadow);border:1px solid var(--line)}.poster{border-radius:24px;width:100%;max-height:650px;object-fit:contain;background:#eee;box-shadow:0 14px 34px rgba(0,0,0,.16)}.event-box{display:grid;gap:12px;margin:18px 0}.pill{background:var(--soft);padding:14px 16px;border-radius:18px;font-weight:800;color:var(--purple-dark);line-height:1.35}.progress{background:#eadcff;border-radius:999px;overflow:hidden;height:18px}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--purple),var(--gold));border-radius:999px}.contact{margin-top:54px;background:linear-gradient(135deg,var(--purple-dark),var(--purple));color:white;border-radius:34px;padding:34px;display:grid;grid-template-columns:1fr 1fr;gap:24px;box-shadow:0 24px 70px rgba(60,8,122,.28)}.contact h2{margin:0 0 10px;font-size:38px}.contact p{color:#f5eaff;line-height:1.55}.contact-card{background:rgba(255,255,255,.12);padding:22px;border-radius:24px;border:1px solid rgba(255,255,255,.2);line-height:1.55}footer{text-align:center;padding:28px 18px;color:var(--muted)}.page-head{position:relative;overflow:hidden;background:radial-gradient(circle at 15% 0%,rgba(255,201,40,.32),transparent 30%),linear-gradient(135deg,var(--purple),var(--purple-dark));color:white;padding:64px 18px;text-align:center}.page-head:before{content:"";position:absolute;inset:-60px;background:repeating-linear-gradient(45deg,rgba(255,255,255,.055) 0 2px,transparent 2px 18px)}.page-head>*{position:relative}.page-head h1{font-size:clamp(38px,5vw,64px);letter-spacing:-1.8px}.page-head p{font-size:clamp(18px,2vw,24px);color:#f6ecff}.panel ul,.hero-card ul{line-height:1.8;padding-left:22px}.admin-body{background:linear-gradient(135deg,#fff 0%,#f7f0ff 50%,#fff8e4 100%)}.admin-wrap{width:min(1100px,100%);margin:auto;padding:24px 18px}.login-box{max-width:460px;margin:70px auto;background:white;border-radius:28px;padding:30px;box-shadow:0 20px 50px rgba(60,8,122,.16);border:1px solid var(--line)}label{display:block;font-weight:800;color:var(--purple-dark);margin:14px 0 6px}input,textarea,select{width:100%;padding:13px 14px;border-radius:14px;border:1px solid #d8c4ff;font:inherit;background:white}textarea{min-height:120px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.notice{padding:12px 14px;border-radius:14px;margin:12px 0;background:#e9fff6;color:#075c3e;font-weight:800}.error{background:#fff0f0;color:#8a1010}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.toolbar h1{font-size:clamp(26px,4vw,42px);color:var(--purple-dark);letter-spacing:-1.1px}.small{font-size:14px;color:var(--muted)}
.brand{display:flex;align-items:center;gap:10px}.nav-logo{width:38px;height:38px;object-fit:contain;background:white;border-radius:10px;padding:4px;box-shadow:0 4px 12px rgba(60,8,122,.12)}.logo-mark{overflow:hidden}.hero-logo{width:96px;height:96px;object-fit:contain;display:block}.logo-fallback{font-size:66px}.admin-toolbar-logo{width:44px;height:44px;object-fit:contain;vertical-align:middle;background:white;border-radius:12px;padding:4px;margin-right:8px}.logo-preview-box{display:inline-block;background:white;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow)}.logo-preview{max-width:220px;max-height:160px;object-fit:contain;display:block}.fundraising-poster-card{display:flex;justify-content:center}.fundraising-home-poster{max-width:340px;max-height:430px;width:100%;margin:auto;display:block}
@media(max-width:980px){.nav-inner{align-items:flex-start;flex-direction:column}.menu{justify-content:flex-start}.hero-inner,.feature,.contact{grid-template-columns:1fr}.hero-card{max-width:700px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){body{font-size:15px}.topbar{font-size:13px}.nav-inner{padding:10px 12px}.brand{font-size:16px;white-space:normal}.menu{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;width:100%}.menu a{font-size:13px;text-align:center;padding:10px 8px}.hero{min-height:auto;padding:34px 14px}.logo-mark{width:104px;height:104px;border-radius:24px;font-size:52px}.badge{font-size:13px}.hero-card,.panel,.feature,.contact,.card{border-radius:22px;padding:20px}.grid,.admin-grid{grid-template-columns:1fr}.buttons{display:grid;grid-template-columns:1fr;width:100%}.btn{width:100%;padding:14px 16px}.poster{max-height:520px}.page-head{padding:46px 14px}main{padding:36px 14px}.toolbar{display:grid;grid-template-columns:1fr}.toolbar div{display:grid;grid-template-columns:1fr;gap:10px}.login-box{margin:30px auto;padding:22px}}

@media(max-width:900px){.fundraising-feature{grid-template-columns:1fr}.fundraising-home-poster{max-width:320px;max-height:400px;margin:auto}}
@media(max-width:620px){.fundraising-home-poster{max-width:260px;max-height:340px}.fundraising-poster-card{order:2}.fundraising-feature>div:last-child{order:1}}

@media(max-width:620px){.nav-logo{width:32px;height:32px}.hero-logo{width:76px;height:76px}.logo-fallback{font-size:52px}.admin-toolbar-logo{width:36px;height:36px}}

/* V3 add-ons */
.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-card{background:white;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 16px 40px rgba(73,25,120,.10);margin:0}.gallery-card img{width:100%;height:230px;object-fit:cover;display:block}.gallery-card figcaption{padding:14px;display:grid;gap:6px;color:var(--muted)}.gallery-card figcaption b{color:var(--purple-dark)}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;background:var(--soft);border-radius:16px;padding:12px}.check-grid label{margin:0;color:var(--ink);font-weight:700}.check-grid input{width:auto;margin-right:8px}.admin-wrap .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:980px){.gallery-grid,.admin-wrap .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.gallery-grid,.admin-wrap .gallery-grid{grid-template-columns:1fr}.gallery-card img{height:210px}.check-grid{grid-template-columns:1fr}}


/* =========================================================
   V3.4.1 NO-CODE MOBILE CLEANUP
   Overwrite assets/style.css only.
   Makes mobile menus compact without needing scripts/buttons.
   ========================================================= */
@media(max-width:620px){
  .nav{
    position:sticky;
    top:0;
    z-index:100;
  }

  .nav-inner{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    padding:8px 10px !important;
  }

  .brand{
    width:100%;
    justify-content:center;
    text-align:center;
    font-size:15px !important;
  }

  .menu{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    width:100% !important;
    max-height:48px !important;
    padding:2px 2px 8px !important;
    gap:7px !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .menu::-webkit-scrollbar{
    display:none;
  }

  .menu a{
    flex:0 0 auto !important;
    width:auto !important;
    white-space:nowrap !important;
    font-size:12px !important;
    padding:9px 11px !important;
    border-radius:999px !important;
    text-align:center !important;
  }

  .hero{
    padding-top:28px !important;
  }

  .hero .buttons{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    gap:8px !important;
    width:100% !important;
    padding-bottom:8px !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .hero .buttons::-webkit-scrollbar{
    display:none;
  }

  .hero .buttons .btn{
    flex:0 0 auto !important;
    width:auto !important;
    white-space:nowrap !important;
    padding:12px 14px !important;
    font-size:14px !important;
  }

  .toolbar div,
  .admin-actions,
  .dashboard-buttons,
  .menu-buttons{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    gap:8px !important;
    width:100% !important;
    padding-bottom:8px !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }

  .toolbar div::-webkit-scrollbar,
  .admin-actions::-webkit-scrollbar,
  .dashboard-buttons::-webkit-scrollbar,
  .menu-buttons::-webkit-scrollbar{
    display:none;
  }

  .toolbar div a,
  .toolbar div .btn,
  .admin-actions a,
  .dashboard-buttons a,
  .menu-buttons a{
    flex:0 0 auto !important;
    width:auto !important;
    white-space:nowrap !important;
    font-size:13px !important;
    padding:10px 12px !important;
  }

  h1{
    font-size:clamp(34px,11vw,52px) !important;
    letter-spacing:-1.2px !important;
  }
}
