*{margin:0; padding:0; box-sizing:border-box;}:root{--bg-primary:#0a0a0c; --bg-secondary:#16161a; --bg-tertiary:#1d1d22; --bg-section:#1e1e24; --bg-card:#26262e; --bg-deep:#0d0d0f; --bg-footer:#070708; --text-primary:#f5f5f7; --text-secondary:#a1a1a6; --text-muted:#6e6e73; --accent:#d4af37; --accent-light:#f3e5ab; --accent-hover:#b89628; --on-accent:#0a0a0c; --border-subtle:rgba(255,255,255,0.08); --border-strong:rgba(255,255,255,0.14); --grey-track:#3f3f46; --radius-sm:10px; --radius-card:18px; --radius-pill:999px; --shadow-card:0 10px 30px rgba(0,0,0,0.4); --shadow-hover:0 24px 48px rgba(0,0,0,0.5); --ease:cubic-bezier(0.25,0.46,0.45,0.94); --transition:all 0.3s var(--ease);}[data-theme="light"]{--bg-primary:#e5e0d6; --bg-secondary:#eeeae1; --bg-tertiary:#d9d3c8; --bg-section:#d8d2c7; --bg-card:#e9e4da; --bg-deep:#cec7ba; --bg-footer:#24231f; --text-primary:#25231f; --text-secondary:#5c574e; --text-muted:#777064; --accent:#82600e; --accent-light:#76570d; --accent-hover:#6b500b; --on-accent:#fffdf8; --border-subtle:rgba(37,35,31,0.14); --border-strong:rgba(37,35,31,0.24); --grey-track:#c8c1b2; --shadow-card:0 10px 30px rgba(73,60,34,0.14); --shadow-hover:0 24px 48px rgba(73,60,34,0.2);}::selection{background-color:var(--accent); color:var(--bg-primary);}::-moz-selection{background-color:var(--accent); color:var(--bg-primary);}html,body{width:100%; min-height:100vh; overflow-x:hidden; overflow-x:clip; scroll-behavior:smooth;}body{background-color:var(--bg-primary); color:var(--text-primary); font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif; line-height:1.6; display:flex; flex-direction:column; padding-top:80px; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;}body.theme-loading::before{content:""; position:fixed; inset:0; z-index:9998; background:var(--bg-primary); opacity:0.94; pointer-events:all;}body.theme-loading::after{content:""; position:fixed; top:50%; left:50%; z-index:9999; width:22px; height:22px; margin:-11px 0 0 -11px; border:2px solid rgba(212,175,55,0.28); border-top-color:var(--accent); border-radius:50%; animation:themeLoadingSpin 0.7s linear infinite; pointer-events:none;}.navbar{position:fixed; top:0; left:0; z-index:100; background-color:rgba(10,10,12,0.72); backdrop-filter:blur(20px) saturate(180%); -webkit-backdrop-filter:blur(20px) saturate(180%); display:flex; justify-content:space-between; align-items:center; padding:14px 5%; border-bottom:1px solid var(--border-subtle); width:100%; transition:transform 0.45s var(--ease),opacity 0.45s var(--ease);}.navbar.services-nav-hidden{opacity:0; pointer-events:none; transform:translateY(-100%);}.navbar nav{margin-left:auto; margin-right:24px;}.logo-container{display:flex; align-items:center; gap:16px;}.brand-name{color:var(--accent); font-family:inherit; font-size:1.05rem; font-weight:1000; letter-spacing:-0.01em; line-height:1.2; white-space:nowrap;}.logo{max-height:52px; width:auto; border-radius:8px; transition:var(--transition);}.logo:hover{transform:scale(1.03); opacity:0.9;}.nav-links{list-style:none; display:flex; align-items:center; gap:32px;}.nav-links li{display:flex; align-items:center;}.nav-links a{color:var(--text-secondary); text-decoration:none; font-size:0.95rem; font-weight:500; letter-spacing:0.2px; padding:6px 2px; position:relative; transition:color 0.25s var(--ease);}.nav-links .nav-donate{margin-left:6px;}.nav-links .nav-donate-link{padding:10px 18px; font-size:0.82rem; line-height:1; border-radius:var(--radius-pill); font-weight:700; letter-spacing:0.2px; text-transform:uppercase; border:1px solid var(--accent); box-shadow:0 10px 24px rgba(212,175,55,0.18); color:var(--on-accent); background-color:var(--accent);}.nav-links .nav-donate-link::after{display:none;}.nav-links .nav-donate-link:hover,.nav-links .nav-donate-link:focus-visible{color:var(--on-accent); background-color:var(--accent-hover); border-color:var(--accent-hover); transform:translateY(-2px);}.nav-links a::after{content:""; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--accent); transition:width 0.3s var(--ease);}.nav-links a:hover,.nav-links a.active{color:var(--text-primary);}.theme-toggle{display:inline-flex; flex:0 0 auto; width:auto; height:38px; align-items:center; justify-content:center; gap:8px; padding:0 12px; border:1px solid rgba(212,175,55,0.45); border-radius:var(--radius-pill); background:rgba(212,175,55,0.1); color:var(--accent); cursor:pointer; transition:var(--transition);}.theme-toggle:hover,.theme-toggle:focus-visible{background:var(--accent); color:var(--on-accent);}.theme-toggle-icon{font-size:1.25rem; line-height:1;}.theme-toggle-label{font-size:0.68rem; font-weight:800; letter-spacing:0.1em; line-height:1;}[data-theme="light"] .navbar{background-color:rgba(255,253,248,0.88);}[data-theme="light"] .page-hero::before,[data-theme="light"] .welcome-hero,[data-theme="light"] .about-hero{background-blend-mode:normal;}[data-theme="light"] .page-hero::before{background:linear-gradient(180deg,rgba(255,253,248,0.28),rgba(245,241,232,0.72) 70%,var(--bg-primary));}[data-theme="light"] .welcome-hero{background-image:linear-gradient(rgba(229,224,214,0.48),rgba(229,224,214,0.78) 70%,var(--bg-primary)),url('images/quran-hero.webp?v=2');}[data-theme="light"] .about-hero{background-image:linear-gradient(rgba(229,224,214,0.48),rgba(229,224,214,0.78) 70%,var(--bg-primary)),url('images/about-us.webp?v=2');}[data-theme="light"] .impact-section{background-image:linear-gradient(rgba(229,224,214,0.58),rgba(229,224,214,0.78)),url('images/quran-impact.webp?v=2');}[data-theme="light"] .impact-card{background-color:rgba(233,228,218,0.88); border-color:rgba(37,35,31,0.14);}[data-theme="light"] .section-light{border-color:rgba(37,35,31,0.12);}[data-theme="light"] .section-light .service-card,[data-theme="light"] .section-light .resource-card,[data-theme="light"] .section-light .transparency-card,[data-theme="light"] .section-light .contact-box,[data-theme="light"] .section-light .pdf-section,[data-theme="light"] .section-light .bento-item,[data-theme="light"] .section-light .receipt-info-card,[data-theme="light"] .section-light .receipt-form-card,[data-theme="light"] .section-light .impact-card,[data-theme="light"] .section-light .mission-text{border-color:var(--border-subtle); box-shadow:var(--shadow-card);}[data-theme="light"] .preloader{background-color:var(--bg-primary);}[data-theme="light"] .receipt-section{background:linear-gradient(145deg,rgba(167,123,24,0.12),var(--bg-secondary) 48%,var(--bg-primary));}[data-theme="light"] footer{background-color:var(--bg-footer); color:#e8e1d2;}[data-theme="light"] footer a{color:var(--accent-light);}[data-theme="light"] .section-light .receipt-info-card{background:linear-gradient(145deg,rgba(167,123,24,0.14),var(--bg-card) 48%,var(--bg-secondary)); box-shadow:var(--shadow-card);}.menu-toggle,.menu-close,.menu-backdrop{display:none;}.nav-links a:hover::after,.nav-links a.active::after{width:100%;}.container{flex:1 0 auto; width:100%; max-width:1180px; margin:0 auto; padding:0 24px; text-align:center;}.not-found-main{display:flex; align-items:center; justify-content:center; min-height:calc(100vh - 180px); padding:60px 24px 80px;}.not-found-section{width:100%; max-width:760px;}.not-found-card{background:linear-gradient(180deg,var(--bg-secondary),var(--bg-primary)); border:1px solid var(--border-subtle); border-radius:var(--radius-card); box-shadow:var(--shadow-card); padding:54px 32px 42px; text-align:center; position:relative; overflow:hidden;}.not-found-card::before{content:""; position:absolute; inset:0 auto auto 0; width:100%; height:3px; background:linear-gradient(90deg,rgba(212,175,55,0),var(--accent),rgba(212,175,55,0));}.not-found-card h1{color:var(--text-primary); font-size:clamp(2.2rem,5vw,3.6rem); font-weight:700; letter-spacing:-0.02em; margin:0 0 18px;}.not-found-card p{color:var(--text-secondary); font-size:1.05rem; line-height:1.7; max-width:560px; margin:0 auto;}.not-found-meta{margin-top:18px; font-size:0.96rem; color:var(--text-muted);}.not-found-meta a{color:var(--accent-light); text-decoration:none; font-weight:600;}.not-found-meta a:hover{color:var(--accent); text-decoration:underline;}.page-hero{position:relative; width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:130px 24px 110px; margin-top:-14px; margin-bottom:56px; text-align:center; background:linear-gradient(rgba(10,10,12,0.72),rgba(10,10,12,0.85) 70%,var(--bg-primary)),url('images/donationpagehero.webp?v=2') no-repeat center center / cover; border-bottom:1px solid var(--border-subtle); display:flex; align-items:center; justify-content:center;}.page-hero::before{content:""; position:absolute; inset:0; background:linear-gradient( 180deg,rgba(0,0,0,0.55) 0%,rgba(10,10,12,0.75) 60%,var(--bg-primary) 100% );}.hero-content{max-width:900px; margin:0 auto; position:relative; z-index:2; animation:fadeUp 0.8s var(--ease) both;}.hero-content h1{color:var(--text-primary); font-size:clamp(2.4rem,6vw,4.2rem); font-weight:700; letter-spacing:-0.02em; line-height:1.1; margin-bottom:20px; text-shadow:0 4px 24px rgba(0,0,0,0.6);}.hero-subtitle{color:var(--text-secondary); font-size:clamp(1.05rem,2.2vw,1.35rem); max-width:640px; margin:0 auto 32px; line-height:1.6; background-color:var(--bg-secondary); border:1px solid var(--border-subtle); border-left:3px solid var(--accent); padding:28px 30px; border-radius:var(--radius-card); text-align:left; box-shadow:var(--shadow-card);}.welcome-hero .hero-subtitle{border:none; padding:0; text-align:center; background:transparent; box-shadow:none;}h1,h2,h3,h4{letter-spacing:-0.01em;}.section-title{color:var(--text-primary); font-size:clamp(1.8rem,4vw,2.6rem); font-weight:700; letter-spacing:-0.02em; margin-bottom:12px;}@keyframes qaycShimmer{0%{background-position:0% 50%;}100%{background-position:200% 50%;}}.gold-divider{height:2px; width:64px; background:linear-gradient(90deg,var(--accent),rgba(212,175,55,0.2)); margin:18px auto; border-radius:2px;}.impact-subheading{color:var(--text-secondary); font-size:1.1rem; margin-bottom:40px; letter-spacing:0.2px;}.page-intro{width:100%; max-width:680px; margin:0 auto 32px; padding:22px 26px; background:var(--bg-secondary); border:1px solid rgba(212,175,55,0.3); border-left:3px solid var(--accent); border-radius:var(--radius-card); color:var(--text-secondary); text-align:center; line-height:1.7;}.page-intro p{margin:0;}.section-light .page-intro,.section-light .page-intro p{color:var(--text-secondary);}.mission-text.page-intro{text-align:left;}.mission-text.page-intro p{color:var(--text-secondary);}.receipt-page-intro{margin-top:0;}.section-light{background-color:var(--bg-section); color:var(--text-secondary); width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); padding:80px 24px; border-top:1px solid rgba(255,255,255,0.06); border-bottom:1px solid rgba(255,255,255,0.06);}.section-light .section-title,.section-light h1,.section-light h2,.section-light h3,.section-light h4{color:var(--text-primary);}.section-light .hero-badge,.section-light .charity-badge{color:var(--accent); background-color:rgba(212,175,55,0.12); border-color:rgba(212,175,55,0.35);}.section-light .impact-subheading,.section-light .hero-subtitle,.section-light .transparency-intro{color:var(--text-secondary);}.section-light .gold-divider{background:linear-gradient(90deg,var(--accent),rgba(212,175,55,0.15));}.section-light .service-card,.section-light .resource-card,.section-light .transparency-card,.section-light .contact-box,.section-light .pdf-section,.section-light .bento-item,.section-light .receipt-info-card,.section-light .receipt-form-card,.section-light .impact-card,.section-light .mission-text{background-color:var(--bg-card); border-color:rgba(255,255,255,0.06); box-shadow:0 12px 32px rgba(0,0,0,0.35);}.section-light .service-card:hover,.section-light .resource-card:hover,.section-light .transparency-card:hover,.section-light .contact-box:hover,.section-light .bento-item:hover,.section-light .impact-card:hover{border-color:rgba(212,175,55,0.5); box-shadow:0 24px 48px rgba(0,0,0,0.14);}.section-light .service-content h3,.section-light .resource-content h2,.section-light .transparency-card h3,.section-light .contact-box h3,.section-light .pdf-section h2,.section-light .receipt-info-card h2,.section-light .mission-text h2{color:var(--text-primary);}.section-light .service-content p,.section-light .resource-content p,.section-light .transparency-card p,.section-light .contact-box p,.section-light .pdf-section p,.section-light .receipt-lead,.section-light .bullet-item p,.section-light .mission-text p{color:var(--text-secondary);}.section-light .bullet-item strong{color:var(--text-primary);}.section-light .transparency-link{color:var(--accent);}.section-light .carousel-container,.section-light .resource-image-container{background-color:var(--bg-tertiary); border-color:rgba(255,255,255,0.06);}.section-light .stat-label{color:var(--text-secondary);}.section-light .icon-wrapper{background-color:rgba(212,175,55,0.12); border-color:rgba(212,175,55,0.35);}.section-light .contact-box:hover .icon-wrapper{background-color:var(--accent); color:var(--on-accent);}.section-light .bento-grid,.section-light .service-card,.section-light .resource-card,.section-light .pdf-section,.section-light .receipt-layout,.section-light .contact-boxes-row{max-width:1180px; margin-left:auto; margin-right:auto;}.section-light.our-work-section,.our-work-section.section-light,.section-light.services-section,.services-section.section-light,.section-light.contact-boxes-row,.contact-boxes-row.section-light,.section-light.receipt-request-section,.receipt-request-section.section-light{width:100vw; max-width:none; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);}.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:13px 30px; font-size:0.95rem; font-weight:600; border-radius:var(--radius-pill); text-decoration:none; cursor:pointer; border:1px solid transparent; transition:var(--transition); white-space:nowrap;}.btn svg,.btn i{font-size:0.95em;}.btn-gold{background-color:var(--accent); color:var(--on-accent); border-color:var(--accent); font-weight:700;}.btn-gold:hover{background-color:var(--accent-hover); border-color:var(--accent-hover); transform:translateY(-2px); box-shadow:0 12px 28px rgba(212,175,55,0.28);}.btn-outline{background-color:transparent; color:var(--text-primary); border-color:var(--border-strong);}.btn-outline:hover{border-color:var(--accent); color:var(--accent); transform:translateY(-2px); box-shadow:0 10px 24px rgba(0,0,0,0.35);}.btn-gold-soft{background:linear-gradient(145deg,rgba(212,175,55,0.14),rgba(212,175,55,0.05)); color:var(--accent-light); border-color:rgba(212,175,55,0.45);}.btn-gold-soft:hover,.btn-gold-soft:focus-visible{background:var(--accent); color:var(--on-accent); border-color:var(--accent); transform:translateY(-2px); box-shadow:0 12px 28px rgba(212,175,55,0.28);}.btn-group{display:flex; gap:14px; flex-wrap:wrap; justify-content:center; align-items:center;}.action-btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:13px 28px; font-weight:600; font-size:0.92rem; border-radius:var(--radius-pill); text-decoration:none; transition:var(--transition);}.gold-btn{background-color:var(--accent); color:var(--on-accent); border:1px solid var(--accent); font-weight:700;}.gold-btn:hover{background-color:var(--accent-hover); border-color:var(--accent-hover); transform:translateY(-2px); box-shadow:0 12px 28px rgba(212,175,55,0.28);}.outline-btn{background-color:transparent; color:var(--text-primary); border:1px solid var(--border-strong);}.outline-btn:hover{border-color:var(--accent); color:var(--accent); transform:translateY(-2px); box-shadow:0 10px 24px rgba(0,0,0,0.35);}.welcome-hero{position:relative; width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:130px 24px 110px; margin-top:-14px; margin-bottom:56px; text-align:center; background:linear-gradient(rgba(10,10,12,0.72),rgba(10,10,12,0.85) 70%,var(--bg-primary)),url('images/quran-hero.webp?v=2') no-repeat center center / cover; border-bottom:1px solid var(--border-subtle);}.welcome-hero .hero-content{animation:fadeUp 0.8s var(--ease) both;}.welcome-hero h1{color:var(--text-primary); font-size:clamp(2.4rem,6vw,4rem); font-weight:700; letter-spacing:-0.02em; line-height:1.1; margin-bottom:18px; text-shadow:0 4px 28px rgba(0,0,0,0.7);}.hero-badge,.charity-badge{display:inline-block; background-color:rgba(212,175,55,0.12); color:var(--accent-light); border:1px solid rgba(212,175,55,0.35); padding:7px 18px; border-radius:var(--radius-pill); font-size:0.78rem; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:24px;}.welcome-hero h1 strong{color:var(--accent) !important;}[data-theme="light"] .welcome-hero h1,[data-theme="light"] .welcome-hero .hero-subtitle{color:var(--text-primary); text-shadow:0 2px 12px rgba(229,224,214,0.75);}.qayc-select-wrap{position:relative; display:inline-block; transform-origin:center;}.qayc-select-box{position:absolute; inset:-6px; border:1px solid var(--accent); border-radius:4px; pointer-events:none; opacity:0;}.qayc-select-handles{position:absolute; inset:-6px; pointer-events:none; opacity:0;}.qayc-select-handle{position:absolute; width:9px; height:9px; background:var(--accent); border-radius:50%; transform:translate(-50%,-50%);}.qayc-select-handle.tl{top:0; left:0;}.qayc-select-handle.tr{top:0; right:0;}.qayc-select-handle.bl{bottom:0; left:0;}.qayc-select-handle.br{bottom:0; right:0;}.qayc-nw{white-space:nowrap;}.qayc-select-reveal{animation:qaycSelectGrow 2.2s var(--ease) forwards;}@keyframes qaycSelectGrow{0%,45%{transform:scale(0.62);}77%{transform:scale(1);}100%{transform:scale(1);}}.qayc-select-reveal .qayc-select-box,.qayc-select-reveal .qayc-select-handles{animation:qaycSelectChrome 2.2s var(--ease) forwards;}@keyframes qaycSelectChrome{0%{opacity:0;}14%{opacity:1;}60%{opacity:1;}90%{opacity:0;}100%{opacity:0;}}@media (prefers-reduced-motion:reduce){.qayc-select-reveal{animation:none;}.qayc-select-box,.qayc-select-handles{opacity:0;}}.text-flip-line{font-size:clamp(1.05rem,2.2vw,1.35rem); font-weight:600; color:var(--text-primary); line-height:1.9; margin-bottom:8px;}.tf-wrap{display:inline-block; vertical-align:middle; margin-left:6px;}.tf-pill{display:inline-flex; align-items:center; justify-content:center; overflow:hidden; max-width:100%; background:linear-gradient(135deg,var(--accent),var(--accent-hover)); border:1px solid rgba(212,175,55,0.7); color:var(--on-accent); border-radius:999px; padding:0.32em 0.95em; font-size:0.95em; font-weight:700; white-space:nowrap; box-shadow:0 6px 26px rgba(212,175,55,0.35); transition:width 0.55s var(--ease);}.tf-word{display:inline-block;}.tf-word.tf-swap{animation:tfMorph 0.55s var(--ease) both;}@keyframes tfMorph{0%{opacity:1; transform:translateY(0);}45%{opacity:0; transform:translateY(-5px);}55%{opacity:0; transform:translateY(5px);}100%{opacity:1; transform:translateY(0);}}.tf-sr{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;}.tf-follow{margin-top:9px;}@media (prefers-reduced-motion:reduce){.tf-word.tf-swap{animation:none;}.tf-pill{transition:none;}}.value-card::before,.funding-card::before{content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,transparent,var(--accent),transparent);}.section-head-row{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; flex-wrap:wrap;}.view-all{display:inline-flex; align-items:center; gap:6px; padding:12px 0; min-height:44px; color:var(--accent); font-size:0.9rem; font-weight:600; text-decoration:none; transition:var(--transition);}.view-all:hover,.view-all:focus-visible{color:var(--accent-light); gap:10px;}.events-section{padding:30px 0 40px;}.events-list{display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:18px; margin-top:34px; text-align:left;}.event-card{display:flex; align-items:flex-start; gap:16px; padding:22px 20px; background:var(--bg-card); border:1px solid var(--border-subtle); border-radius:var(--radius-card); box-shadow:var(--shadow-card),inset 0 1px 0 rgba(255,255,255,0.06); transition:var(--transition);}.event-card:hover{border-color:rgba(212,175,55,0.45); transform:translateY(-3px);}.event-chip{flex:0 0 auto; display:flex; flex-direction:column; align-items:center; justify-content:center; min-width:76px; padding:10px 8px; border:1px solid rgba(212,175,55,0.45); border-radius:var(--radius-sm); background:linear-gradient(145deg,rgba(212,175,55,0.14),rgba(212,175,55,0.04)); text-align:center;}.event-chip-top{font-size:0.6rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; color:var(--accent);}.event-chip-main{margin-top:3px; font-size:0.95rem; font-weight:800; color:var(--text-primary);}.event-info{min-width:0;}.event-name{margin-bottom:4px; font-size:1.08rem; font-weight:700; color:var(--text-primary);}.event-meta{margin-bottom:6px; font-size:0.9rem; color:var(--text-secondary);}.event-loc{display:inline-flex; align-items:center; gap:5px; min-height:32px; font-size:0.9rem; font-weight:600; color:var(--accent); text-decoration:none;}.event-loc:hover,.event-loc:focus-visible{color:var(--accent-light); text-decoration:underline;}.event-register{margin-top:12px; padding:9px 18px; font-size:0.85rem;}@media (max-width:640px){.event-card{flex-direction:column;}}.events-more{display:flex; justify-content:flex-end; margin-top:26px;}.events-placeholder-section{padding:20px 0 50px; text-align:center;}.events-placeholder-actions{display:flex; flex-wrap:wrap; justify-content:center; gap:14px; margin-top:30px;}.hero h1,.receipt-request-section>.section-title,.not-found-card h1{color:var(--text-primary); font-size:clamp(2.4rem,6vw,4.2rem); font-weight:700; letter-spacing:-0.02em; line-height:1.1; margin-bottom:20px;}.hero-ctas{display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-top:8px;}#donate-online,#bank-details{scroll-margin-top:96px;}.our-work-section{padding:40px 0 60px;}.bento-grid{display:grid; grid-template-columns:repeat(3,1fr); grid-auto-rows:220px; gap:18px; margin-top:40px;}.bento-item{position:relative; border-radius:var(--radius-card); overflow:hidden; border:1px solid var(--border-subtle); background-color:var(--bg-secondary); cursor:pointer; transition:var(--transition);}.bento-item.wide{grid-column:span 2; grid-row:span 2;}.bento-item.tall{grid-row:span 2;}.bento-item img{width:100%; height:100%; object-fit:cover; transition:transform 0.6s var(--ease);}.bento-item:hover{transform:translateY(-5px); box-shadow:var(--shadow-hover); border-color:rgba(212,175,55,0.4);}.bento-overlay{position:absolute; inset:0; background:linear-gradient(180deg,transparent 28%,rgba(0,0,0,0.94) 100%); display:flex; align-items:flex-end; padding:18px; opacity:0.94; transition:var(--transition);}.bento-item:hover .bento-overlay{opacity:1;}.bento-caption{color:#ffffff; font-size:1.05rem; font-weight:600; letter-spacing:0.2px; text-shadow:0 2px 8px rgba(0,0,0,0.8); transform:translateY(4px); transition:transform 0.3s var(--ease);}.bento-item:hover .bento-caption{transform:translateY(0);}.bento-carousel{position:relative; width:100%; height:100%; overflow:hidden;}.bento-carousel .bento-slide{position:absolute; top:0; left:0; width:100%; height:100%; display:block; opacity:0; z-index:1; border-radius:var(--radius-card); outline:3px solid transparent; outline-offset:-3px; transition:opacity 0.7s ease-in-out,outline-color 0.35s ease;}.bento-carousel .bento-slide.active{opacity:1; z-index:2;}.bento-carousel .bento-slide img{width:100%; height:100%; object-fit:cover;}.bento-carousel .bento-slide:hover{outline-color:var(--accent);}.bento-carousel-btn{position:absolute; top:50%; transform:translateY(-50%); z-index:5; width:42px; height:42px; display:flex; align-items:center; justify-content:center; border:1px solid rgba(212,175,55,0.55); border-radius:50%; background-color:rgba(10,10,12,0.45); color:#fffbef; font-size:1.15rem; line-height:1; cursor:pointer; transition:var(--transition); backdrop-filter:blur(3px);}.bento-carousel-btn:hover{background-color:var(--accent); color:#0a0a0c; border-color:var(--accent);}.bento-carousel-btn.prev{left:12px;}.bento-carousel-btn.next{right:12px;}@media (max-width:600px){.bento-carousel-btn{width:36px; height:36px; font-size:1rem;}}.works-carousel{position:relative; width:100%; max-width:1200px; height:clamp(300px,46vw,560px); margin:12px auto 6px; border-radius:var(--radius-card); border:1px solid var(--border-subtle); box-shadow:var(--shadow-card); overflow:hidden; background-color:var(--bg-deep);}.works-carousel .bento-caption{font-size:clamp(1.15rem,2.4vw,1.6rem); padding:20px 26px;}.works-carousel .bento-carousel-btn{width:48px; height:48px; font-size:1.4rem; opacity:0.9;}.impact-section{position:relative; width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:80px 24px; text-align:center; background:linear-gradient(rgba(10,10,12,0.92),rgba(10,10,12,0.96)),url('images/quran-impact.webp?v=2') no-repeat center center / cover; border-top:1px solid var(--border-subtle); border-bottom:1px solid var(--border-subtle);}.impact-content{max-width:1000px; margin:0 auto; position:relative; z-index:2;}.impact-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:20px;}.impact-card{background-color:rgba(22,22,26,0.7); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border:1px solid var(--border-subtle); border-radius:var(--radius-card); padding:44px 20px; display:flex; flex-direction:column; justify-content:center; align-items:center; transition:var(--transition);}.impact-card:hover{transform:translateY(-6px); border-color:rgba(212,175,55,0.45); box-shadow:var(--shadow-hover); background-color:rgba(29,29,34,0.8);}.stat-number-wrapper,.counter-year{font-size:clamp(2.8rem,5vw,3.8rem); font-weight:800; color:var(--accent); line-height:1; margin-bottom:14px; font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif; display:flex; align-items:center; justify-content:center; letter-spacing:-0.02em;}.gold-plus{color:var(--accent);}.stat-label{color:var(--text-secondary); font-size:1.02rem; font-weight:500; letter-spacing:0.3px; margin:0;}.about-hero{position:relative; width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:110px 24px; margin-top:-14px; margin-bottom:56px; text-align:center; background:linear-gradient(rgba(10,10,12,0.72),rgba(10,10,12,0.85) 70%,var(--bg-primary)),url('images/about-us.webp?v=2') no-repeat center center / cover; border-bottom:1px solid var(--border-subtle);}
.contact-hero h1,.resources-hero h1,.donationreceipt-hero h1,.about-content h1,.hero h1,.page-hero h1{font-size:clamp(2.4rem,6vw,4rem); font-weight:700; letter-spacing:-0.02em; margin-bottom:18px; color:var(--text-primary);}.contact-hero{position:relative; width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:130px 24px 110px; margin-top:-14px; margin-bottom:56px; text-align:center; background:linear-gradient(rgba(10,10,12,0.72),rgba(10,10,12,0.85) 70%,var(--bg-primary)),url('images/contacthero.webp?v=2') no-repeat center center / cover; border-bottom:1px solid var(--border-subtle);}
.resources-hero{position:relative; width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:130px 24px 110px; margin-top:-14px; margin-bottom:56px; text-align:center; background:linear-gradient(rgba(10,10,12,0.72),rgba(10,10,12,0.85) 70%,var(--bg-primary)),url('images/resourceshero.webp?v=2') no-repeat center center / cover; border-bottom:1px solid var(--border-subtle);}
.donationreceipt-hero{position:relative; width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:130px 24px 110px; margin-top:-14px; margin-bottom:56px; text-align:center; background:linear-gradient(rgba(10,10,12,0.72),rgba(10,10,12,0.85) 70%,var(--bg-primary)),url('images/donationreceipthero.webp?v=2') no-repeat center center / cover; border-bottom:1px solid var(--border-subtle);}.about-content{margin:0 auto; position:relative; z-index:2;}.about-content h1{font-size:clamp(2.4rem,6vw,4rem); font-weight:700; letter-spacing:-0.02em; margin-bottom:18px; text-shadow:0 4px 28px rgba(0,0,0,0.7);}.terms-hero,.privacy-hero{background:radial-gradient(ellipse 60% 90% at 50% 0%,rgba(212,175,55,0.09),transparent 62%),linear-gradient(180deg,var(--bg-secondary),var(--bg-primary)); margin-bottom:0;}.terms-hero::before,.privacy-hero::before{content:none;}.terms-hero-link{display:inline-flex; margin-top:4px;}.terms-layout{max-width:1040px; margin:0 auto; padding:60px 0 96px; text-align:left;}.terms-contents{border:1px solid var(--border-subtle); border-radius:var(--radius-card); background:linear-gradient(165deg,var(--bg-secondary),var(--bg-primary)); padding:26px 30px 20px; margin-bottom:18px; scroll-margin-top:108px; text-align:center;}.terms-contents h2{color:var(--text-primary); font-size:1.35rem; letter-spacing:-0.01em; margin-bottom:2px;}.terms-contents>p{color:var(--text-muted); font-size:0.9rem; margin-bottom:14px;}.terms-contents-list{list-style:none; columns:2; column-gap:44px; margin:0; padding:0; text-align:left; counter-reset:terms-item;}.terms-contents-list li{counter-increment:terms-item; position:relative; padding-left:30px; break-inside:avoid;}.terms-contents-list li::before{content:counter(terms-item,decimal-leading-zero); position:absolute; left:0; top:3px; color:var(--accent); font-size:0.68rem; font-weight:700; letter-spacing:0.05em;}.terms-contents-list a{display:block; padding:3px 0; color:var(--text-secondary); text-decoration:none; font-size:0.86rem; line-height:1.45; transition:color 0.2s var(--ease);}.terms-contents-list a:hover,.terms-contents-list a:focus-visible{color:var(--accent);}.terms-document{max-width:880px; margin:0 auto; text-align:left;}.terms-updated{display:inline-flex; align-items:center; gap:8px; padding:8px 18px; border:1px solid rgba(212,175,55,0.32); border-radius:var(--radius-pill); background:rgba(212,175,55,0.08); color:var(--accent-light); font-size:0.85rem; margin-bottom:26px;}.terms-intro,.terms-section{border:1px solid var(--border-subtle); border-radius:var(--radius-card); background:linear-gradient(165deg,var(--bg-secondary),var(--bg-primary)); padding:30px 32px; margin-bottom:18px; scroll-margin-top:108px; transition:border-color 0.3s var(--ease),box-shadow 0.3s var(--ease);}.terms-intro{border-color:rgba(212,175,55,0.38); background:linear-gradient(150deg,rgba(212,175,55,0.12),var(--bg-secondary) 58%); box-shadow:var(--shadow-card);}.terms-section:hover{border-color:rgba(212,175,55,0.32);}.terms-document h2{color:var(--text-primary); font-size:clamp(1.45rem,2.5vw,1.9rem); line-height:1.2; margin-bottom:18px;}.terms-document h3{color:var(--accent-light); font-size:1.05rem; margin:24px 0 8px;}.terms-document p{color:var(--text-secondary); font-size:0.98rem; line-height:1.8; margin-bottom:14px;}.terms-document p:last-child{margin-bottom:0;}.terms-document a{color:var(--accent-light); text-decoration:underline; text-decoration-color:rgba(212,175,55,0.5); text-underline-offset:3px;}.terms-document address{color:var(--text-secondary); font-style:normal; line-height:2;}.terms-document ul{margin:0 0 14px; padding:0; list-style:none;}.terms-document li{position:relative; padding-left:20px; color:var(--text-secondary); font-size:0.98rem; line-height:1.8; margin-bottom:10px;}.terms-document li::before{content:""; position:absolute; left:4px; top:0.85em; width:5px; height:5px; border-radius:50%; background:var(--accent);}.terms-document li:last-child{margin-bottom:0;}.terms-document li strong{color:var(--text-primary);}.legal-emphasis{color:var(--text-primary) !important; font-size:1rem !important;}.terms-section.is-highlighted{animation:termsHighlight 1.8s var(--ease) both;}@keyframes termsHighlight{0%,100%{border-color:var(--border-subtle); box-shadow:none;}18%,68%{border-color:rgba(212,175,55,0.65); box-shadow:0 0 0 4px rgba(212,175,55,0.12);}}.mission-text{background-color:var(--bg-secondary); border:1px solid var(--border-subtle); border-left:3px solid var(--accent); padding:28px 30px; border-radius:var(--radius-card); font-size:1.05rem; text-align:left; color:var(--text-primary); box-shadow:var(--shadow-card);}.mission-text h2{color:var(--accent); font-size:1.4rem; margin-bottom:12px;}.services-section{padding:80px 0 0;}.services-section .service-card{position:sticky; top:0; width:100%; max-width:none; min-height:100vh; margin:0; padding:clamp(32px,6vw,84px); border-radius:0; border-left:0; border-right:0; overflow:hidden; isolation:isolate;}.services-section .service-card::before{content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(10,10,12,0.92),rgba(10,10,12,0.48) 62%,rgba(10,10,12,0.14)); pointer-events:none;}.services-section .service-card + .service-card{margin-top:0;}.services-section .service-content,.services-section .service-image{position:relative; z-index:1;}.services-section .service-content{max-width:620px; width:min(100%,620px);}.services-section .service-content h3{font-size:clamp(2rem,5vw,4.2rem); line-height:1.05; margin-bottom:28px;}.services-section .service-content p{max-width:560px; font-size:clamp(1.05rem,1.8vw,1.35rem); line-height:1.75;}.services-section .service-image{position:absolute; inset:0; z-index:-2; max-width:none; width:100%; height:100%;}.services-section .carousel-container{height:100%; border-radius:0; border:0; box-shadow:none;}.services-section .service-card.reverse .service-content{margin-left:auto;}.reveal-word{color:var(--text-primary); opacity:0.2; transition:opacity 0.12s linear;}[data-theme="light"] .section-light.services-section .service-content h3,[data-theme="light"] .section-light.services-section .service-content p,[data-theme="light"] .section-light.services-section .reveal-word{color:#ffffff;}@media (prefers-reduced-motion:reduce){.reveal-word{opacity:1; transition:none;}}.values-section{width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:64px 24px 72px; background:linear-gradient(180deg,var(--bg-primary),var(--bg-secondary)); border-top:1px solid var(--border-subtle); border-bottom:1px solid var(--border-subtle);}.values-header{max-width:1180px; margin:0 auto 34px; text-align:center;}.values-header .section-title{color:var(--text-primary); font-size:clamp(1.8rem,4vw,2.6rem); font-weight:700; letter-spacing:-0.02em; margin-bottom:12px;}.values-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; max-width:1180px; margin:0 auto;}.value-card{position:relative; overflow:hidden; padding:30px 24px; background:linear-gradient(145deg,rgba(212,175,55,0.1),var(--bg-secondary) 48%); border:1px solid rgba(212,175,55,0.28); border-radius:var(--radius-card); text-align:center; box-shadow:var(--shadow-card),inset 0 1px 0 rgba(255,255,255,0.06); transition:var(--transition);}.value-card:hover{transform:translateY(-5px); border-color:rgba(212,175,55,0.55); box-shadow:var(--shadow-hover);}.value-graphic{width:96px; height:72px; margin:0 auto 20px; display:grid; place-items:center; color:var(--accent);}.value-graphic svg{width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round;}.value-card h3{color:var(--accent-light); font-size:1.18rem; margin-bottom:10px;}.value-card p{max-width:280px; margin:0 auto; color:var(--text-secondary); font-size:0.98rem; line-height:1.65;}.stripe-donation-section{display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:36px; padding:28px 24px; margin-bottom:28px; background:linear-gradient(145deg,rgba(212,175,55,0.12),var(--bg-secondary) 42%); border:1px solid rgba(212,175,55,0.45); border-radius:var(--radius-card); box-shadow:var(--shadow-card);}.stripe-donation-section>stripe-buy-button{flex:1 1 220px; max-width:320px;}.stripe-donation-title{width:100%; color:var(--accent); font-size:2.7rem; margin-bottom:10px; text-align:center;}.stripe-donation-section .gold-divider{margin-bottom:24px;}.stripe-donation-buttons{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:center; gap:36px;}.stripe-donation-buttons stripe-buy-button{display:flex; justify-content:center; min-width:0; padding:12px; border:1px solid rgba(212,175,55,0.2); border-radius:var(--radius-sm); background-color:rgba(10,10,12,0.3);}.service-card,.resource-card{display:flex; flex-direction:row; align-items:center; justify-content:space-between; gap:40px; background-color:var(--bg-secondary); border:1px solid var(--border-subtle); border-radius:var(--radius-card); padding:34px; margin:30px 0; text-align:left; box-shadow:var(--shadow-card); transition:var(--transition);}.service-card:hover,.resource-card:hover{transform:translateY(-5px); border-color:rgba(212,175,55,0.4); box-shadow:var(--shadow-hover);}.service-card.reverse,.resource-card.reverse{flex-direction:row-reverse;}.service-content,.resource-content{flex:1; min-width:0;}.service-content h3,.resource-content h2{color:var(--text-primary); font-size:1.6rem; margin-bottom:14px; letter-spacing:-0.01em;}.service-content p,.resource-content p{color:var(--text-secondary); font-size:1rem; line-height:1.7; margin-bottom:14px;}.service-image{flex:1; width:100%; max-width:480px;}.carousel-container{position:relative; width:100%; height:260px; border-radius:14px; overflow:hidden; border:1px solid var(--border-subtle); background-color:var(--bg-deep); box-shadow:var(--shadow-card);}.carousel-container .slide{position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity 0.8s ease-in-out;}.carousel-container .slide.active{opacity:1;}.transparency-section{padding:40px 0 60px; width:100%;}.transparency-header{text-align:center; margin-bottom:34px;}.transparency-intro{color:var(--text-secondary); font-size:1.05rem; max-width:820px; margin:0 auto; line-height:1.7;}.transparency-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:22px; margin-bottom:34px;}.transparency-card{background-color:var(--bg-secondary); border:1px solid var(--border-subtle); border-radius:var(--radius-card); padding:30px 26px; text-align:left; display:flex; flex-direction:column; justify-content:flex-start; box-shadow:var(--shadow-card); transition:var(--transition);}.transparency-card:hover{transform:translateY(-5px); border-color:rgba(212,175,55,0.4); box-shadow:var(--shadow-hover);}.card-icon{width:52px; height:52px; background-color:rgba(212,175,55,0.12); border:1px solid rgba(212,175,55,0.3); border-radius:14px; display:flex; align-items:center; justify-content:center; font-size:1.4rem; color:var(--accent); margin-bottom:16px;}.transparency-card h3{color:var(--text-primary); font-size:1.15rem; margin-bottom:10px; line-height:1.35;}.transparency-card p{color:var(--text-secondary); font-size:0.95rem; line-height:1.7; margin-bottom:16px;}.transparency-link{color:var(--accent-light); text-decoration:none; font-weight:600; font-size:0.9rem; margin-top:auto; transition:color 0.2s var(--ease);}.transparency-link:hover{color:var(--accent);}.governance-box{background:linear-gradient(135deg,rgba(212,175,55,0.08),var(--bg-secondary) 60%); border:1px solid var(--border-strong); border-left:3px solid var(--accent); border-radius:var(--radius-card); padding:28px 30px; text-align:left; box-shadow:var(--shadow-card);}.governance-content h4{color:var(--accent); font-size:1.25rem; margin-bottom:10px;}.governance-content p{color:var(--text-secondary); font-size:0.98rem; line-height:1.7; margin-bottom:18px;}.receipt-btn{display:inline-flex; align-items:center; gap:8px; color:var(--on-accent); background-color:var(--accent); border:1px solid var(--accent); padding:11px 26px; border-radius:var(--radius-pill); font-weight:700; font-size:0.9rem; text-decoration:none; transition:var(--transition);}.receipt-btn:hover{background-color:var(--accent-hover); border-color:var(--accent-hover); transform:translateY(-2px); box-shadow:0 12px 28px rgba(212,175,55,0.28);}.hero{padding:40px 0 10px;}.hero h1{color:var(--text-primary); font-size:clamp(2.4rem,6vw,4.2rem); font-weight:700; letter-spacing:-0.02em; line-height:1.1; margin-bottom:20px;}.contact-boxes-row{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin:44px 0;}.contact-box{background-color:var(--bg-secondary); border:1px solid var(--border-subtle); border-radius:var(--radius-card); padding:36px 24px; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:space-between; gap:18px; box-shadow:var(--shadow-card); transition:var(--transition);}.contact-box:hover{transform:translateY(-6px); border-color:rgba(212,175,55,0.4); box-shadow:var(--shadow-hover);}.contact-box h3{color:var(--text-primary); font-size:1.2rem;}.contact-box p{color:var(--text-secondary); font-size:0.98rem; line-height:1.6;}.icon-wrapper{display:none;}.contact-boxes-row{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:28px auto 0; max-width:900px;}.contact-box{background-color:rgba(17,17,21,0.42); border:1px solid rgba(255,255,255,0.06); border-radius:14px; padding:24px 20px; text-align:left; display:flex; flex-direction:column; justify-content:flex-start; gap:10px; box-shadow:none;}.contact-box:hover{transform:none; border-color:rgba(212,175,55,0.22); box-shadow:none;}.contact-box h3{font-size:1rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; color:var(--accent-light); margin:0;}.contact-box p{color:var(--text-secondary); font-size:1.08rem; line-height:1.65; margin:0;}.copy-row{display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:nowrap; margin-top:4px;}.copy-number{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace; font-size:clamp(1.05rem,2vw,1.3rem); line-height:1.45; letter-spacing:0.06em; color:var(--accent-light); word-break:break-all; font-weight:800; flex:1; text-align:center;}.copy-btn{display:inline-flex; align-items:center; justify-content:center; padding:6px 10px; border-radius:999px; border:1px solid rgba(212,175,55,0.35); background:rgba(212,175,55,0.04); color:var(--accent-light); cursor:pointer; font-size:0.76rem; font-weight:700; text-transform:uppercase; letter-spacing:0.08em; transition:var(--transition); flex-shrink:0;}.copy-btn:hover{background-color:rgba(212,175,55,0.12); color:var(--accent-light); border-color:rgba(212,175,55,0.5);}.funding-section{padding:72px 24px 84px; background:var(--bg-primary); border-top:1px solid rgba(212,175,55,0.22);}.funding-stack{max-width:680px; margin:34px auto 0; display:flex; flex-direction:column; gap:34px; padding-bottom:24vh;}.funding-card{position:sticky; top:96px; background:var(--bg-secondary); border:1px solid var(--border-subtle); border-radius:var(--radius-card); box-shadow:var(--shadow-card),inset 0 1px 0 rgba(255,255,255,0.06); overflow:hidden; will-change:transform;}.funding-card img{display:block; width:100%; height:auto; aspect-ratio:3 / 2; object-fit:cover;}.funding-card p{margin:0; padding:18px 22px; font-size:clamp(1rem,2vw,1.15rem); font-weight:600; color:var(--text-primary); letter-spacing:0.2px; line-height:1.55;}@media (max-width:600px){.funding-card{top:84px;}}@media (prefers-reduced-motion:reduce){.funding-stack{padding-bottom:0;}.funding-card{position:static;}}.receipt-link-box{max-width:900px; margin:0 auto; padding:20px 22px; border:1px solid rgba(212,175,55,0.55); border-left:4px solid var(--accent); border-radius:var(--radius-card); background:var(--bg-secondary); box-shadow:0 16px 36px rgba(0,0,0,0.38); text-align:left;}.receipt-section{width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:68px 24px 72px; background:linear-gradient(145deg,rgba(212,175,55,0.14),var(--bg-secondary) 48%,var(--bg-primary)); border-top:1px solid rgba(212,175,55,0.38); border-bottom:1px solid rgba(212,175,55,0.38);}.receipt-section .section-title{color:var(--text-primary); font-size:clamp(1.8rem,4vw,2.6rem); font-weight:700; letter-spacing:-0.02em; margin-bottom:12px;}.receipt-section .gold-divider{margin-bottom:24px;}.receipt-link-box p{margin:0; color:var(--text-secondary); font-size:0.98rem; line-height:1.7; font-weight:600;}.receipt-link-box strong{color:var(--text-primary); font-weight:800;}.receipt-link-box a{display:inline-flex; align-items:center; justify-content:center; margin-top:10px; padding:10px 18px; border-radius:var(--radius-pill); background-color:var(--accent); color:var(--on-accent); font-weight:800; text-decoration:none; transition:var(--transition);}.receipt-link-box a:hover{background-color:var(--accent-hover); text-decoration:none; transform:translateY(-2px);}.map-container{width:100%; height:420px; border:1px solid var(--border-subtle); border-radius:var(--radius-card); overflow:hidden; box-shadow:var(--shadow-card); margin-bottom:24px;}.resource-image-container{flex:0 0 240px; max-width:240px; height:240px; background-color:var(--bg-deep); border-radius:14px; border:1px solid var(--border-subtle); display:flex; align-items:center; justify-content:center; overflow:hidden;}.resource-image-container img{width:100%; height:100%; object-fit:cover; transition:transform 0.5s var(--ease);}.resource-card:hover .resource-image-container img{transform:scale(1.04);}.img-placeholder-text{color:var(--text-muted); font-size:0.85rem; text-align:center; padding:15px;}.pdf-section{background-color:var(--bg-secondary); border:1px solid var(--border-subtle); border-radius:var(--radius-card); padding:36px 32px; margin:44px 0; text-align:left; box-shadow:var(--shadow-card); transition:var(--transition);}.pdf-section:hover{border-color:rgba(212,175,55,0.4); box-shadow:var(--shadow-hover);}.pdf-section h2{color:var(--text-primary); font-size:1.5rem; margin-bottom:14px;}.pdf-section p{color:var(--text-secondary); font-size:0.98rem; line-height:1.7; margin-bottom:14px;}.pdf-embed-container{width:100%; height:600px; border:1px solid var(--border-subtle); border-radius:14px; margin-top:24px; overflow:hidden; background-color:var(--bg-deep);}.pdf-embed-container iframe{width:100%; height:100%; border:none;}.receipt-request-section{padding:30px 0 60px; width:100%;}.receipt-layout{display:grid; grid-template-columns:1fr 1.3fr; gap:28px; margin-top:34px; text-align:left;}.receipt-info-card{background-color:var(--bg-secondary); border:1px solid var(--border-subtle); border-left:3px solid var(--accent); border-radius:var(--radius-card); padding:34px 28px; height:fit-content; box-shadow:var(--shadow-card);}.section-light .receipt-info-card{background:linear-gradient(145deg,rgba(212,175,55,0.2),var(--bg-card) 42%,rgba(10,10,12,0.92)); border:1px solid rgba(212,175,55,0.5); border-left:5px solid var(--accent); box-shadow:0 18px 42px rgba(0,0,0,0.45),0 0 28px rgba(212,175,55,0.1); position:relative; overflow:hidden;}.section-light .receipt-info-card::before{content:""; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--accent),var(--accent-light),transparent);}.receipt-info-card h2{color:var(--text-primary); font-size:1.45rem; margin-bottom:14px;}.section-light .receipt-info-card h2{color:var(--accent-light);}.receipt-lead{color:var(--text-secondary); font-size:1.02rem; line-height:1.7; margin-bottom:24px;}.info-bullet-list{display:flex; flex-direction:column; gap:20px;}.bullet-item{display:flex; gap:14px; align-items:flex-start;}.bullet-icon{font-size:1.5rem; line-height:1;}.bullet-item strong{color:var(--text-primary); display:block; margin-bottom:3px; font-size:1rem;}.bullet-item p{color:var(--text-muted); font-size:0.9rem; line-height:1.6; margin:0;}.receipt-form-card{background-color:var(--bg-secondary); border:1px solid var(--border-subtle); border-radius:var(--radius-card); padding:20px; overflow:hidden; box-shadow:var(--shadow-card);}.receipt-form-card iframe{display:block; width:100%; border:none;}footer{background-color:var(--bg-footer); border-top:1px solid var(--border-subtle); text-align:center; padding:26px 20px; font-size:0.88rem; color:var(--text-muted); margin-top:auto; width:100%; line-height:1.8;}footer a{color:var(--accent-light); text-decoration:none; transition:color 0.2s var(--ease);}footer a:hover{color:var(--accent); text-decoration:underline;}.footer-quick-links{display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px 18px; margin-top:14px; padding-top:14px; border-top:1px solid var(--border-subtle); font-size:0.82rem;}.footer-quick-links strong{color:var(--accent); font-size:0.72rem; letter-spacing:0.12em;}.footer-quick-links a{color:var(--text-secondary); font-weight:600;}.footer-quick-links a:hover{color:var(--accent);}.footer-bottom{display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:8px 24px;}.footer-bottom .footer-copy{grid-column:2; margin:0; text-align:center;}.footer-legal{grid-column:3; justify-self:end; display:inline-flex; align-items:center; gap:12px; font-weight:600;}.footer-legal-sep{color:var(--text-muted); opacity:0.55;}.preloader{position:fixed; inset:0; z-index:9999; background-color:var(--bg-primary); display:flex; align-items:center; justify-content:center; flex-direction:column; transition:opacity 0.2s ease,visibility 0.2s ease;}.preloader-hidden{opacity:0; visibility:hidden; pointer-events:none;}.preloader-inner{display:flex; flex-direction:column; align-items:center; gap:26px;}.bismillah{font-family:'Amiri','Traditional Arabic','Noto Naskh Arabic',serif; font-size:clamp(1.6rem,4vw,2.4rem); font-weight:400; color:var(--accent); text-align:center; direction:rtl; line-height:1.6; text-shadow:0 2px 18px rgba(212,175,55,0.25); animation:bismillahPulse 2.4s ease-in-out infinite;}.preloader-bar{width:240px; height:1px; background-color:rgba(255,255,255,0.12); border-radius:2px; overflow:hidden;}.preloader-bar span{display:block; height:100%; width:0; background:linear-gradient(90deg,var(--accent-hover),var(--accent),var(--accent-light)); border-radius:2px; animation:loadBar 4.5s ease forwards;}@keyframes loadBar{from{width:0;}to{width:100%;}}@keyframes bismillahPulse{0%,100%{opacity:0.85;}50%{opacity:1;}}@keyframes themeLoadingSpin{to{transform:rotate(360deg);}}@keyframes fadeUp{from{opacity:0; transform:translateY(24px);}to{opacity:1; transform:translateY(0);}}@media screen and (max-width:900px){.receipt-layout{grid-template-columns:1fr;}.bento-grid{grid-template-columns:repeat(2,1fr);}}@media screen and (max-width:768px){body{padding-top:84px;}.brand-name{display:none;}.navbar{flex-direction:row; gap:10px; padding:14px 20px; min-height:80px;}.logo-container{flex:1; min-width:0;}.navbar nav{position:static; margin-left:auto; margin-right:0;}.nav-links{gap:0; flex-wrap:nowrap; justify-content:flex-end;}.nav-links li:not(.nav-donate){display:none;}.nav-links a{font-size:0.88rem;}.nav-links .nav-donate{margin-left:0;}.nav-links .nav-donate-link{padding:10px 14px;}.menu-toggle{display:inline-flex; order:3; flex:0 0 42px; width:42px; height:42px; align-items:center; justify-content:center; flex-direction:column; gap:4px; padding:0; border:1px solid rgba(212,175,55,0.45); border-radius:var(--radius-sm); background:rgba(212,175,55,0.1); cursor:pointer;}.menu-toggle span{display:block; width:18px; height:3px; border-radius:2px; background-color:var(--accent);}.theme-toggle{order:2;}.navbar.menu-open nav{position:fixed; top:0; right:0; z-index:201; width:min(76vw,300px); height:100vh; padding:0; background:linear-gradient(145deg,var(--bg-secondary),var(--bg-primary)); border-left:1px solid rgba(212,175,55,0.4); box-shadow:-18px 0 40px rgba(0,0,0,0.5);}.navbar.menu-open .menu-backdrop{display:block; position:fixed; inset:0; z-index:200; width:100%; height:100%; padding:0; border:0; background:rgba(0,0,0,0.62); cursor:pointer;}.navbar.menu-open .nav-links{display:flex; flex-direction:column; align-items:stretch; gap:4px; height:auto; padding:52px 18px 24px;}.navbar.menu-open .nav-links li,.navbar.menu-open .nav-links li:not(.nav-donate){display:flex;}.navbar.menu-open .nav-links a{display:block; width:auto; padding:11px 12px; border-bottom:1px solid var(--border-subtle); font-size:1rem;}.navbar.menu-open .nav-links .nav-donate{margin-top:0;}.navbar.menu-open .nav-links .nav-donate-link{width:fit-content;}.menu-close{display:none; position:absolute; top:18px; right:20px; z-index:2; width:40px; height:40px; align-items:center; justify-content:center; padding:0; border:1px solid rgba(212,175,55,0.4); border-radius:var(--radius-sm); background:rgba(212,175,55,0.1); color:var(--accent-light); font-size:1.8rem; line-height:1; cursor:pointer;}.navbar.menu-open .menu-close{display:inline-flex;}.mobile-menu-open{overflow:hidden;}.impact-grid,.contact-boxes-row,.stripe-donation-buttons{grid-template-columns:1fr; gap:18px;}.terms-layout{padding:42px 0 68px;}.terms-contents{padding:22px 20px 16px;}.terms-contents-list{column-gap:28px;}.terms-intro,.terms-section{padding:24px 20px;}.terms-document p{font-size:0.95rem;}.stripe-donation-section{flex-direction:column;}.stripe-donation-section>stripe-buy-button{width:100%;}.transparency-grid{grid-template-columns:1fr;}.values-section{padding:48px 18px 56px;}.values-grid{grid-template-columns:1fr; gap:16px;}.value-card{padding:26px 20px;}.bento-grid{grid-template-columns:1fr;}.bento-item.wide,.bento-item.tall{grid-column:span 1; grid-row:span 1;}.service-card,.service-card.reverse,.resource-card,.resource-card.reverse{flex-direction:column; text-align:center; gap:20px; padding:26px;}.services-section{padding:64px 0 0;}.services-section .service-card,.services-section .service-card.reverse{top:0; min-height:100vh; padding:34px 24px; gap:28px;}.services-section .service-card.reverse .service-content{margin-left:0;}.services-section .service-card::before{background:linear-gradient(180deg,rgba(10,10,12,0.92),rgba(10,10,12,0.48));}.services-section .carousel-container{height:100%; min-height:0;}.service-image{max-width:100%;}.resource-image-container{flex:none; width:100%; max-width:220px; height:200px;}.btn-group{justify-content:center;}.map-container{height:320px;}.pdf-embed-container{height:450px;}.stat-number-wrapper,.counter-year{font-size:2.8rem;}.welcome-hero,.about-hero{padding:90px 20px 80px;}.terms-hero,.privacy-hero{padding:90px 20px 80px;}}@media screen and (max-width:480px){.container{padding:0 18px;}.hero-ctas .btn{width:100%;}.terms-contents-list{columns:1;}.footer-bottom{display:flex; flex-direction:column; align-items:center; row-gap:4px;}}.accent-text{color:var(--accent);}.u-hidden{display:none !important;}.btn-group--start{justify-content:flex-start;}.cta-flush{margin-top:28px;}.map-container iframe{border:0;}@keyframes qaycPreloaderAway{to{opacity:0; visibility:hidden;}}.preloader{animation:qaycPreloaderAway 0.4s ease 1.6s forwards;}
[data-theme="light"] .contact-hero{background-image:linear-gradient(rgba(229,224,214,0.48),rgba(229,224,214,0.78) 70%,var(--bg-primary)),url('images/contacthero.webp?v=2');}[data-theme="light"] .resources-hero{background-image:linear-gradient(rgba(229,224,214,0.48),rgba(229,224,214,0.78) 70%,var(--bg-primary)),url('images/resourceshero.webp?v=2');}[data-theme="light"] .donationreceipt-hero{background-image:linear-gradient(rgba(229,224,214,0.48),rgba(229,224,214,0.78) 70%,var(--bg-primary)),url('images/donationreceipthero.webp?v=2');}[data-theme="light"] .donationpage-hero{background-image:linear-gradient(rgba(229,224,214,0.48),rgba(229,224,214,0.78) 70%,var(--bg-primary)),url('images/donationpagehero.webp?v=2');}

/* ==========================================
   PAST EVENTS / RECAP GALLERY
   ========================================== */
.events-list--recaps{grid-template-columns:repeat(3,1fr); gap:20px;}
.event-card--recap{flex-direction:column; align-items:stretch; gap:0; padding:14px;}
.event-photo{position:relative; display:block; width:100%; aspect-ratio:1/1; overflow:hidden; border-radius:calc(var(--radius-card) - 4px); background:var(--bg-deep); text-decoration:none;}
.event-photo img{width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.5s var(--ease);}
.event-photo:hover img,.event-photo:focus-visible img{transform:scale(1.04);}
.event-photo-overlay{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; gap:8px; padding:16px; text-align:center; color:#fff; background:linear-gradient(180deg,rgba(10,10,12,0.1),rgba(10,10,12,0.72) 55%); opacity:0; transition:opacity 0.3s var(--ease);}
.event-photo:hover .event-photo-overlay,.event-photo:focus-visible .event-photo-overlay{opacity:1;}
.event-photo-count{display:inline-flex; align-items:center; gap:9px; font-size:0.95rem; font-weight:700; letter-spacing:0.02em;}
.gallery-icon{flex:none; width:20px; height:20px;}
.event-photo-fallback{display:none; position:absolute; inset:0; align-items:center; justify-content:center; padding:18px; text-align:center; color:var(--text-secondary); font-size:0.9rem; font-weight:600;}
.event-photo--empty .event-photo-fallback{display:flex;}
.event-recap-body{padding:16px 6px 8px; text-align:left;}
.event-recap-body .event-name{margin-bottom:4px;}
.event-recap-body .event-meta{margin-bottom:8px;}
.event-recap-body .event-meta{display:flex; align-items:flex-start; gap:7px;}
.event-meta-icon{flex:none; width:16px; height:16px; margin-top:2px; color:var(--accent);}
.event-desc{margin:0 0 12px; font-size:0.92rem; color:var(--text-secondary);}
.event-recap-actions{display:flex;}
.gallery-open{display:inline-flex; align-items:center; gap:6px; min-height:32px; padding:4px 0; color:var(--accent); font-size:0.9rem; font-weight:600; text-decoration:none; transition:var(--transition);}
.gallery-open:hover,.gallery-open:focus-visible{color:var(--accent-light);}
.gallery-open .arr{transition:transform 0.25s var(--ease);}
.gallery-open:hover .arr{transform:translateX(4px);}

/* Gallery lightbox */
.gallery-modal{position:fixed; inset:0; z-index:9000; display:none; align-items:center; justify-content:center; padding:20px;}
.gallery-modal.is-open{display:flex;}
.gallery-modal-backdrop{position:absolute; inset:0; background:rgba(5,5,7,0.9); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);}
.gallery-modal-inner{position:relative; z-index:1; display:flex; flex-direction:column; width:min(1120px,100%); max-height:calc(100vh - 40px); background:var(--bg-secondary); border:1px solid var(--border-strong); border-radius:var(--radius-card); box-shadow:var(--shadow-hover); overflow:hidden;}
.gallery-modal-header{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 18px; border-bottom:1px solid var(--border-subtle);}
.gallery-modal-title{margin:0; font-size:1.05rem; font-weight:700; color:var(--text-primary);}
.gallery-modal-close{flex:none; display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; padding:0; border:1px solid var(--border-strong); border-radius:var(--radius-sm); background:transparent; color:var(--text-primary); font-size:1.05rem; cursor:pointer; transition:var(--transition);}
.gallery-modal-close:hover{background:var(--accent); border-color:var(--accent); color:var(--on-accent);}
.gallery-modal-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:8px; padding:16px 18px 20px; overflow-y:auto; min-height:0;}
.gallery-modal-grid[hidden]{display:none;}
.gallery-thumb{position:relative; aspect-ratio:1/1; padding:0; border:0; border-radius:10px; overflow:hidden; cursor:pointer; background:var(--bg-deep); transition:transform 0.25s var(--ease);}
.gallery-thumb img{width:100%; height:100%; object-fit:cover; display:block;}
.gallery-thumb:hover,.gallery-thumb:focus-visible{transform:scale(1.04); outline:2px solid var(--accent); outline-offset:2px;}
.gallery-empty{padding:56px 18px; text-align:center; color:var(--text-secondary);}
.gallery-viewer{position:relative; display:flex; align-items:center; justify-content:center; min-height:320px; padding:18px; background:var(--bg-deep);}
.gallery-viewer[hidden]{display:none;}
.gallery-viewer-figure{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; max-width:100%; width:100%; height:100%; margin:0;}
.gallery-viewer-figure img{max-width:100%; max-height:calc(100vh - 220px); object-fit:contain; border-radius:10px;}
.gallery-viewer-counter{font-size:0.85rem; color:var(--text-secondary);}
.gallery-nav{position:absolute; top:50%; z-index:2; transform:translateY(-50%); display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:1px solid var(--border-strong); border-radius:50%; background:rgba(10,10,12,0.55); color:var(--text-primary); font-size:1.6rem; line-height:1; cursor:pointer; transition:var(--transition);}
.gallery-nav:hover:not(:disabled){background:var(--accent); border-color:var(--accent); color:var(--on-accent);}
.gallery-nav:disabled{opacity:0.4; cursor:default;}
.gallery-nav-prev{left:10px;}
.gallery-nav-next{right:10px;}
.gallery-viewer-grid{position:absolute; top:12px; right:12px; z-index:2; display:inline-flex; align-items:center; gap:6px; padding:8px 14px; border:1px solid var(--border-strong); border-radius:var(--radius-pill); background:rgba(10,10,12,0.55); color:var(--text-primary); font-size:0.85rem; font-weight:600; cursor:pointer; transition:var(--transition);}
.gallery-viewer-grid:hover{background:var(--accent); border-color:var(--accent); color:var(--on-accent);}
body.modal-open{overflow:hidden;}
@media (prefers-reduced-motion: reduce){.event-photo img,.gallery-thumb img{transition:none;}.gallery-open .arr{transition:none;}}
@media screen and (max-width:900px){.events-list--recaps{grid-template-columns:repeat(2,1fr);}}
@media screen and (max-width:480px){.events-list--recaps{grid-template-columns:1fr;}}

