:root{--navy:#061a42;--navy-2:#0a2b67;--blue:#174b9b;--gold:#f7b514;--gold-2:#ffd760;--cream:#fffaf0;--white:#fff;--ink:#15223a;--muted:#667085;--line:#e8ebf2;--shadow:0 24px 70px rgba(5,25,64,.14);--radius:26px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{font:inherit}.container{width:min(1180px,calc(100% - 48px));margin:auto}.site-header{position:fixed;inset:0 0 auto;z-index:1000;transition:.3s}.site-header.scrolled{background:rgba(255,255,255,.94);backdrop-filter:blur(16px);box-shadow:0 10px 35px rgba(5,25,64,.08)}.nav-wrap{height:92px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;border-radius:50%;box-shadow:0 8px 22px rgba(0,0,0,.16)}.brand-copy{display:flex;flex-direction:column}.brand-copy strong{font-size:16px;color:#fff}.brand-copy small{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.7)}.site-header.scrolled .brand-copy strong{color:var(--navy)}.site-header.scrolled .brand-copy small{color:var(--muted)}.main-nav{display:flex;align-items:center;gap:28px;color:#fff;font-size:13px;font-weight:700}.main-nav>a:not(.button){position:relative}.main-nav>a:not(.button):after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--gold);transition:.25s}.main-nav>a:hover:after,.main-nav>a.active:after{right:0}.site-header.scrolled .main-nav{color:var(--navy)}.nav-login{border-left:1px solid rgba(255,255,255,.25);padding-left:28px}.site-header.scrolled .nav-login{border-color:var(--line)}.button{min-height:48px;padding:0 22px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;transition:.25s;cursor:pointer}.button:hover{transform:translateY(-2px)}.button-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:var(--navy);box-shadow:0 12px 30px rgba(247,181,20,.28)}.button-ghost{color:#fff;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.05)}.button-outline{color:var(--navy);border:1px solid #cad2e0;background:#fff}.button-light-ghost{color:#fff;border:1px solid rgba(255,255,255,.32)}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:26px;height:2px;background:#fff;margin:5px}.site-header.scrolled .menu-toggle span{background:var(--navy)}
.hero{min-height:760px;position:relative;display:flex;align-items:center;background:radial-gradient(circle at 80% 20%,#174b9b 0,#0a2b67 25%,#061a42 68%);overflow:hidden;color:#fff}.hero:after{content:"";position:absolute;inset:auto 0 0;height:110px;background:linear-gradient(to top,#fff,transparent)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding-top:80px}.hero-copy{padding:70px 0 110px}.eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:var(--gold)}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow span{width:30px;height:2px;background:var(--gold)}h1,h2{font-family:"Playfair Display",Georgia,serif;margin:0}.hero h1{font-size:clamp(64px,7vw,96px);line-height:.94;letter-spacing:-.04em;margin:22px 0 26px}.hero h1 em{font-style:normal;color:var(--gold)}.hero-copy>p{max-width:630px;color:rgba(255,255,255,.76);font-size:18px;line-height:1.75}.hero-actions{display:flex;gap:14px;margin-top:34px}.hero-trust{display:flex;align-items:center;gap:18px;margin-top:42px}.avatar-stack{display:flex}.avatar-stack span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--navy);border:3px solid var(--navy);margin-left:-9px;font-size:11px;font-weight:800}.avatar-stack span:first-child{margin-left:0;background:var(--gold)}.hero-trust p{font-size:12px;color:rgba(255,255,255,.68);line-height:1.6}.hero-trust strong{color:#fff}.hero-visual{position:relative;min-height:550px;display:grid;place-items:center}.logo-halo{position:relative;width:min(440px,90%);aspect-ratio:1;display:grid;place-items:center}.logo-halo:before{content:"";position:absolute;inset:12%;background:rgba(247,181,20,.15);filter:blur(40px);border-radius:50%}.logo-halo img{width:78%;border-radius:50%;position:relative;z-index:2;filter:drop-shadow(0 35px 45px rgba(0,0,0,.35));animation:float 5s ease-in-out infinite}.halo-ring{position:absolute;border:1px solid rgba(255,215,96,.25);border-radius:50%;inset:3%;animation:spin 18s linear infinite}.ring-two{inset:14%;border-style:dashed;animation-direction:reverse;animation-duration:13s}.floating-card{position:absolute;z-index:3;display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:18px;background:rgba(255,255,255,.94);color:var(--navy);box-shadow:var(--shadow);animation:float 4.4s ease-in-out infinite}.floating-card strong,.floating-card small{display:block}.floating-card strong{font-size:14px}.floating-card small{font-size:10px;color:var(--muted);margin-top:3px}.card-served{left:0;bottom:92px}.card-transparent{right:-12px;top:100px;animation-delay:-2s}.mini-icon{width:34px;height:34px;border-radius:10px;background:#fff1c7;display:grid;place-items:center}.mini-icon svg,.stat-icon svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.8}.status-dot{width:12px;height:12px;border-radius:50%;background:#32c47a;box-shadow:0 0 0 6px rgba(50,196,122,.14)}.hero-orb{position:absolute;border-radius:50%;filter:blur(1px);opacity:.7}.orb-one{width:420px;height:420px;right:-140px;top:-130px;background:radial-gradient(circle,#ffd76033,transparent 68%)}.orb-two{width:300px;height:300px;left:-160px;bottom:80px;background:#174b9b55}.scroll-cue{position:absolute;z-index:3;left:50%;bottom:30px;transform:translateX(-50%);font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:rgba(255,255,255,.58);display:flex;align-items:center;gap:10px}.scroll-cue span{width:24px;height:36px;border:1px solid rgba(255,255,255,.35);border-radius:20px;position:relative}.scroll-cue span:after{content:"";position:absolute;width:4px;height:7px;border-radius:8px;background:var(--gold);top:7px;left:9px;animation:scrollDot 1.6s infinite}
.stats-section{position:relative;z-index:5;margin-top:-28px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:22px;box-shadow:var(--shadow);overflow:hidden}.stat-card{padding:28px 30px;border-right:1px solid var(--line);position:relative}.stat-card:last-child{border-right:0}.stat-icon{width:42px;height:42px;border-radius:12px;background:#fff7dd;color:var(--navy);display:grid;place-items:center;margin-bottom:15px}.stat-number{font-family:"Playfair Display",serif;font-weight:800;font-size:34px;color:var(--navy)}.stat-card p{margin:5px 0 0;color:var(--muted);font-size:12px}.section{padding:110px 0}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.media-frame{height:530px;border-radius:var(--radius);position:relative;background:linear-gradient(145deg,#0a2b67,#174b9b);overflow:hidden;box-shadow:var(--shadow)}.media-illustration{position:absolute;inset:0;background:linear-gradient(to bottom,#ffc94f,#ff8c5a 55%,#0d3c7a)}.sun{position:absolute;width:90px;height:90px;border-radius:50%;background:#fff2ab;right:60px;top:65px;box-shadow:0 0 55px #fff2ab}.hill{position:absolute;border-radius:50% 50% 0 0}.hill-one{width:120%;height:240px;left:-15%;bottom:-40px;background:#0a2b67;transform:rotate(5deg)}.hill-two{width:110%;height:180px;right:-20%;bottom:-55px;background:#061a42;transform:rotate(-5deg)}.people-shape{position:absolute;bottom:84px;width:34px;height:95px;border-radius:20px 20px 10px 10px;background:#fff}.people-shape:before{content:"";position:absolute;width:34px;height:34px;border-radius:50%;top:-23px;background:inherit}.p1{left:30%;height:110px}.p2{left:46%;background:var(--gold);transform:scale(.85)}.p3{left:61%;height:100px;transform:scale(.92)}.experience-badge{position:absolute;left:28px;right:28px;bottom:28px;background:rgba(255,255,255,.95);border-radius:17px;padding:18px 22px;display:flex;align-items:center;gap:18px}.experience-badge strong{font-family:"Playfair Display";font-size:25px;color:var(--navy)}.experience-badge span{font-size:12px;color:var(--muted)}.section-kicker{margin-bottom:14px}.about-copy h2,.section-heading h2,.donation-copy h2{font-size:clamp(38px,4vw,56px);line-height:1.08;color:var(--navy)}.about-copy>p{color:var(--muted);line-height:1.8;font-size:15px}.value-list{margin:32px 0}.value-list article{display:grid;grid-template-columns:48px 1fr;gap:17px;padding:18px 0;border-bottom:1px solid var(--line)}.value-list article>span{width:42px;height:42px;border-radius:12px;background:#fff7dd;display:grid;place-items:center;font-weight:800;color:var(--navy)}.value-list h3{margin:0 0 5px;font-size:15px}.value-list p{margin:0;font-size:12px;color:var(--muted);line-height:1.7}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--navy);font-size:13px;font-weight:800}.text-link span{color:var(--gold);font-size:18px}.activities-section{background:var(--cream);overflow:hidden}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading>div{max-width:740px}.carousel-controls{display:flex;gap:10px}.carousel-btn{width:46px;height:46px;border-radius:50%;border:1px solid #d9deea;background:#fff;color:var(--navy);cursor:pointer;transition:.2s}.carousel-btn:hover{background:var(--navy);color:#fff}.activity-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:5px 0 20px}.activity-track::-webkit-scrollbar{display:none}.activity-card{flex:0 0 calc((100% - 48px)/3);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 16px 40px rgba(5,25,64,.08);scroll-snap-align:start;transition:.3s}.activity-card:hover{transform:translateY(-8px);box-shadow:0 25px 50px rgba(5,25,64,.14)}.activity-image{height:220px;position:relative;overflow:hidden}.activity-image img{width:100%;height:100%;object-fit:cover;transition:.5s}.activity-card:hover .activity-image img{transform:scale(1.06)}.activity-tag{position:absolute;left:16px;top:16px;background:var(--gold);color:var(--navy);font-size:10px;font-weight:800;padding:8px 11px;border-radius:99px}.activity-body{padding:23px}.activity-meta{display:flex;justify-content:space-between;gap:12px;color:#8a92a3;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.activity-body h3{font-family:"Playfair Display";font-size:23px;line-height:1.25;color:var(--navy);margin:14px 0 10px}.activity-body p{font-size:12px;line-height:1.7;color:var(--muted)}.activity-body a{display:flex;justify-content:space-between;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);font-size:11px;font-weight:800;color:var(--navy)}.center-action{text-align:center;margin-top:32px}.donation-section{padding-top:80px}.donation-panel{background:linear-gradient(135deg,#061a42,#0d3c7a);border-radius:32px;padding:64px;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;color:#fff;position:relative;overflow:hidden}.donation-panel:before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,215,96,.15);border-radius:50%;left:-160px;bottom:-260px}.section-kicker.light{color:var(--gold)}.donation-copy h2{color:#fff}.donation-copy p{font-size:14px;line-height:1.8;color:rgba(255,255,255,.7)}.donation-actions{display:flex;gap:12px;margin-top:28px}.campaign-card{position:relative;background:#fff;color:var(--ink);padding:30px;border-radius:24px;box-shadow:0 24px 60px rgba(0,0,0,.2)}.campaign-top{display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.campaign-top strong{color:var(--blue);font-size:14px}.campaign-card h3{font-family:"Playfair Display";font-size:27px;color:var(--navy);margin:15px 0 8px}.campaign-card>p{color:var(--muted);font-size:12px;line-height:1.7}.progress{height:10px;background:#edf0f5;border-radius:20px;overflow:hidden;margin:24px 0 14px}.progress span{height:100%;display:block;border-radius:20px;background:linear-gradient(90deg,var(--gold),var(--gold-2))}.campaign-values{display:flex;justify-content:space-between}.campaign-values small,.campaign-values strong{display:block}.campaign-values small{font-size:9px;text-transform:uppercase;color:var(--muted)}.campaign-values strong{font-size:14px;margin-top:4px;color:var(--navy)}.campaign-note{margin-top:22px;padding:12px;border-radius:12px;background:#f5f7fb;font-size:9px;color:var(--muted)}.campaign-note span{color:#f59e0b;margin-right:5px}.member-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.member-card{padding:28px 22px;border:1px solid var(--line);border-radius:20px;text-align:center;transition:.3s;background:#fff}.member-card:hover{transform:translateY(-7px);border-color:#f4cc62;box-shadow:0 18px 40px rgba(5,25,64,.09)}.member-avatar{height:185px;border-radius:16px;background:linear-gradient(145deg,#edf2ff,#d7e4ff);display:grid;place-items:center;margin-bottom:20px;position:relative;overflow:hidden}.member-avatar:before,.member-avatar:after{content:"";position:absolute;border-radius:50%;background:#fff6d8}.member-avatar:before{width:130px;height:130px;right:-35px;top:-40px}.member-avatar:after{width:95px;height:95px;left:-25px;bottom:-30px}.member-avatar span{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-family:"Playfair Display";font-size:26px;z-index:1}.member-card h3{font-family:"Playfair Display";margin:0;color:var(--navy);font-size:20px}.member-card p{font-size:10px;color:var(--muted);min-height:30px}.member-social{display:flex;justify-content:center;gap:8px}.member-social a{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#f4f6fa;font-size:10px;font-weight:800}.join-banner{margin-top:40px;border-radius:22px;padding:25px 30px;background:#fff7dd;display:flex;align-items:center;justify-content:space-between}.join-banner>div{display:flex;align-items:center;gap:17px}.join-icon{width:48px;height:48px;border-radius:14px;background:var(--gold);display:grid;place-items:center;color:var(--navy);font-size:22px}.join-banner h3{margin:0 0 4px;color:var(--navy);font-size:17px}.join-banner p{margin:0;color:var(--muted);font-size:11px}.quote-section{background:#f6f8fc;padding:90px 0}.quote-wrap{text-align:center;max-width:900px}.quote-mark{font-family:Georgia;font-size:90px;line-height:.5;color:var(--gold)}blockquote{font-family:"Playfair Display";font-size:clamp(28px,3vw,42px);line-height:1.35;color:var(--navy);margin:20px 0} .quote-wrap p{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.site-footer{background:#041432;color:#fff;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:50px}.brand.light .brand-copy strong{color:#fff}.footer-brand>p{max-width:340px;font-size:12px;line-height:1.8;color:rgba(255,255,255,.62)}.footer-social{display:flex;gap:16px;font-size:11px;color:var(--gold)}.footer-grid h4{font-size:12px;text-transform:uppercase;letter-spacing:.11em;color:var(--gold);margin:6px 0 18px}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:11px}.footer-grid a,.footer-grid p{font-size:11px;color:rgba(255,255,255,.64);line-height:1.7}.footer-grid a:hover{color:#fff}.footer-bottom{margin-top:55px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;font-size:9px;color:rgba(255,255,255,.42)}.back-to-top{position:fixed;right:24px;bottom:24px;width:44px;height:44px;border-radius:50%;border:0;background:var(--gold);color:var(--navy);font-weight:800;box-shadow:0 12px 25px rgba(0,0,0,.2);opacity:0;visibility:hidden;transform:translateY(10px);transition:.25s;z-index:80}.back-to-top.show{opacity:1;visibility:visible;transform:none}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.16s}
@keyframes float{50%{transform:translateY(-13px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scrollDot{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
@media(max-width:1000px){.main-nav{gap:16px}.main-nav a{font-size:11px}.hero-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:62px}.about-grid{gap:45px}.member-grid{grid-template-columns:repeat(2,1fr)}.activity-card{flex-basis:calc((100% - 24px)/2)}.donation-panel{padding:45px;gap:35px}}
@media(max-width:820px){.container{width:min(100% - 30px,720px)}.nav-wrap{height:78px}.brand img{width:48px;height:48px}.menu-toggle{display:block;z-index:2}.main-nav{position:fixed;left:15px;right:15px;top:84px;padding:22px;display:flex;align-items:stretch;flex-direction:column;gap:0;background:#fff;color:var(--navy);border-radius:20px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(-12px);transition:.25s}.main-nav.open{opacity:1;visibility:visible;transform:none}.main-nav>a:not(.button){padding:13px 4px;border-bottom:1px solid var(--line)}.nav-login{border-left:0;padding-left:4px!important}.nav-donate{margin-top:13px}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;padding-top:110px}.hero-copy{padding:40px 0 25px;text-align:center}.eyebrow{justify-content:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.hero-trust{justify-content:center}.hero-visual{min-height:390px}.logo-halo{width:350px}.card-served{left:5%;bottom:40px}.card-transparent{right:2%;top:45px}.scroll-cue{display:none}.stats-section{margin-top:0;padding:25px 0}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-card:nth-child(2){border-right:0}.stat-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.about-grid,.donation-panel{grid-template-columns:1fr}.about-media{order:2}.section{padding:80px 0}.media-frame{height:430px}.donation-copy{text-align:center}.donation-actions{justify-content:center}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}}
@media(max-width:580px){.brand-copy{display:none}.hero h1{font-size:48px}.hero-copy>p{font-size:14px}.hero-actions,.donation-actions{flex-direction:column}.hero-actions .button,.donation-actions .button{width:100%}.hero-trust{align-items:flex-start;text-align:left}.hero-visual{min-height:330px}.logo-halo{width:290px}.floating-card{padding:11px 13px}.card-transparent{right:0}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:22px 18px}.stat-number{font-size:27px}.section-heading{align-items:flex-start}.carousel-controls{display:none}.activity-card{flex-basis:88%}.about-grid{gap:40px}.about-copy h2,.section-heading h2,.donation-copy h2{font-size:36px}.media-frame{height:380px}.donation-panel{padding:34px 22px;border-radius:24px}.campaign-card{padding:22px}.member-grid{grid-template-columns:1fr}.join-banner{align-items:flex-start;flex-direction:column;gap:20px}.join-banner .button{width:100%}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:8px}.section{padding:65px 0}}

.app-global-loader{position:fixed;inset:0;background:rgba(5,20,50,.62);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:.18s;z-index:3000}.app-global-loader.show{opacity:1;visibility:visible}.app-loader-card{min-width:220px;background:#fff;border-radius:18px;padding:24px;text-align:center;box-shadow:0 20px 70px rgba(0,0,0,.28)}.app-loader-card strong,.app-loader-card small{display:block}.app-loader-card small{color:#71809d;margin-top:5px}.app-loader-ring{display:inline-block;width:42px;height:42px;border:4px solid #e4eaf4;border-top-color:#d9a514;border-radius:50%;animation:appSpin .8s linear infinite;margin-bottom:12px}@keyframes appSpin{to{transform:rotate(360deg)}}
/* STEP 11 */
.member-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.public-page-hero{padding:150px 0 70px;background:linear-gradient(135deg,#061a42,#104797);color:#fff}.public-page-hero h1{font-size:clamp(40px,6vw,72px);margin:12px 0}.public-page-wrap{padding:70px 0}.public-list-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.public-detail-card{background:#fff;border:1px solid #e5eaf2;border-radius:22px;overflow:hidden;box-shadow:0 14px 40px rgba(6,26,66,.07)}.public-detail-card img{width:100%;height:220px;object-fit:cover}.public-detail-card>div{padding:22px}.public-detail-card h3{margin:8px 0;color:#061a42}.public-detail-card p{color:#71809a;line-height:1.7}.public-detail-card a{color:#104797;font-weight:800}.public-member-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.public-member-card{text-align:center;background:#fff;border:1px solid #e5eaf2;border-radius:20px;padding:25px}.public-member-card .member-avatar{width:92px;height:92px;margin:0 auto 15px}.activity-detail-public{max-width:900px;margin:auto;background:#fff;border-radius:24px;overflow:hidden;border:1px solid #e5eaf2}.activity-detail-public>img{width:100%;max-height:480px;object-fit:cover}.activity-detail-public .content{padding:34px}.activity-detail-public .meta{display:flex;gap:14px;flex-wrap:wrap;color:#9b720c;font-weight:800;font-size:12px}.activity-detail-public h1{color:#061a42}.activity-detail-public p{color:#65738b;line-height:1.85;white-space:pre-wrap}@media(max-width:900px){.public-list-grid{grid-template-columns:1fr 1fr}.public-member-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.public-list-grid,.public-member-grid{grid-template-columns:1fr}.public-page-wrap{padding:40px 14px}}

/* STEP 15 - Public Donation Experience */
.campaign-progress-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}.campaign-progress-card{background:#fff;border:1px solid #e5eaf2;border-radius:20px;padding:24px;box-shadow:0 14px 40px rgba(6,26,66,.06)}.campaign-progress-card>small,.donation-track-card>span{font-size:10px;letter-spacing:.14em;color:#a57700;font-weight:800}.campaign-progress-card h3{color:#071d49;margin:9px 0 18px}.campaign-progress-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px}.campaign-progress-meta b{color:#071d49}.campaign-progress-meta span{color:#74819a}.campaign-progress-track{height:8px;background:#edf1f7;border-radius:99px;overflow:hidden;margin:12px 0 18px}.campaign-progress-track i{display:block;height:100%;background:linear-gradient(90deg,#d59b00,#ffd85b);border-radius:inherit}.campaign-pick,.donation-status-link{border:0;background:#071d49;color:#fff;border-radius:10px;padding:11px 15px;font-weight:800;text-decoration:none;display:inline-block;cursor:pointer}.donation-track-page{min-height:100vh;padding:145px 20px 70px;background:linear-gradient(145deg,#f4f7fc,#e9eef7)}.donation-track-card{max-width:780px;margin:auto;background:#fff;border:1px solid #e2e8f1;border-radius:28px;padding:38px;box-shadow:0 24px 70px rgba(7,29,73,.1)}.donation-track-card h1{font-size:42px;color:#071d49;margin:8px 0}.donation-track-card>p{color:#71809a}.donation-track-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin:28px 0}.donation-track-form label{font-size:12px;color:#62708a;font-weight:700}.donation-track-form input{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid #dce3ed;border-radius:10px}.donation-track-form button{height:44px;border:0;border-radius:10px;background:#dcae22;color:#071d49;font-weight:800;padding:0 22px}.track-alert,.result-note{padding:15px;border-radius:12px;background:#fff5d5;color:#8c6500}.donation-result{margin-top:24px;border:1px solid #e5eaf2;border-radius:20px;padding:24px}.donation-result-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.donation-result-head small,.donation-result-head strong{display:block}.donation-result-head strong{color:#071d49}.donation-status{padding:9px 13px;border-radius:99px;font-size:11px;font-weight:800}.status-pending{background:#fff1bf;color:#8e6500}.status-approved{background:#dcf8e9;color:#167347}.status-rejected{background:#ffe2e2;color:#a32929}.donation-result dl,.receipt-sheet dl{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e5eaf2;margin:24px 0;border:1px solid #e5eaf2}.donation-result dl div,.receipt-sheet dl div{background:#fff;padding:16px}.donation-result dt,.receipt-sheet dt{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#7d899e}.donation-result dd,.receipt-sheet dd{margin:5px 0 0;font-weight:800;color:#071d49}.thank-you-box{background:#071d49;color:#fff;padding:20px;border-radius:16px}.thank-you-box p{color:#cdd7e8}.thank-you-box a{color:#ffd85b;font-weight:800}.result-note.error{background:#ffe5e5;color:#9d2d2d}.donor-summary{display:flex;align-items:baseline;gap:18px;padding:25px;background:#071d49;color:#fff;border-radius:20px;margin-bottom:25px}.donor-summary span,.donor-summary small{color:#b8c5d9}.donor-summary strong{font-size:30px;color:#ffd85b}.public-donor-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.public-donor-grid article{display:flex;gap:18px;background:#fff;border:1px solid #e5eaf2;border-radius:20px;padding:22px}.donor-avatar{flex:0 0 52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#071d49;color:#ffd85b;font-weight:900}.public-donor-grid h3{margin:4px 0;color:#071d49}.public-donor-grid p,.public-donor-grid small{color:#79869b}.public-donor-grid blockquote{margin:12px 0 0;color:#68758b;font-style:italic}.receipt-body{background:#eef2f8;padding:45px 15px}.receipt-sheet{max-width:760px;margin:auto;background:#fff;padding:45px;border-radius:24px;box-shadow:0 20px 60px rgba(7,29,73,.12)}.receipt-sheet header{display:flex;align-items:center;gap:22px;border-bottom:2px solid #071d49;padding-bottom:22px}.receipt-sheet header img{width:76px}.receipt-sheet header small{letter-spacing:.12em;color:#9b720c}.receipt-sheet h1{margin:5px 0;color:#071d49}.receipt-sheet header p{margin:0;color:#7c899e}.receipt-amount{padding:34px;text-align:center;background:#071d49;color:#fff;margin:26px 0;border-radius:18px}.receipt-amount small,.receipt-amount strong{display:block}.receipt-amount strong{font-size:42px;color:#ffd85b;margin-top:7px}.receipt-note{padding:18px;background:#f5f7fb;color:#68758b;border-radius:12px;line-height:1.7}.receipt-sheet footer{display:flex;justify-content:space-between;margin-top:26px;color:#6e7b90}.receipt-sheet>button{display:block;margin:28px auto 0;border:0;background:#dcae22;color:#071d49;font-weight:900;padding:13px 22px;border-radius:10px}@media(max-width:800px){.campaign-progress-grid{grid-template-columns:1fr}.donation-track-form{grid-template-columns:1fr}.public-donor-grid{grid-template-columns:1fr}.donor-summary{align-items:flex-start;flex-direction:column}.donation-result dl,.receipt-sheet dl{grid-template-columns:1fr}.receipt-sheet{padding:24px}.receipt-sheet header{align-items:flex-start}.receipt-amount strong{font-size:32px}}@media print{.receipt-body{background:#fff;padding:0}.receipt-sheet{box-shadow:none;max-width:none;border-radius:0}.receipt-sheet>button{display:none}}

/* STEP 16 donation reference */
.donation-track-form.single-field{grid-template-columns:1fr auto}.donation-reference-body{background:linear-gradient(145deg,#041331,#0b3a83);min-height:100vh}.donation-reference-page{min-height:100vh;display:grid;place-items:center;padding:28px}.donation-reference-card{width:min(100%,680px);background:#fff;border-radius:28px;padding:42px;box-shadow:0 30px 90px rgba(0,0,0,.3);text-align:center}.donation-reference-card>img{width:88px;height:88px;object-fit:contain}.donation-reference-card>span{display:block;margin-top:18px;color:#1550aa;font-size:10px;font-weight:800;letter-spacing:.17em}.donation-reference-card h1{font-family:"Playfair Display";color:#061a42;font-size:38px;margin:8px 0}.donation-reference-card>p{color:#71809a;font-size:13px;line-height:1.8}.donation-code{margin:28px 0;padding:24px;background:#fff8df;border:1px dashed #e7ae20;border-radius:18px}.donation-code small{display:block;color:#71809a;font-size:9px;letter-spacing:.16em}.donation-code strong{display:block;color:#061a42;font-size:clamp(20px,4vw,30px);margin-top:8px;word-break:break-all}.donation-reference-card dl{display:grid;grid-template-columns:1fr 1fr;text-align:left;gap:1px;background:#e6eaf1;border:1px solid #e6eaf1;border-radius:16px;overflow:hidden}.donation-reference-card dl div{background:#fff;padding:15px}.donation-reference-card dt{font-size:9px;color:#71809a;text-transform:uppercase}.donation-reference-card dd{margin:5px 0 0;color:#061a42;font-size:12px;font-weight:800}.reference-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:24px}.reference-actions button,.reference-actions a{border:0;border-radius:11px;padding:12px 16px;background:#061a42;color:#fff;font-size:11px;font-weight:800;cursor:pointer}.reference-actions button:first-child{background:#f5b51b;color:#061a42}.reference-hint{display:block;margin-top:18px;color:#8a92a3}@media(max-width:580px){.donation-track-form.single-field{grid-template-columns:1fr}.donation-reference-card{padding:28px 20px}.donation-reference-card dl{grid-template-columns:1fr}.reference-actions>*{width:100%}}@media print{.donation-reference-body{background:#fff}.donation-reference-page{padding:0}.donation-reference-card{box-shadow:none;border:1px solid #ddd}.reference-actions{display:none}}

/* v17.0.1 media refinements */
.about-custom-image{width:100%;height:100%;display:block;object-fit:cover;cursor:zoom-in}.activity-detail-public>img{display:block;width:100%;height:min(54vw,480px);object-fit:cover;cursor:zoom-in}.public-activity-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.public-activity-gallery .gallery-image{display:block;width:100%;height:190px;padding:0;border:0;border-radius:14px;overflow:hidden;background:#edf2f8;cursor:zoom-in}.public-activity-gallery img,.public-activity-gallery video{width:100%;height:190px;display:block;object-fit:cover;border-radius:14px}.public-activity-gallery .gallery-file{min-height:110px;display:grid;place-items:center;border:1px solid #dfe5ef;border-radius:14px;background:#f7f9fc;color:#0c438f;font-weight:850;text-align:center;padding:15px}.image-preview-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(1,10,28,.88);backdrop-filter:blur(8px)}.image-preview-modal.show{display:flex}.image-preview-modal img{max-width:min(1100px,94vw);max-height:88vh;object-fit:contain;border-radius:14px;box-shadow:0 25px 90px rgba(0,0,0,.48)}.image-preview-modal button{position:absolute;top:20px;right:20px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#071d49;font-size:25px;cursor:pointer}@media(max-width:720px){.public-activity-gallery{grid-template-columns:1fr 1fr}.public-activity-gallery .gallery-image,.public-activity-gallery img,.public-activity-gallery video{height:145px}}@media(max-width:480px){.public-activity-gallery{grid-template-columns:1fr}}

/* v17.0.3 dynamic campaign */
.campaign-link{margin-top:18px;justify-content:flex-start;gap:10px}.campaign-card .campaign-note+ .campaign-link{display:inline-flex}


/* v19.0.1 - Mobile responsive hardening */
html,body{max-width:100%;overflow-x:hidden}
.container,.public-page-wrap,.panel,.public-donate-grid,.donation-track-card,.receipt-sheet,.reference-card{min-width:0;max-width:100%}
input,select,textarea,button{max-width:100%;min-width:0}
img,video,iframe{max-width:100%;height:auto}
@media(max-width:760px){
  .container{width:100%!important;padding-left:16px!important;padding-right:16px!important}
  .site-header .nav-wrap{gap:10px}.site-header .brand{min-width:0}.site-header .brand-copy{min-width:0}.site-header .brand-copy strong,.site-header .brand-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}
  .main-nav{gap:6px;flex-wrap:wrap;justify-content:flex-end}.main-nav a,.site-header .button{font-size:10px!important;padding:8px 10px!important}
  .public-donate-grid,.public-list-grid,.public-member-grid,.public-donor-grid,.public-activity-gallery{grid-template-columns:1fr!important}
  .public-donate-grid>*{min-width:0;width:100%}
  .donation-form,.fee-form{display:grid!important;grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;min-width:0!important}
  .donation-form label,.fee-form label,.donation-form .full,.fee-form .full{grid-column:auto!important;width:100%!important;min-width:0!important}
  .donation-form input,.donation-form select,.donation-form textarea,.fee-form input,.fee-form select,.fee-form textarea{width:100%!important;max-width:100%!important;min-width:0!important;font-size:16px!important}
  .donation-form button,.fee-form button{width:100%}
  .panel{padding:16px!important;overflow:hidden}
  .activity-detail-public{grid-template-columns:1fr!important}.activity-detail-public>img{width:100%!important;height:auto!important;max-height:320px;object-fit:cover}
  .public-detail-card{grid-template-columns:1fr!important}.public-detail-card>img{width:100%!important;height:210px!important;object-fit:cover}
  .donation-track-card,.receipt-sheet,.reference-card{width:calc(100% - 24px)!important;margin-left:auto!important;margin-right:auto!important;padding:18px!important}
  .donation-track-form{grid-template-columns:1fr!important}.donation-track-form button{width:100%}
  .reference-actions{display:grid!important;grid-template-columns:1fr!important}.reference-actions>*{width:100%!important;text-align:center}
  .receipt-sheet header{align-items:flex-start;gap:12px}.receipt-sheet header img{width:58px!important}.receipt-sheet h1{font-size:24px!important}
}

/* v20.0.0 Public activity registration */
.public-registration-badge{display:inline-flex;margin:0 0 10px;padding:6px 10px;border-radius:999px;background:#fff1bd;color:#755300;font-size:10px;font-weight:850}.activity-registration-public{margin:32px 0 70px;padding:clamp(20px,4vw,38px);border:1px solid #e2e8f1;border-radius:26px;background:linear-gradient(145deg,#fff,#f7faff);box-shadow:0 20px 55px rgba(7,29,73,.08)}.registration-public-head small{color:#c28a00;font-weight:900;letter-spacing:.14em}.registration-public-head h2{margin:7px 0;color:#071d49;font-family:"Playfair Display",serif;font-size:clamp(27px,4vw,40px)}.registration-public-head p{max-width:720px;color:#6f7d92;line-height:1.7}.registration-public-head>span{display:inline-flex;margin-top:6px;padding:7px 10px;border-radius:999px;background:#eef4ff;color:#174d96;font-size:10px;font-weight:800}.activity-registration-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px}.activity-registration-form label{display:grid;gap:7px;color:#213656;font-size:12px;font-weight:800}.activity-registration-form label.full{grid-column:1/-1}.activity-registration-form input,.activity-registration-form select,.activity-registration-form textarea{width:100%;border:1px solid #dce4ef;border-radius:12px;background:#fff;padding:13px 14px;color:#071d49;font:inherit}.activity-registration-form textarea{min-height:110px;resize:vertical}.activity-registration-form>button{grid-column:1/-1;justify-self:start;min-width:160px}.registration-checkbox{display:flex;gap:8px;align-items:center;font-weight:600}.registration-checkbox input{width:18px!important;height:18px}.registration-success{display:flex;gap:15px;align-items:center;margin-top:24px;padding:20px;border-radius:18px;background:#eaf9f1;border:1px solid #cceedd}.registration-success>span{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#16734a;color:#fff;font-size:22px}.registration-success h3{margin:4px 0;color:#0d5035}.registration-success p{margin:0;color:#537568}.registration-success small{color:#168055;font-weight:900;letter-spacing:.08em}.registration-readonly-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:18px;background:#e1e7ef;border:1px solid #e1e7ef;border-radius:16px;overflow:hidden}.registration-readonly-grid>div{padding:15px;background:#fff}.registration-readonly-grid small,.registration-readonly-grid strong{display:block}.registration-readonly-grid small{color:#78869a;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.registration-readonly-grid strong{margin-top:5px;color:#10284e;font-size:12px}.registration-error,.registration-closed{margin-top:20px;padding:15px;border-radius:12px;background:#fff0f0;color:#9e2f2f;font-weight:750}.registration-closed{background:#fff6d8;color:#795b00}@media(max-width:680px){.activity-registration-form,.registration-readonly-grid{grid-template-columns:1fr}.activity-registration-form label.full{grid-column:auto}.activity-registration-form>button{grid-column:auto;width:100%}.activity-registration-public{border-radius:20px;margin-left:0;margin-right:0}.registration-success{align-items:flex-start}}

/* v20.0.1 public activity registration visibility */
.activity-registration-cta{display:inline-flex;align-items:center;gap:7px;margin:2px 0 14px;padding:10px 14px;border-radius:999px;background:#f5b51b;color:#071d49;font-size:11px;font-weight:900;box-shadow:0 8px 20px rgba(245,181,27,.22)}.activity-registration-cta:hover{transform:translateY(-1px);box-shadow:0 11px 25px rgba(245,181,27,.3)}

/* v20.0.3 - public activity registration refinements */
.activity-detail-public .activity-long-text{color:#65738b;line-height:1.9;white-space:normal;overflow-wrap:anywhere}.activity-detail-public .activity-long-text br{content:"";display:block;margin-top:.55em}.activity-registration-public{max-width:900px;margin:32px auto 70px}.registration-public-head p{white-space:normal;overflow-wrap:anywhere}.registration-public-head p br{content:"";display:block;margin-top:.45em}.registration-checkbox-options{display:grid;gap:9px;padding:12px 14px;border:1px solid #dce4ef;border-radius:12px;background:#fff}.registration-checkbox-option{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:9px!important;font-weight:650!important;cursor:pointer}.registration-checkbox-option input{width:18px!important;height:18px!important;margin-top:1px;flex:0 0 18px}.registration-checkbox-option span{font-weight:650!important;line-height:1.45}.activity-registration-form input[type=date],.activity-registration-form input[type=number]{min-height:47px}
@media(max-width:680px){.activity-registration-public{max-width:100%;padding:20px 16px}.registration-public-head h2{font-size:clamp(25px,8vw,34px)}}

/* v20.0.7 - Lions International affiliation + activity card links */
.lions-affiliation{display:inline-flex;align-items:center;gap:11px;margin-top:18px;padding:9px 13px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.07);color:#fff;max-width:max-content;transition:.25s}.lions-affiliation:hover{background:rgba(255,255,255,.12);transform:translateY(-2px)}.lions-affiliation img{width:38px;height:38px;object-fit:contain;filter:drop-shadow(0 5px 10px rgba(0,0,0,.12))}.lions-affiliation span{display:grid;gap:1px}.lions-affiliation small{font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.58)}.lions-affiliation strong{font-size:11px;letter-spacing:.015em;color:#fff}
.activity-card .activity-card-link{display:block;margin:0;padding:0;border:0}.activity-card .activity-title-link{display:inline;color:var(--navy);margin:0;padding:0;border:0;font:inherit}.activity-card .activity-title-link:hover{color:var(--blue)}.activity-card .activity-view-link{display:flex;justify-content:space-between;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);font-size:11px;font-weight:800;color:var(--navy)}
.footer-affiliation{display:inline-flex;align-items:center;gap:9px;margin:13px 0 17px;padding:8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.05);width:max-content;max-width:100%}.footer-affiliation img{width:34px;height:34px;object-fit:contain}.footer-affiliation span{display:grid}.footer-affiliation small{font-size:7px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48)}.footer-affiliation strong{font-size:10px;color:#fff}
@media(max-width:580px){.lions-affiliation{margin-left:auto;margin-right:auto}.footer-affiliation{margin-top:10px}}
