:root{--primary-red: #E53935;--primary-red-hover: #D32F2F;--primary-red-light: #FFEBEE;--primary-red-alpha10: rgba(229, 57, 53, .1);--primary-red-alpha20: rgba(229, 57, 53, .2);--secondary-gold: #F4B321;--secondary-gold-hover: #E0A010;--secondary-gold-light: #FFF8E1;--secondary-gold-alpha20: rgba(244, 179, 33, .2);--dark-black: #111111;--dark-surface: #1C1C1C;--dark-card: #252525;--bg-white: #FFFFFF;--bg-cream: #FFF8F0;--bg-light-gray: #F9FAFB;--text-primary: #222222;--text-secondary: #666666;--text-muted: #999999;--text-white: #FFFFFF;--border-color: #ECECEC;--border-dark: #333333;--success: #2E7D32;--success-light: #E8F5E9;--font-heading: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .04);--shadow-md: 0 8px 24px rgba(0, 0, 0, .06);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .08);--shadow-red: 0 12px 30px rgba(229, 57, 53, .25);--shadow-gold: 0 12px 30px rgba(244, 179, 33, .3);--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, .06);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-smooth: .5s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{scroll-behavior:smooth;font-size:16px;overflow-x:hidden!important;width:100%!important;max-width:100vw!important;min-height:100%}body{font-family:var(--font-body);background-color:var(--bg-white);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--text-primary);word-break:break-word;overflow-wrap:break-word}h1{font-size:clamp(1.85rem,5.5vw,3.2rem)}h2{font-size:clamp(1.5rem,4.2vw,2.5rem)}h3{font-size:clamp(1.2rem,3vw,1.8rem)}h4{font-size:clamp(1.05rem,2.5vw,1.35rem)}h5{font-size:1.1rem}h6{font-size:1rem}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}button,input,select,textarea{font-family:inherit;font-size:inherit;box-sizing:border-box}input,select,textarea{max-width:100%}img,video{max-width:100%;height:auto;display:block}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 28px;box-sizing:border-box}.section-padding{padding:96px 0}.section-padding-sm{padding:60px 0}.page-wrapper{min-height:calc(100vh - 160px);width:100%;box-sizing:border-box}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-red{color:var(--primary-red)}.text-gold{color:var(--secondary-gold)}.text-dark{color:var(--dark-black)}.section-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;background-color:var(--bg-cream);border:1px solid rgba(244,179,33,.4);color:var(--primary-red);font-size:.875rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;border-radius:var(--radius-full);margin-bottom:16px;max-width:100%;box-sizing:border-box;flex-wrap:wrap}.section-badge svg{color:var(--secondary-gold);flex-shrink:0}.section-title{font-size:clamp(1.75rem,4.8vw,2.75rem);letter-spacing:-.02em;margin-bottom:16px;line-height:1.2}.section-subtitle{font-size:clamp(.95rem,2.2vw,1.125rem);color:var(--text-secondary);max-width:680px;margin:0 auto 48px;line-height:1.6}.page-banner-section{color:#fff;padding:76px 0 56px;border-bottom:4px solid var(--secondary-gold);text-align:center;position:relative;box-sizing:border-box}.page-banner-title{font-family:var(--font-heading);font-size:clamp(1.85rem,5.5vw,3rem);color:#fff;margin-bottom:16px;font-weight:900;letter-spacing:-.02em;line-height:1.2}.page-banner-subtitle{font-size:clamp(.95rem,2.4vw,1.15rem);color:#cbd5e1;max-width:720px;margin:0 auto;line-height:1.6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;border-radius:var(--radius-full);font-weight:700;font-size:1rem;cursor:pointer;border:2px solid transparent;transition:all var(--transition-normal);white-space:nowrap;box-sizing:border-box;-webkit-tap-highlight-color:transparent}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary-red);color:var(--text-white);box-shadow:var(--shadow-red)}.btn-primary:hover{background:var(--primary-red-hover);transform:translateY(-2px);box-shadow:0 16px 36px #e5393559}.btn-secondary{background:var(--secondary-gold);color:var(--dark-black);box-shadow:var(--shadow-gold)}.btn-secondary:hover{background:var(--secondary-gold-hover);transform:translateY(-2px);box-shadow:0 16px 36px #f4b32166}.btn-outline{background:transparent;border-color:var(--primary-red);color:var(--primary-red)}.btn-outline:hover{background:var(--primary-red);color:var(--text-white);transform:translateY(-2px)}.btn-dark{background:var(--dark-black);color:var(--text-white)}.btn-dark:hover{background:var(--dark-surface);transform:translateY(-2px);box-shadow:0 10px 25px #0003}.btn-white{background:var(--bg-white);color:var(--primary-red);box-shadow:var(--shadow-md)}.btn-white:hover{background:var(--bg-cream);transform:translateY(-2px)}.card-premium{background:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-md);transition:all var(--transition-normal);overflow:hidden;box-sizing:border-box;max-width:100%}.card-premium:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:#f4b32166}.glass-header{background:#fffffff5;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(236,236,236,.8)}.glass-header-dark{background:#111111eb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.1)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--secondary-gold)}@keyframes pulse-subtle{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}@keyframes float-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.animate-pulse-subtle{animation:pulse-subtle 3s infinite ease-in-out}.animate-float{animation:float-gentle 4s infinite ease-in-out}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .9fr 1.2fr;gap:36px;margin-bottom:44px;align-items:start}.category-filter-bar{display:flex;gap:8px;flex-wrap:nowrap;justify-content:center;align-items:center;background:#fff8f0;padding:8px 12px;border-radius:30px;border:1.5px solid rgba(244,179,33,.4);box-shadow:0 4px 18px #0f172a0a;max-width:100%;margin:0 auto;overflow-x:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}.category-filter-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:20px;font-weight:700;font-size:.84rem;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .2s ease;box-sizing:border-box}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.responsive-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:28px;justify-content:center;align-items:stretch;width:100%;box-sizing:border-box}.responsive-form-2col{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;width:100%;box-sizing:border-box}.responsive-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:16px;text-align:center;width:100%;box-sizing:border-box}.responsive-2col-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:48px;align-items:center;width:100%;box-sizing:border-box}.mobile-bottom-bar{display:none;position:fixed;bottom:0;left:0;right:0;width:100vw;max-width:100%;height:60px;background:transparent;z-index:950;align-items:center;box-sizing:border-box;padding-bottom:env(safe-area-inset-bottom,0px);filter:drop-shadow(0 -4px 14px rgba(211,47,47,.22));overflow:visible!important}.mobile-bottom-bar-bg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible!important}.mobile-bottom-bar-bg path{transition:d .35s cubic-bezier(.4,0,.2,1)}.mobile-bottom-bar-inner{position:relative;display:flex;align-items:center;justify-content:space-between;height:100%;width:100%;padding:0;margin:0;z-index:2;box-sizing:border-box}.bottom-bar-item{flex:1 1 25%;width:25%;max-width:25%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;position:relative;text-decoration:none;background:transparent;border:none;cursor:pointer;opacity:.95;transition:all .25s ease;min-height:54px;padding:0 0 6px;color:#fff;-webkit-tap-highlight-color:transparent;box-sizing:border-box}.bottom-bar-item:active{transform:scale(.92)}.bottom-bar-item.active{opacity:1}.mobile-active-floating-btn{position:absolute;top:-28px;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#ef4444,#d32f2f);border:3.5px solid #FFFFFF;box-shadow:0 8px 22px #00000047,0 3px 8px #d32f2f66;display:flex;align-items:center;justify-content:center;z-index:3;transform:translate(-50%);transition:left .35s cubic-bezier(.4,0,.2,1),transform .2s ease;pointer-events:none}.bottom-bar-label{font-size:.68rem;font-weight:700;color:#fff;margin-top:3px;letter-spacing:.01em;white-space:nowrap}.bottom-bar-item.active .bottom-bar-label{color:#fff;font-weight:900;font-size:.72rem;margin-top:0;margin-bottom:2px;transform:none;letter-spacing:.02em}.sidebar-drawer-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;height:100dvh;background:#0f172aa6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:99999;animation:fadeIn .25s ease}.sidebar-drawer{position:fixed;top:0;right:0;bottom:0;width:320px;max-width:88vw;height:100vh;height:100dvh;background:#fff;z-index:100000;box-shadow:-10px 0 36px #0f172a40;display:flex;flex-direction:column;justify-content:space-between;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:slideInRight .3s cubic-bezier(.16,1,.3,1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.campaign-modal-container{background:#fff;width:96vw;max-width:1240px;height:88vh;max-height:94vh;border-radius:28px;overflow:hidden;box-shadow:0 35px 80px -15px #0009,0 0 0 1px #ffffff26;display:flex;flex-direction:column;position:relative;box-sizing:border-box}.campaign-modal-grid{display:grid;grid-template-columns:minmax(400px,44%) 1fr;flex:1;height:100%;overflow:hidden;box-sizing:border-box}.campaign-modal-left{position:relative;height:100%;background-color:#0f172a;display:flex;flex-direction:column;justify-content:space-between;padding:32px;overflow:hidden;box-sizing:border-box}.campaign-modal-right{display:flex;flex-direction:column;height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:36px 40px;background:#fff;box-sizing:border-box}.lightbox-content-layout{display:flex;flex-direction:row;gap:20px;padding:0 24px;align-items:flex-start;justify-content:center;width:100%;box-sizing:border-box}.lightbox-thumbnails{display:flex;flex-direction:column;gap:12px;max-height:min(500px,60vh);overflow-y:auto;overflow-x:hidden;padding-right:8px;flex-shrink:0}@media (max-width: 768px){.lightbox-content-layout{flex-direction:column-reverse;padding:0 12px;gap:14px}.lightbox-thumbnails{flex-direction:row;max-height:none;overflow-x:auto;overflow-y:hidden;width:100%;padding-bottom:8px}}@media (max-width: 1366px){.desktop-nav .nav-menu-link{padding:6px 8px!important;font-size:.82rem!important}}@media (max-width: 1200px){.category-filter-bar{justify-content:flex-start;padding:8px 10px}.desktop-nav .nav-menu-link{padding:5px 6px!important;font-size:.78rem!important}.header-brand-title{font-size:1.05rem!important}.header-brand-subtitle{font-size:.58rem!important}.footer-grid{grid-template-columns:1.3fr .8fr .8fr 1.2fr;gap:32px}}@media (max-width: 1080px){.app-container{padding-top:64px!important}.mobile-bottom-bar{display:flex!important}.page-wrapper,main,footer{padding-bottom:92px!important}.card,.project-card,.campaign-card,.featured-card,.emergency-card,.emergency-banner-inner{max-width:100%!important;box-sizing:border-box!important}.scroll-to-top-btn{bottom:96px!important;right:16px!important;width:42px!important;height:42px!important}.desktop-nav{display:none!important}.mobile-toggle{display:flex!important}.btn-emergency-header{display:none!important}.header-brand-title{font-size:1.05rem!important}.header-brand-subtitle{font-size:.58rem!important;letter-spacing:.03em!important}.header-logo-img{height:42px!important}.campaign-modal-grid{grid-template-columns:1fr;overflow-y:auto}.campaign-modal-left{min-height:240px;height:240px;padding:20px}.campaign-modal-right{padding:24px 20px}.campaign-modal-container{height:92vh;max-height:92dvh;border-radius:20px}}@media (min-width: 1081px){.sidebar-drawer-backdrop,.sidebar-drawer{display:none!important}}@media (max-width: 992px){.container{padding:0 20px}.section-padding{padding:72px 0}.section-padding-sm{padding:48px 0}.footer-grid{grid-template-columns:repeat(2,1fr);gap:32px}.responsive-form-2col{gap:12px}}@media (max-width: 768px){.container{padding:0 16px}.section-padding{padding:56px 0}.section-padding-sm{padding:36px 0}.section-subtitle{margin-bottom:32px}.responsive-form-2col{grid-template-columns:1fr!important}.card-premium{border-radius:var(--radius-md)}.btn{padding:12px 22px;font-size:.95rem}.footer-bottom-bar{flex-direction:column!important;text-align:center!important;justify-content:center!important;gap:10px!important}.footer-bottom-bar>div{text-align:center!important;width:100%!important}}@media (max-width: 576px){.container{padding:0 14px}.section-padding{padding:48px 0}.section-padding-sm{padding:28px 0}.footer-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:24px 16px!important}.footer-col-brand{grid-column:1 / -1!important}.footer-col-quicklinks{grid-column:1 / 2!important}.footer-col-support{grid-column:2 / 3!important}.footer-col-contact{grid-column:1 / -1!important}.category-filter-pill{padding:6px 12px;font-size:.78rem}.section-badge{font-size:.78rem;padding:6px 14px}.btn{padding:11px 18px;font-size:.9rem}}@media (max-width: 380px){.container{padding:0 10px}.section-padding{padding:38px 0}.header-brand-title{font-size:.95rem!important}.header-brand-subtitle{font-size:.52rem!important}.btn{padding:10px 14px;font-size:.85rem;gap:6px}.category-filter-pill{padding:5px 10px;font-size:.74rem}}