/* ==========================================
   CONTACT FORM + MAP LAYOUT
   ========================================== */
.contact-layout-section{max-width:1180px; margin:48px auto 56px; padding:0 24px; display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:start;}
.contact-map-box{background-color:var(--bg-secondary); border:1px solid rgba(212,175,55,0.4); border-radius:var(--radius-card); padding:32px; box-shadow:var(--shadow-card);}
.contact-map-box .map-box-title{color:var(--text-primary); font-size:clamp(1.2rem,2.5vw,1.5rem); font-weight:700; margin-bottom:12px;}
.contact-map-box .map-container{width:100%; height:320px; margin:0; border-radius:var(--radius-sm);}
.contact-form-card{background-color:var(--bg-secondary); border:1px solid var(--border-subtle); border-radius:var(--radius-card); padding:36px 32px; box-shadow:var(--shadow-card);}
.contact-form-card .form-heading{color:var(--text-primary); font-size:clamp(1.4rem,3vw,1.8rem); font-weight:700; margin-bottom:4px;}
.contact-form-card .form-subtext{color:var(--text-muted); font-size:0.88rem; margin-bottom:24px;}
.contact-form-card .form-group{margin-bottom:18px;}
.contact-form-card label{display:block; color:var(--text-secondary); font-size:0.92rem; font-weight:600; margin-bottom:6px;}
.contact-form-card input[type="text"],.contact-form-card input[type="email"],.contact-form-card textarea{width:100%; padding:12px 16px; background-color:var(--bg-tertiary); border:1px solid var(--border-subtle); border-radius:var(--radius-sm); color:var(--text-primary); font-size:1rem; font-family:inherit; transition:border-color 0.2s var(--ease);}
.contact-form-card input:focus,.contact-form-card textarea:focus{outline:none; border-color:var(--accent);}
.contact-form-card textarea{min-height:140px; resize:vertical;}
.contact-form-card .submit-btn{display:inline-flex; align-items:center; justify-content:center; width:100%; padding:14px 24px; background-color:var(--accent); color:var(--on-accent); border:none; border-radius:var(--radius-pill); font-size:1rem; font-weight:700; cursor:pointer; transition:var(--transition);}
.contact-form-card .submit-btn:hover:not(:disabled){background-color:var(--accent-hover); transform:translateY(-2px); box-shadow:0 12px 28px rgba(212,175,55,0.28);}
.contact-form-card .submit-btn:disabled{opacity:0.7; cursor:not-allowed;}
.contact-form-card .form-success{display:none; text-align:center; padding:32px 24px;}
.contact-form-card .form-success.is-visible{display:block;}
.contact-form-card .form-success-icon{font-size:2.4rem; margin-bottom:12px;}
.contact-form-card .form-success-text{color:var(--text-primary); font-size:1.05rem; line-height:1.6;}
@media screen and (max-width:768px){.contact-layout-section{grid-template-columns:1fr; gap:24px;}.contact-map-box .map-container{height:260px;}}

