/*
Theme Name: XYZ Theme
Description: NGO / donation theme for the free Elementor. Every page, the header and the footer are edited with Elementor. Colors and fonts: Appearance > Customize > XYZ Site Settings.
Version: 5.2
Text Domain: xyz-theme
*/
:root{--p:#1d5c42;--a:#e8661c;--d:#14392c;--t:#fbf6ee;--pe:#fdeedd;--fb:'Inter','Hind Siliguri',sans-serif;--fh:'Playfair Display','Noto Serif Bengali',serif}
@supports (color:color-mix(in srgb,red,blue)){:root{--pe:color-mix(in srgb,var(--a) 12%,#fff)}}
*{box-sizing:border-box}
body{margin:0;font-family:var(--fb);color:#2a3a32;line-height:1.65;font-size:16px;background:#fff}
a{color:var(--p)}img{max-width:100%;height:auto}
:focus-visible{outline:3px solid var(--a);outline-offset:2px}
.xw{max-width:1200px;margin:0 auto;padding:0 20px}
.xpage{padding:48px 20px}.xpost{max-width:780px}
.xbtn{display:inline-block;padding:.6em 1.3em;border-radius:999px;background:var(--a);color:#fff;font-weight:700;text-decoration:none}
.xcards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.xcard{background:#fff;border:1px solid #eadfcc;border-radius:14px;padding:0 0 20px;overflow:hidden;box-shadow:0 12px 30px rgba(20,57,44,.07)}
.xcard img{width:100%;height:200px;object-fit:cover;display:block;margin-bottom:14px}
.xcard>*:not(img){margin-left:20px;margin-right:20px}
.xcard small{color:var(--a);font-weight:700;display:block}
.xcard h3{font-family:var(--fb);font-size:1.05rem;line-height:1.35;margin:.3em 20px .5em}
.xcard a{color:var(--a);font-weight:700;text-decoration:none}
/* built-in fallback header/footer (used only if no Elementor header/footer exists) */
.xtop{background:var(--p);color:#e6f0ea;font-size:.88rem}
.xtop .xw{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:8px;padding-bottom:8px;flex-wrap:wrap}
.xtop a{color:#fff;text-decoration:none}.xtop .acts{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.xtop .xbtn{padding:.25em .9em;font-size:.85rem}
.xtop .xbtn.line{background:#d4541a}.xlang{list-style:none;display:flex;gap:10px;margin:0;padding:0}
.xhead{background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:50}
.xhead .xw{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:10px;padding-bottom:10px}
.xbrand{font-family:var(--fh);font-size:1.7rem;font-weight:700;color:var(--p);text-decoration:none}.xbrand img{max-height:56px;width:auto}
.xnav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px}.xnav li{position:relative}
.xnav a{display:block;padding:.6em .85em;color:var(--d);text-decoration:none;font-weight:500;font-size:.9rem}
.xnav a:hover,.xnav .current-menu-item>a{color:var(--a)}
.xnav li.menu-item-has-children>a:after{content:" ▾";font-size:.8em}
.xnav ul ul{display:none;position:absolute;left:0;top:100%;min-width:230px;flex-direction:column;background:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.1);padding:6px;z-index:60}
.xnav li:hover>ul,.xnav li:focus-within>ul{display:flex}
.xburger{display:none;background:none;border:2px solid var(--p);color:var(--p);border-radius:8px;font-size:1.4rem;padding:.1em .5em;cursor:pointer}
.xfoot{background:var(--d);color:#cfe0db;padding:56px 0 20px}
.xfoot a{color:#fff}.xfoot h4{color:#fff;font-family:var(--fh);margin:0 0 .6em}
.xfoot .cols{display:grid;grid-template-columns:1.4fr 1.4fr 1fr 1.2fr;gap:36px}
.xfoot ul{list-style:none;margin:0;padding:0}.xfoot li{margin-bottom:.4em}
.xsoc{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.xsoc a{border:1px solid #3b5b58;border-radius:6px;padding:.1em .7em;text-decoration:none;font-size:.9rem}
.xfoot .copy{border-top:1px solid #29474a;margin-top:32px;padding-top:16px;font-size:.9rem;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.xfoot .copy ul{display:flex;gap:16px}
/* ================= Elementor look ================= */
body[class*="elementor-kit-"]{--e-global-color-primary:var(--p);--e-global-color-secondary:var(--d);--e-global-color-text:#2a3a32;--e-global-color-accent:var(--a)}
body .elementor .elementor-heading-title{font-family:var(--fh);color:var(--d);font-weight:600;line-height:1.15}
body .elementor h2.elementor-heading-title{font-size:clamp(1.9rem,3.6vw,2.75rem)}
body .elementor .elementor-heading-title em{font-style:normal;color:var(--a)}
body .elementor .elementor-widget-text-editor{color:#5a6a62;font-size:1rem}
body .elementor .xeyebrow .elementor-heading-title{font-family:var(--fb);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--a)}
body .elementor .xcream{background:var(--t)}
body .elementor .xinline>.elementor-element-populated{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}
body .elementor .xinline.xleft>.elementor-element-populated{justify-content:flex-start}
body .elementor .xinline.xright>.elementor-element-populated{justify-content:flex-end}
body .elementor .xinline .elementor-widget{margin-bottom:0!important;width:auto}
/* buttons */
body .elementor .elementor-widget-button .elementor-button{font-family:var(--fb);font-weight:700;border-radius:999px;padding:13px 28px;background:var(--a);color:#fff;border:0}
body .elementor .xbtn-ghost .elementor-button{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.8)}
body .elementor .xbtn-outline .elementor-button{background:transparent;color:var(--d);border:1.5px solid #cdd6cf}
body .elementor .xbtn-small .elementor-button{padding:8px 18px;font-size:.8rem}
body .elementor .xchip .elementor-button{background:#fff;color:var(--d);border:1px solid #e4dccf;font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;padding:9px 16px}
body .elementor .xchipg .elementor-button{background:var(--p);color:#fff;font-size:.74rem;padding:9px 16px}
body .xchipg .elementor-button-text:before,body .xblink-btn .elementor-button-text:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--a);margin-right:8px;vertical-align:middle}
body .elementor .xlink .elementor-button{background:none;padding:0;color:#ffb07a;font-size:.85rem}
body .elementor .xblink-btn .elementor-button{background:#d4541a;color:#fff;padding:8px 18px;font-size:.8rem;animation:xpulse 1.4s ease-in-out infinite}
body .xblink-btn .elementor-button-text:before{background:#ffd166;animation:xdot 1s steps(2,start) infinite}
@keyframes xpulse{0%,100%{box-shadow:0 0 0 0 rgba(232,102,28,.75)}50%{box-shadow:0 0 0 9px rgba(232,102,28,0)}}
@keyframes xdot{50%{opacity:.15}}
/* hero */
body .elementor .xhero{background:var(--p)}
body .xhero .elementor-heading-title,body .xhero .elementor-widget-text-editor{color:#fff}
body .xhero h1.elementor-heading-title{font-size:clamp(2.4rem,5vw,4rem);line-height:1.05}
body .xhero h1 em{font-style:italic;color:#fff}
body .xhero .xpilllab .elementor-heading-title{display:inline-block;background:rgba(0,0,0,.28);color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.45em 1em;font-family:var(--fb);font-size:.66rem;letter-spacing:.14em;font-weight:600}
.xmini{display:flex;gap:34px;flex-wrap:wrap;margin-top:14px;font-size:.82rem;opacity:.95}
.xmini b{display:block;font-family:var(--fh);font-size:2.1rem;line-height:1.1;font-weight:600}
/* gift card */
body .elementor .xgift>.elementor-element-populated{background:#fff;border-radius:18px;box-shadow:0 30px 60px rgba(0,0,0,.3);padding:22px}
body .xhero .xgift .elementor-heading-title{color:var(--d);font-size:1.3rem}
body .xhero .xgift .elementor-widget-text-editor{color:#6c7a72;font-size:.85rem}
body .xgift .elementor-tabs-wrapper{display:flex;background:#f1efe7;border-radius:999px;padding:4px;gap:4px;margin-bottom:14px;width:100%}
body .xgift .elementor-tab-title{flex:1;text-align:center;border:0!important;border-radius:999px;padding:8px 4px;background:transparent;font-size:.78rem;font-weight:600}
body .xgift .elementor-tab-title a{color:#55655d!important}
body .xgift .elementor-tab-title.elementor-active{background:var(--p)}
body .xgift .elementor-tab-title.elementor-active a{color:#fff!important}
body .xgift .elementor-tabs-content-wrapper,body .xgift .elementor-tab-content{border:0;padding:0;background:none}
.xbadge{background:var(--a);color:#fff;border-radius:99px;padding:.05em .5em;font-size:.55rem;font-weight:800;margin-left:3px}
.xamt{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:6px}
.xamt a{display:block;border:1.5px solid #e6e2d8;border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--d);font-family:var(--fh);font-size:1.25rem;font-weight:700;line-height:1.2}
.xamt a small{display:block;font-family:var(--fb);font-weight:400;font-size:.72rem;color:#7a867f;margin-top:2px}
.xamt a:hover,.xamt a.on{background:var(--pe);border-color:var(--a)}
body .xgift .elementor-widget-button .elementor-button{width:100%;text-align:center;justify-content:center}
.xsmall{font-size:.78rem;text-align:center;color:#6c7a72;margin:10px 0 0}.xdot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#2e9e5b;margin-right:4px}
/* programs */
body .elementor .xprog>.elementor-element-populated{min-height:300px;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;flex-wrap:nowrap;justify-content:flex-end;padding:22px;margin:10px}
body .xprog .elementor-heading-title{color:#fff;font-size:1.5rem}
body .xprog .elementor-widget-text-editor{color:#f0f0ea;font-size:.85rem}
/* impact */
body .elementor .xgreen{background:var(--p);position:relative;overflow:hidden}
body .xgreen .elementor-heading-title{color:#fff}body .xgreen .elementor-widget-text-editor{color:#dce9e1}
body .xgreen .elementor-heading-title em{font-style:italic;color:#f3e3c4}
body .xgreen .xeyebrow .elementor-heading-title{color:#f08a4b}
body .xcircle:before{content:"";position:absolute;right:-70px;top:-70px;width:280px;height:280px;border-radius:50%;background:rgba(186,190,60,.28)}
body .xgreen .elementor-widget-counter .elementor-widget-container{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:20px 8px}
body .elementor .elementor-counter-number-wrapper{font-family:var(--fh);font-size:2.2rem;color:var(--p);font-weight:600}
body .xgreen .elementor-counter-number-wrapper{color:#fff}
body .elementor .elementor-counter-title{font-size:.78rem;color:#5a6a62}body .xgreen .elementor-counter-title{color:#cfe0d6}
/* cause cards */
body .elementor .xcausecol>.elementor-element-populated{background:#fff;border:1px solid #eadfcc;border-radius:14px;box-shadow:0 12px 30px rgba(20,57,44,.08);margin:10px;padding:0;overflow:hidden;position:relative}
body .xcausecol .elementor-widget{margin-bottom:10px}
body .xcausecol .elementor-widget-heading,body .xcausecol .elementor-widget-button{padding:0 16px}
body .xcausecol h3.elementor-heading-title{font-family:var(--fb);font-weight:600;font-size:1rem;line-height:1.35}
body .xcausecol .elementor-widget-button .elementor-button{width:100%;text-align:center;justify-content:center;margin-bottom:6px}
body .xcimg .elementor-widget{margin-bottom:0}
body .xcimg .xbadges{padding:12px}
body .xbadges .elementor-widget-container{display:flex;justify-content:space-between}
.xbadges .xp{background:var(--a);color:#fff;border-radius:99px;padding:.15em .8em;font-size:.78rem;font-weight:800}
.xbadges .xc{background:rgba(255,255,255,.92);color:var(--p);border-radius:99px;padding:.15em .8em;font-size:.66rem;font-weight:800;letter-spacing:.08em}
/* be a part, goals, partners, subscribe */
.xway{background:#fff;border:1px solid #eadfcc;border-radius:14px;padding:20px;height:100%;box-shadow:0 8px 24px rgba(20,57,44,.06)}
.xway span{display:inline-block;background:var(--pe);color:var(--a);border-radius:50%;width:32px;height:32px;line-height:32px;text-align:center;font-weight:700;font-size:.8rem}
.xway h4{margin:.7em 0 .5em;font-family:var(--fb);font-size:1rem;color:var(--d)}.xway a{color:var(--a);font-weight:700;text-decoration:none;font-size:.85rem}
body .elementor .xrounded>.elementor-element-populated{border-radius:16px;overflow:hidden}
body .elementor .xgoals>.elementor-element-populated{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-content:center}
.xgoal{background:#fff;border-left:4px solid var(--a);border-radius:10px;padding:16px 18px;box-shadow:0 8px 24px rgba(20,57,44,.07)}
.xgoal h4{margin:0 0 .3em;font-family:var(--fb);color:var(--d);font-size:1rem}.xgoal p{margin:0;font-size:.85rem}
.xmarq{overflow:hidden}.xtrack{display:flex;gap:16px;width:max-content;animation:xscroll 32s linear infinite}
.xtrack span{border:1px dashed #cdbfa6;background:#fff;border-radius:10px;padding:16px 34px;font-weight:700;color:#8a8372;white-space:nowrap}
@keyframes xscroll{to{transform:translateX(-50%)}}
.xsub{display:flex;gap:8px;max-width:520px;margin:6px auto 18px;background:#fff;border-radius:999px;padding:5px}
.xsub input{flex:1;border:0;padding:.7em 1.2em;border-radius:999px;font:inherit;outline:0}
.xsub button{background:var(--a);color:#fff;border:0;border-radius:999px;padding:.7em 1.6em;font-weight:700;cursor:pointer}
/* cards (icon boxes) */
body .elementor .xcardw .elementor-widget-container{background:#fff;border:1px solid #eadfcc;border-radius:14px;padding:26px;box-shadow:0 10px 28px rgba(20,57,44,.07)}
body .xcardw .elementor-icon-box-icon .elementor-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--pe);color:var(--a);font-size:28px}
body .xcardw .elementor-icon-box-title{font-family:var(--fh);font-size:1.25rem;color:var(--d)}
/* header / footer made in Elementor */
body .elementor .xeltop{background:var(--p)}
body .xeltop .elementor-widget-text-editor{color:#e6f0ea;font-size:.85rem}
body .xelmain{background:#fff;border-bottom:1px solid #eee}
body .xelmain .xnav ul{justify-content:center}body .xelmain .xburger{margin-left:auto}
body .elementor .xelfoot,body .elementor .xelfoot2{background:var(--d)}
body .xelfoot .elementor-heading-title{color:#fff;font-family:var(--fh);font-size:1.15rem}
body .xelfoot .elementor-widget-text-editor,body .xelfoot2 .elementor-widget-text-editor{color:#c4d6cd;font-size:.9rem}
body .xelfoot2{border-top:0}body .xelfoot2 a,body .xelfoot a{color:#fff;text-decoration:none}
body .xelfoot .xquote em{font-family:var(--fh);font-size:1.05rem;color:#e8dfcb}
body .xelfoot .xmini b{color:var(--a)}
body .xelfoot ul{list-style:none;margin:0;padding:0}body .xelfoot li{margin-bottom:.5em}
body .xelfoot .xsoc a{border:1px solid #3b5b58;border-radius:6px;padding:.15em .7em;text-decoration:none;font-size:.85rem}
.xyz-hdr{position:sticky;top:0;z-index:50}
/* Fluent Forms */
body .fluentform .ff-el-form-control{border:1px solid #cfd8d1;border-radius:10px;padding:.7em .9em}
body .fluentform .ff-btn-submit{background:var(--a);color:#fff;border-radius:999px;padding:.8em 2em;font-weight:700;border:0}
@media(max-width:900px){.xburger{display:block}.xnav{display:none;width:100%;order:3}.xnav.open{display:block}.xhead .xw{flex-wrap:wrap}.xnav ul{flex-direction:column}.xnav ul ul{position:static;display:flex;border:0;box-shadow:none}.xfoot .cols,.xcards{grid-template-columns:1fr}body .elementor .xgoals>.elementor-element-populated{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* language switch */
.xlang{list-style:none;display:flex;align-items:center;gap:10px;margin:0;padding:0}
.xlang:before{content:"\1F310"}
.xlang a{color:#fff;text-decoration:none;opacity:.8;font-size:.85rem}
.xlang .current-lang a{font-weight:700;opacity:1}
.xlang li+li:before{content:"|";margin-right:10px;color:#fff;opacity:.5}
.xlang-hint{font-size:.7rem;color:#fff;opacity:.75}