.hero-badge,.charity-badge{display:none;}.welcome-hero .hero-content{animation:fadeUp 0.8s var(--ease) both;}@keyframes fadeUp{from{opacity:0; transform:translateY(24px);}to{opacity:1; transform:translateY(0);}}.events-about-hero{position:relative; width:100vw; margin-left:calc(-50vw + 50%); margin-right:calc(-50vw + 50%); padding:130px 24px 110px; margin-top:-14px; margin-bottom:56px; text-align:center; background:linear-gradient(rgba(10,10,12,0.72),rgba(10,10,12,0.85) 70%,var(--bg-primary)),url('images/eventshero.webp?v=2') no-repeat center center / cover; border-bottom:1px solid var(--border-subtle);}[data-theme="light"] .events-about-hero{background-image:linear-gradient(rgba(229,224,214,0.48),rgba(229,224,214,0.78) 70%,var(--bg-primary)),url('images/eventshero.webp?v=2');}.hero-content{position:relative; z-index:2;}.event-detail-hero{background:linear-gradient(rgba(10,10,12,0.72),rgba(10,10,12,0.85) 70%,var(--bg-primary)),url('images/eventshero.webp?v=2') no-repeat center center / cover;}[data-theme="light"] .event-detail-hero{background-image:linear-gradient(rgba(229,224,214,0.48),rgba(229,224,214,0.78) 70%,var(--bg-primary)),url('images/eventshero.webp?v=2');}.event-back{position:absolute; top:22px; left:22px; z-index:2; display:inline-flex; align-items:center; gap:6px; padding:7px 14px; border:1px solid var(--border-strong); border-radius:var(--radius-pill); background:rgba(10,10,12,0.55); color:var(--text-primary); font-size:0.88rem; font-weight:600; text-decoration:none; -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); transition:var(--transition);}.event-back:hover,.event-back:focus-visible{background:var(--accent); border-color:var(--accent); color:var(--on-accent);}.event-hero-meta{display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px 22px; margin:0 0 22px; color:var(--text-secondary);}.event-hero-meta span{display:inline-flex; align-items:center; gap:7px; font-size:0.95rem; font-weight:600;}.event-hero-meta svg{flex:none; width:17px; height:17px; color:var(--accent);}.event-hero-desc{max-width:680px; margin:0 auto; color:var(--text-secondary); font-size:clamp(1rem,2vw,1.15rem); line-height:1.65;}

.progress-section{padding:20px 24px 60px; text-align:center; scroll-margin-top:108px; margin-bottom:48px;}
.progress-bar-container{width:100%; max-width:900px; margin:0 auto;}
.progress-goal{font-size:1.6rem; font-weight:700; color:var(--accent); margin-bottom:24px;}
.progress-track{position:relative; width:100%; height:70px; background:var(--bg-deep); border:2px solid var(--border-strong); border-radius:35px; overflow:hidden; box-shadow:inset 0 2px 8px rgba(0,0,0,0.4);}
.progress-fill{height:100%; position:absolute; left:0; top:0; transition:width 1s var(--ease);}
.progress-fill.pledged{background:linear-gradient(90deg,#c9a227,#d4af37); z-index:1; border-radius:35px 0 0 35px; overflow:hidden; display:flex; align-items:center; justify-content:center;}
.progress-fill.raised{background:linear-gradient(90deg,#4a3c0a,#6b5a0f); z-index:2; border-radius:35px 0 0 35px;}
.callout{margin-top:28px; display:inline-flex; flex-direction:column; align-items:center; padding:12px 24px; background:var(--bg-card); border:1px solid var(--border-strong); border-radius:12px; box-shadow:0 4px 12px rgba(0,0,0,0.25); vertical-align:top; border-left:6px solid #6b5a0f;}
.callout.raised-callout{margin-right:40px; border-left-color:#6b5a0f;}
.callout.pledged-callout{margin-left:40px; border-left-color:#c9a227;}
.callout-amount{font-size:1.3rem; font-weight:700; color:var(--text-primary); white-space:nowrap;}
.callout-label{font-size:0.8rem; color:var(--text-secondary); margin-top:4px; text-transform:uppercase; letter-spacing:0.5px;}
.progress-legend{display:none;}
.progress-flags{position:relative; height:46px; margin-bottom:8px;}
.progress-flag{position:absolute; bottom:0; height:42px; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; pointer-events:none;}
.progress-flag-label{font-size:0.85rem; font-weight:800; letter-spacing:0.03em; color:var(--text-primary); white-space:nowrap; padding:3px 12px; border:1px solid var(--border-subtle); border-radius:var(--radius-pill); background:var(--bg-section); box-shadow:0 2px 8px rgba(0,0,0,0.18);}
.progress-flag::after{content:""; flex:1 1 0; min-height:8px; width:2px; border-radius:2px; background:var(--border-strong);}
.progress-flag-raised .progress-flag-label{transform:translateX(-30%);}
.progress-flag-pledged .progress-flag-label{transform:translateX(30%);}
.progress-flag-pct{color:var(--accent);}
.progress-center-pct{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); z-index:3; padding:7px 20px; border-radius:var(--radius-pill); background:rgba(8,8,10,0.62); -webkit-backdrop-filter:blur(4px); backdrop-filter:blur(4px); border:1px solid rgba(255,255,255,0.22); color:#f5f5f7; font-weight:800; font-size:1.02rem; letter-spacing:0.03em; white-space:nowrap; pointer-events:none; box-shadow:0 2px 10px rgba(0,0,0,0.35);}
.callout-mini-row{display:flex; align-items:center; gap:10px; width:100%; margin-top:12px;}
.callout-mini-bar{flex:1; height:8px; border-radius:999px; background:var(--grey-track); overflow:hidden;}
.callout-mini-fill{display:block; height:100%; width:0%; border-radius:999px; transition:width 1s var(--ease);}
.callout-mini-raised{background:linear-gradient(90deg,#4a3c0a,#6b5a0f);}
.callout-mini-pledged{background:linear-gradient(90deg,#c9a227,#d4af37);}
.callout-mini-pct{font-size:0.92rem; font-weight:800; color:var(--accent); min-width:40px; text-align:right;}
.progress-swatch{width:14px; height:14px; border-radius:4px; flex:none; display:inline-block;}
.progress-swatch-raised{background:linear-gradient(90deg,#4a3c0a,#6b5a0f);}
.progress-swatch-pledged{background:linear-gradient(90deg,#c9a227,#d4af37);}
.progress-swatch-needed{background:var(--grey-track);}
@media screen and (max-width:700px){.progress-flags{display:none;}.progress-legend{display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:10px 20px; margin:14px 0 0; padding:0; font-size:0.85rem; color:var(--text-secondary);}.progress-legend li{display:flex; align-items:center; gap:7px;}.progress-goal{margin-bottom:14px;}.progress-center-pct{font-size:0.85rem; padding:4px 12px;}.callout{width:100%; max-width:340px;}}

@media screen and (max-width:600px){.progress-track{height:56px;}.progress-goal{font-size:1.3rem;}.callout{display:block; margin:12px auto;}.callout.raised-callout,.callout.pledged-callout{margin:12px auto;}}.event-photo-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px; margin-top:30px;}.photo-thumb{position:relative; aspect-ratio:4 / 3; padding:0; border:1px solid var(--border-subtle); border-radius:var(--radius-card); overflow:hidden; cursor:zoom-in; background:var(--bg-deep); transition:var(--transition);}.photo-thumb img{width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.5s var(--ease);}.photo-thumb:hover,.photo-thumb:focus-visible{border-color:rgba(212,175,55,0.45); transform:translateY(-2px); outline:none;}.photo-thumb:hover img,.photo-thumb:focus-visible img{transform:scale(1.05);}.photo-viewer{position:fixed; inset:0; z-index:9500; display:none; align-items:center; justify-content:center; padding:16px;}.photo-viewer.is-open{display:flex;}.photo-viewer-backdrop{position:absolute; inset:0; background:rgba(5,5,7,0.94); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);}.photo-viewer-stage{position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; width:100%; max-width:1280px; height:100%;}.photo-viewer-figure{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; max-width:100%; width:100%; height:100%; margin:0;}.photo-viewer-figure img{max-width:100%; max-height:calc(100vh - 210px); object-fit:contain; border-radius:10px; box-shadow:var(--shadow-hover);}.photo-viewer-counter{font-size:0.85rem; font-weight:600; letter-spacing:0.04em; color:var(--text-secondary);}.photo-nav{position:absolute; top:50%; z-index:2; transform:translateY(-50%); display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; padding:0; border:1px solid var(--border-strong); border-radius:50%; background:rgba(10,10,12,0.55); color:var(--text-primary); font-size:1.7rem; line-height:1; cursor:pointer; transition:var(--transition);}.photo-nav:hover:not(:disabled),.photo-nav:focus-visible{background:var(--accent); border-color:var(--accent); color:var(--on-accent);}.photo-nav:disabled{opacity:0.4; cursor:default;}.photo-nav-prev{left:8px;}.photo-nav-next{right:8px;}.photo-viewer-close{position:absolute; top:14px; right:14px; z-index:2; display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; padding:0; border:1px solid var(--border-strong); border-radius:50%; background:rgba(10,10,12,0.55); color:var(--text-primary); font-size:1.2rem; cursor:pointer; transition:var(--transition);}.photo-viewer-close:hover,.photo-viewer-close:focus-visible{background:var(--accent); border-color:var(--accent); color:var(--on-accent);}.photo-viewer-nav{display:flex; align-items:center; justify-content:center; gap:8px; padding:8px 10px; max-width:100%; overflow-x:auto; border:1px solid var(--border-subtle); border-radius:var(--radius-card); background:rgba(10,10,12,0.55);}.photo-viewer-nav button{flex:0 0 auto; width:52px; height:52px; padding:0; border:2px solid transparent; border-radius:8px; overflow:hidden; cursor:pointer; background:var(--bg-deep); transition:var(--transition);}.photo-viewer-nav button img{width:100%; height:100%; object-fit:cover; display:block;}.photo-viewer-nav button:hover,.photo-viewer-nav button:focus-visible{border-color:var(--accent);}.photo-viewer-nav button.is-active{border-color:var(--accent); box-shadow:0 0 0 2px rgba(212,175,55,0.35);}@media (max-width:640px){.event-photo-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:10px;}.event-back{top:14px; left:14px; font-size:0.8rem;}.photo-nav-prev{left:4px;}.photo-nav-next{right:4px;}.photo-viewer-nav button{width:44px; height:44px;}}@media (prefers-reduced-motion:reduce){.photo-thumb img,.photo-viewer-nav button img{transition:none;}}
