/*
 * قالب "الغرس" للجمعيات البيئية والزراعية (data-skin="grove" فوق التصميم النهاري).
 * الصفحات الداخلية فوق التصميم النهاري بطابع الغرس (آخر الملف) بلون الجمعية وخط المسيري، والرئيسية الخاصة (.grove) بمشهدها وحركاتها.
 * الرسومات في public/themes/grove ثابتة لكل الجمعيات، والألوان من هوية الجمعية (--b للأساسي و--c للثاني).
 */
[data-skin="grove"]{
  --display:"El Messiri","Noto Kufi Arabic",system-ui,sans-serif;
  --ground:#F7F5EC;
}
[data-skin="grove"] .site-head{background:rgba(247,245,236,.92)}
[data-skin="grove"] .site-foot{background:var(--b950)}

/* ألوان القالب داخل الرئيسية */
.grove{
  --green:var(--b600); --green2:var(--b500); --green-d:var(--b800); --deep:var(--b950);
  --lime:var(--c300); --lime-s:var(--c50); --sage:color-mix(in oklab,var(--b100) 60%,#fff);
  --cream:#F7F5EC; --sand:#EFE9D8; --earth:#8B6B47; --ink:#1C2A1F; --muted:#5D6B5F;
  --line:color-mix(in oklab,var(--b600) 16%,transparent); --sun:#F4C542;
  --body:"IBM Plex Sans Arabic",system-ui,sans-serif;
  background:var(--cream);color:var(--ink);font-family:var(--body);font-size:16.5px;line-height:1.85;overflow:hidden
}
.grove a{color:inherit;text-decoration:none}
.grove img{display:block;max-width:100%}
.grove h1,.grove h2,.grove h3,.grove p,.grove ul,.grove figure{margin:0}
.grove ul{padding:0}
.grove .gv-num{font-family:var(--body);font-weight:700;direction:ltr;unicode-bidi:isolate;display:inline-block}
.grove svg.gv-i{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.grove section{position:relative;padding:104px 0}
.grove h2{font-family:var(--display);font-weight:700;font-size:clamp(30px,3.4vw,48px);line-height:1.3;color:var(--deep)}
.grove h2 em{font-style:normal;color:var(--green2)}
.grove .gv-kick{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:600;font-size:16px;color:var(--green);margin-bottom:10px}
.grove .gv-kick svg{width:20px;height:20px;color:var(--lime);fill:var(--lime);stroke:var(--green)}
.grove .gv-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:46px}
.grove .gv-head p{color:var(--muted);max-width:440px}
.grove .gv-btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--body);font-weight:700;font-size:15.5px;padding:14px 28px;border-radius:999px;transition:.25s;white-space:nowrap}
.grove .gv-btn svg.gv-i{width:18px;height:18px}
.grove .gv-btn-green{background:var(--green);color:#fff;box-shadow:0 14px 30px -14px rgba(13,120,41,.8)}
.grove .gv-btn-green:hover{background:var(--green-d)}
.grove .gv-btn-lime{background:var(--lime);color:var(--deep)}
.grove .gv-btn-line{border:1.5px solid rgba(13,120,41,.35);color:var(--green-d);background:#fff}
.grove .gv-leaf-shape{border-radius:0 60% 0 60%}
@property --gv-fill{syntax:'<percentage>';inherits:false;initial-value:100%}
@property --gv-n{syntax:'<integer>';inherits:false;initial-value:0}
.grove .gv-hero{position:relative;overflow:hidden;padding:0;--mx:0;--my:0;min-height:max(760px,calc(100vh - 76px));isolation:isolate;color:var(--deep)}
.grove .gv-sky,.grove .gv-sky-dust,.grove .gv-sky-storm{position:absolute;inset:0;z-index:-4}
.grove .gv-sky{background:linear-gradient(180deg,#5DB6E8 0%,#9ED8F3 40%,#DDF2F1 70%,#F2F7E4 100%)}
.grove .gv-sky-dust{background:linear-gradient(180deg,#DDB57A 0%,#EBCD99 42%,#F6E4C0 100%);opacity:0}
.grove .gv-sky-storm{background:linear-gradient(180deg,#5F6E7C 0%,#8E99A0 48%,#BDB9AA 100%);opacity:0}
.grove .gv-sun{position:absolute;top:8%;left:6%;width:150px;height:150px;z-index:-3}
.grove .gv-sun .gv-disc{position:absolute;inset:32px;border-radius:50%;background:radial-gradient(circle,#FFF7CF 0,#FFE27A 48%,#F6C443 74%);box-shadow:0 0 60px 22px rgba(255,214,90,.55),0 0 180px 70px rgba(255,228,150,.38)}
.grove .gv-sun .gv-disc::after{content:"";position:absolute;inset:-28px;border-radius:50%;background:radial-gradient(circle,#fff 0,#FFFBEF 42%,rgba(255,250,235,0) 72%);opacity:0}
.grove .gv-sun .gv-rays{position:absolute;inset:-120px;background:url(../themes/grove/sunrays.webp) center/100% 100% no-repeat}
.grove .gv-rainbow{position:absolute;right:-20%;top:20%;width:min(62vw,900px);aspect-ratio:2/1;z-index:-3;opacity:.26;filter:blur(1.5px);background:radial-gradient(circle at 50% 100%,transparent 62%,rgba(255,96,96,.85) 63%,rgba(255,168,72,.85) 64.6%,rgba(255,228,92,.85) 66.2%,rgba(112,206,112,.85) 67.8%,rgba(92,178,255,.85) 69.4%,rgba(150,120,236,.85) 71%,transparent 72.6%);-webkit-mask:linear-gradient(0deg,transparent 10%,#000 60%);mask:linear-gradient(0deg,transparent 10%,#000 60%)}
.grove .gv-clouds{position:absolute;inset:0 0 auto;height:60%;z-index:-2;pointer-events:none}
.grove .gv-cl{position:absolute;display:block;will-change:transform}
.grove .gv-cl img{display:block;width:100%;height:auto}
.grove .gv-cl .gv-dk{position:absolute;inset:0;filter:brightness(.48) saturate(.4);opacity:0}
.grove .gv-cl.gv-c1{top:30%;left:0;width:260px}
.grove .gv-cl.gv-c2{top:0;left:26%;width:520px;opacity:0}
.grove .gv-cl.gv-c3{top:4%;right:1%;width:320px}
.grove .gv-cl.gv-c4{top:10%;right:22%;width:480px;opacity:0}
.grove .gv-cl.gv-c5{top:18%;left:8%;width:440px;opacity:0}
.grove .gv-birds{position:absolute;top:4%;right:25%;width:130px;height:60px;z-index:-1}
.grove .gv-birds svg{position:absolute;width:34px;height:17px;fill:none;stroke:#26392E;stroke-width:2.2;stroke-linecap:round;overflow:visible}
.grove .gv-birds svg:nth-child(1){top:0;right:0}
.grove .gv-birds svg:nth-child(2){top:18px;right:40px;width:22px}
.grove .gv-birds svg:nth-child(3){top:8px;right:84px;width:18px}
.grove .gv-hero-in{position:relative;z-index:3;text-align:center;padding-top:44px}
.grove .gv-hero-in::before{content:"";position:absolute;inset:-10px 6% -30px;background:radial-gradient(closest-side,rgba(255,255,255,.6),rgba(255,255,255,0));z-index:-1;pointer-events:none}
.grove .gv-badge{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:var(--green-d);background:rgba(255,255,255,.92);border:1px solid var(--line);padding:7px 16px 7px 8px;border-radius:999px;margin-bottom:14px;box-shadow:0 10px 24px -16px rgba(11,58,26,.5)}
.grove .gv-badge b{background:var(--lime);color:var(--deep);border-radius:999px;padding:2px 12px;font-weight:700;font-size:13px}
.grove h1{font-family:var(--display);font-weight:700;font-size:clamp(60px,7.4vw,118px);line-height:1.06;color:var(--deep)}
.grove h1 .gv-l1{display:block;font-size:.5em;line-height:1.35}
.grove h1 .gv-l1 em{font-style:normal;color:#A26F35}
.grove h1 .gv-l2{display:inline-flex;align-items:flex-end;gap:.08em}
.grove h1 .gv-gw{background:linear-gradient(0deg,#0C7A2D 0%,#17A240 var(--gv-fill),#CC9F62 calc(var(--gv-fill) + 5%),#E0BD86 100%);-webkit-background-clip:text;background-clip:text;color:transparent;padding:0 .04em .1em}
.grove h1 .gv-sprout{width:.62em;height:.76em;flex:none;transform-origin:50% 100%;margin-bottom:.2em}
.grove .gv-sprout .gv-stem{fill:none;stroke:var(--green);stroke-width:5;stroke-linecap:round}
.grove .gv-sprout .gv-lf1{fill:var(--lime)}
.grove .gv-sprout .gv-lf2{fill:var(--green2)}
.grove .gv-lead{color:#21402A;font-size:18.5px;max-width:720px;margin:14px auto 26px;line-height:1.9}
.grove .gv-ctas{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.grove .gv-btn-glass{background:rgba(255,255,255,.85);border:1.5px solid rgba(13,120,41,.25);color:var(--green-d)}
.grove .gv-landbox{position:absolute;left:0;right:0;bottom:0;top:400px;z-index:0}
.grove .gv-land{position:absolute;inset:0;width:100%;height:100%;display:block}
.grove .gv-tr{transform-box:fill-box;transform-origin:50% 91%}
.grove .gv-cn{transform-box:fill-box;transform-origin:50% 62%}
.grove .gv-water,.grove .gv-grass{clip-path:inset(0 0 0 0)}
.grove .gv-airhaze{pointer-events:none}
.grove .gv-haze{position:absolute;inset:0;opacity:0;pointer-events:none;background:radial-gradient(60% 40% at 50% 60%,rgba(236,206,150,.65),transparent 70%),repeating-linear-gradient(178deg,rgba(255,240,210,0) 0 26px,rgba(255,238,205,.32) 26px 29px,rgba(255,240,210,0) 29px 64px)}
.grove .gv-rain{position:absolute;inset:0;z-index:2;opacity:0;pointer-events:none}
.grove .gv-rain i{position:absolute;top:-120px;left:var(--x);width:1px;height:var(--h);background:linear-gradient(180deg,rgba(255,255,255,0),rgba(225,235,245,var(--o)));rotate:14deg}
.grove .gv-rain::before{content:"";position:absolute;left:-10%;right:-10%;top:-200px;height:calc(100% + 200px);background:repeating-linear-gradient(104deg,transparent 0 7px,rgba(220,230,240,.12) 7px 8px,transparent 8px 19px);will-change:transform}
.grove .gv-mist{position:absolute;inset:auto 0 0;height:62%;z-index:1;opacity:0;pointer-events:none;background:linear-gradient(180deg,rgba(170,182,190,0),rgba(170,182,190,.55) 45%,rgba(160,172,180,.35))}
.grove .gv-bflies{position:absolute;inset:auto 0 0;height:40%;z-index:2;pointer-events:none}
.grove .gv-bf{position:absolute;width:22px;height:18px;filter:drop-shadow(0 3px 3px rgba(0,0,0,.18))}
.grove .gv-bf svg{display:block;width:100%;height:100%}
.grove .gv-bf.gv-b1{--c:#FFB74D;--c2:#FB8C00;left:40%;bottom:34%}
.grove .gv-bf.gv-b2{--c:#F8A5C2;--c2:#E2558A;left:57%;bottom:18%}
.grove .gv-tl{position:absolute;left:max(24px,calc((100vw - 1220px) / 2 + 32px));bottom:26px;z-index:4;width:340px;background:rgba(255,255,255,.94);border:1px solid #fff;border-radius:22px;padding:14px 18px 14px;box-shadow:0 24px 40px -24px rgba(11,58,26,.6)}
.grove .gv-tl-top{display:flex;align-items:center;gap:10px}
.grove .gv-tl .gv-dot{width:12px;height:12px;border-radius:50%;background:#2FA84F;box-shadow:0 0 0 5px rgba(47,168,79,.18);flex:none}
.grove .gv-tl-st{position:relative;flex:1;height:30px}
.grove .gv-tl-st b{position:absolute;inset:0;font-family:var(--display);font-size:20px;line-height:30px;color:var(--deep);opacity:0}
.grove .gv-tl-st .gv-s4{opacity:1}
.grove .gv-replay{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--green);display:grid;place-items:center;cursor:pointer;flex:none}
.grove .gv-replay svg{width:17px;height:17px}
.grove .gv-tl-bar{display:flex;align-items:center;gap:10px;margin:10px 0 8px;font-size:12.5px;color:var(--muted)}
.grove .gv-tl-bar b{color:var(--deep);font-size:13.5px}
.grove .gv-tl-bar i{position:relative;flex:1;height:8px;border-radius:9px;background:#E7E1CF;overflow:hidden}
.grove .gv-tl-bar s{position:absolute;inset-block:0;inset-inline-start:0;width:100%;border-radius:9px;background:linear-gradient(90deg,#16913A,#A0D638)}
[dir=rtl] .grove .gv-tl-bar s{background:linear-gradient(270deg,#D9B27A,#7CC251 45%,#16913A)}
.grove .gv-tl-n{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--muted);border-top:1px dashed var(--line);padding-top:8px}
.grove .gv-tl-n svg.gv-i{width:18px;height:18px;color:var(--green2)}
.grove .gv-cnt{counter-reset:n var(--gv-n);font-family:var(--body);font-weight:800;color:var(--deep);font-size:16px;direction:ltr}
.grove .gv-cnt::after{content:counter(n)}
.grove .gv-places{position:absolute;right:max(24px,calc((100vw - 1220px) / 2 + 32px));bottom:26px;z-index:4;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.grove .gv-places span{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--green-d);background:rgba(255,255,255,.94);border:1px solid #fff;border-radius:999px;padding:7px 14px}
.grove .gv-places svg.gv-i{width:16px;height:16px;color:var(--green2)}
.grove .gv-clouds{translate:calc(var(--mx) * -14px) calc(var(--my) * -6px);transition:translate .8s ease-out}
.grove .gv-sun{translate:calc(var(--mx) * -8px) calc(var(--my) * -4px);transition:translate .8s ease-out}
.grove .gv-splash{position:absolute;inset:0}
.grove .gv-splash b{position:absolute;left:var(--x);top:var(--y);width:14px;height:4px;margin:-2px -7px;border-radius:50%;border:1px solid rgba(235,245,255,.75);scale:var(--s);opacity:0}
.grove .gv-rays2{position:absolute;left:0;top:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:.6;background:url(../themes/grove/rays.webp) 0 0/100% 100% no-repeat}
.grove .gv-pollen{position:absolute;inset:0;z-index:2;pointer-events:none}
.grove .gv-pollen i{position:absolute;left:var(--x);top:var(--y);width:var(--sz);height:var(--sz);border-radius:50%;background:radial-gradient(circle,rgba(255,252,225,.95),rgba(255,250,215,0) 70%);opacity:.8}
.grove .gv-fg{position:absolute;bottom:-6px;z-index:3;width:min(44vw,600px);height:auto;pointer-events:none;transform-origin:50% 100%}
.grove .gv-fg-l{left:-30px}
.grove .gv-fg-r{right:-30px;scale:-1 1}
.grove .gv-fg.gv-dry{opacity:0}
.grove .gv-grade{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse 85% 75% at 45% 38%,transparent 55%,rgba(12,32,24,.26) 100%),linear-gradient(180deg,rgba(255,216,150,.07),rgba(255,216,150,0) 45%,rgba(18,48,38,.1))}
.grove .gv-hero.gv-off *{animation-play-state:paused!important}
.grove .gv-fg,.grove .gv-pollen i,.grove .gv-bf,.grove .gv-birds,.grove .gv-sun{will-change:transform}
.grove .gv-hero.gv-calm .gv-rain,.grove .gv-hero.gv-calm .gv-mist,.grove .gv-hero.gv-calm .gv-haze{display:none}
.grove .gv-falling{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}
.grove .gv-falling i{position:absolute;top:-40px;left:var(--x);width:var(--s);height:var(--s);background:var(--k);border-radius:0 70% 0 70%;opacity:.85}
.grove .gv-falling i::after{content:"";position:absolute;inset:48% 10% auto 10%;height:1.5px;background:rgba(255,255,255,.55);transform:rotate(45deg)}
.grove .gv-forest{background:var(--deep);color:#fff;padding:70px 0;position:relative;overflow:hidden}
.grove .gv-forest::before{content:"";position:absolute;inset:auto 0 0;height:60px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.25))}
.grove .gv-forest .gv-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}
.grove .gv-forest .gv-tag{display:inline-flex;gap:8px;align-items:center;background:rgba(160,214,56,.15);color:var(--lime);border-radius:999px;padding:5px 14px;font-size:13.5px;font-weight:600;margin-bottom:14px}
.grove .gv-forest h3{font-family:var(--display);font-size:clamp(28px,3vw,42px);line-height:1.3}
.grove .gv-forest h3 b{color:var(--lime);font-family:var(--body);font-weight:800}
.grove .gv-forest p{color:#b9d1bd;margin-top:8px;font-size:15px}
.grove .gv-trees{display:grid;grid-template-columns:repeat(10,1fr);gap:10px 8px;direction:rtl}
.grove .gv-trees i{display:block;aspect-ratio:3/4;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 40'%3E%3Crect x='13' y='26' width='4' height='12' rx='1' fill='%238B6B47'/%3E%3Ccircle cx='15' cy='15' r='12' fill='%2316913A'/%3E%3Ccircle cx='10' cy='19' r='7' fill='%230D7829'/%3E%3Ccircle cx='20' cy='11' r='6' fill='%23A0D638' opacity='.8'/%3E%3C/svg%3E");transform-origin:50% 100%}
.grove .gv-trees + small{display:block;margin-top:12px;color:#9fbfa5;font-size:13px}
.grove .gv-targets{display:grid;grid-template-columns:repeat(4,1fr);margin-top:46px;border-top:1px solid rgba(255,255,255,.12)}
.grove .gv-targets div{padding:24px 22px 0;border-inline-start:1px solid rgba(255,255,255,.12)}
.grove .gv-targets div:first-child{border-inline-start:0}
.grove .gv-targets b{display:block;font-family:var(--body);font-weight:800;font-size:38px;color:#fff;line-height:1}
.grove .gv-targets span{display:block;font-family:var(--display);font-size:17px;margin-top:6px}
.grove .gv-targets small{color:#9fbfa5;font-size:12.5px}
.grove .gv-about .gv-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.grove .gv-about .gv-lede{font-size:19px;color:#2f3d32;line-height:2;margin:16px 0 26px}
.grove .gv-about figure{position:relative;border-radius:200px 200px 24px 24px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(11,58,26,.5)}
.grove .gv-about figure img{width:100%;height:420px;object-fit:cover}
.grove .gv-about figcaption{position:absolute;bottom:16px;right:16px;background:rgba(255,255,255,.92);border-radius:999px;padding:6px 14px;font-size:13px;color:var(--green-d);display:flex;align-items:center;gap:6px}
.grove .gv-vm{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}
.grove .gv-vm div{background:#fff;border:1px solid var(--line);border-radius:0 40px 0 40px;padding:24px 22px}
.grove .gv-vm h3{font-family:var(--display);font-size:22px;color:var(--green);margin-bottom:6px}
.grove .gv-vm p{color:var(--muted);font-size:15px;line-height:1.9}
.grove .gv-programs{background:var(--sage)}
.grove .gv-pgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
.grove .gv-pleaf{grid-column:span 2;position:relative;background:#fff;border-radius:0 70px 0 70px;padding:34px 30px 30px;border:1px solid var(--line);overflow:hidden;transition:.3s}
.grove .gv-pleaf:hover{transform:translateY(-4px);box-shadow:0 24px 40px -24px rgba(11,58,26,.5)}
.grove .gv-pleaf::before{content:"";position:absolute;top:-30px;left:-30px;width:120px;height:120px;border-radius:0 70% 0 70%;background:var(--lime-s);transform:rotate(12deg)}
.grove .gv-pleaf > *{position:relative}
.grove .gv-pleaf .gv-ic{width:54px;height:54px;border-radius:0 22px 0 22px;background:var(--green);color:#fff;display:grid;place-items:center;margin-bottom:16px}
.grove .gv-pleaf h3{font-family:var(--display);font-size:23px;color:var(--deep);margin-bottom:8px;line-height:1.4}
.grove .gv-pleaf p{color:var(--muted);font-size:15px;line-height:1.9}
.grove .gv-pleaf ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.grove .gv-pleaf li{font-size:13.5px;background:var(--lime-s);color:var(--green-d);border-radius:999px;padding:4px 12px}
.grove .gv-pleaf.gv-wide{grid-column:span 3;background:linear-gradient(140deg,var(--green),var(--green-d));color:#fff;border:0}
.grove .gv-pleaf.gv-wide h3{color:#fff}
.grove .gv-pleaf.gv-wide p{color:#d2e8d6}
.grove .gv-pleaf.gv-wide::before{background:rgba(160,214,56,.18)}
.grove .gv-pleaf.gv-wide .gv-ic{background:var(--lime);color:var(--deep)}
.grove .gv-pleaf.gv-wide li{background:rgba(255,255,255,.12);color:#fff;text-align:start;border-radius:12px}
.grove .gv-pleaf.gv-wide ul{flex-direction:column}
.grove .gv-quote{background:var(--deep);color:#fff;text-align:center;overflow:hidden}
.grove .gv-quote .gv-q{font-family:var(--display);font-size:clamp(24px,2.6vw,36px);line-height:1.8;max-width:900px;margin:0 auto}
.grove .gv-quote .gv-q b{color:var(--lime);font-weight:700}
.grove .gv-quote small{display:block;margin-top:18px;color:#a9c7ae;font-size:15px;max-width:760px;margin-inline:auto}
.grove .gv-quote .gv-falling i{opacity:.35}
.grove .gv-goals .gv-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 24px}
.grove .gv-goal{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 20px}
.grove .gv-goal .gv-seed{width:44px;height:44px;flex:none;border-radius:50%;background:var(--lime-s);display:grid;place-items:center;font-weight:800;color:var(--green);position:relative}
.grove .gv-goal .gv-seed::after{content:"";position:absolute;top:-6px;left:50%;width:14px;height:12px;background:var(--lime);border-radius:0 70% 0 70%;transform:translateX(-10%) rotate(-20deg)}
.grove .gv-goal p{font-family:var(--display);font-size:18px;color:var(--deep);line-height:1.6}
.grove .gv-vals{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.grove .gv-vals span{display:inline-flex;align-items:center;gap:10px;padding:12px 22px;border-radius:0 26px 0 26px;background:#fff;border:1px solid var(--line);font-family:var(--display);font-size:19px;color:var(--deep)}
.grove .gv-vals span::before{content:"";width:14px;height:14px;border-radius:0 70% 0 70%;background:var(--green2)}
.grove .gv-aud{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:26px}
.grove .gv-aud span{padding:8px 18px;border-radius:999px;background:var(--lime-s);color:var(--green-d);font-size:15px;font-weight:500}
.grove .gv-gov .gv-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.grove .gv-gdocs{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.grove .gv-gdoc{display:flex;gap:14px;align-items:flex-start;padding:20px;background:#fff;border:1px solid var(--line);border-radius:0 30px 0 30px;transition:.25s}
.grove .gv-gdoc:hover{border-color:var(--green2);transform:translateY(-3px)}
.grove .gv-gdoc .gv-ic{width:44px;height:44px;border-radius:12px;background:var(--lime-s);color:var(--green);display:grid;place-items:center;flex:none}
.grove .gv-gdoc b{font-family:var(--display);font-size:18px;color:var(--deep);display:block}
.grove .gv-gdoc span{color:var(--muted);font-size:13.5px;line-height:1.7}
.grove .gv-gdoc.gv-alert .gv-ic{background:#FBE5DF;color:#C0573C}
.grove .gv-ways{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.grove .gv-way{padding:26px 22px;border-radius:24px;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;gap:8px;transition:.25s;position:relative;overflow:hidden}
.grove .gv-way:hover{border-color:var(--green2)}
.grove .gv-way .gv-ic{width:50px;height:50px;border-radius:0 18px 0 18px;background:var(--green);color:#fff;display:grid;place-items:center;margin-bottom:6px}
.grove .gv-way b{font-family:var(--display);font-size:21px;color:var(--deep)}
.grove .gv-way span{color:var(--muted);font-size:14.5px;line-height:1.8}
.grove .gv-way em{font-style:normal;margin-top:auto;padding-top:8px;font-weight:700;color:var(--green);font-size:14px}
.grove .gv-way.gv-hot{background:linear-gradient(160deg,var(--lime),#C5E87A);border:0}
.grove .gv-way.gv-hot .gv-ic{background:var(--deep)}
.grove .gv-cta .gv-box{position:relative;overflow:hidden;border-radius:36px;background:linear-gradient(180deg,#0E7D2C 0%,#0B6A26 60%,#095A20 100%);color:#fff;padding:60px 60px 30px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}
.grove .gv-cta .gv-box::before{content:"";position:absolute;inset:0;background:radial-gradient(500px 260px at 85% 0%,rgba(160,214,56,.28),transparent 70%),radial-gradient(400px 200px at 10% 30%,rgba(255,255,255,.08),transparent 70%)}
.grove .gv-cta .gv-box > *{position:relative}
.grove .gv-cta h2{color:#fff}
.grove .gv-cta h2 em{color:var(--lime)}
.grove .gv-cta p{color:#d7ecd9;margin:12px 0 24px}
.grove .gv-cta .gv-loc{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:0 40px 0 40px;padding:26px;font-family:var(--display);font-size:22px;line-height:1.6}
.grove .gv-cta .gv-loc small{display:block;font-family:var(--body);font-size:13px;color:#cfe5d2;margin-top:6px}
.grove .gv-ground{grid-column:1/-1;height:280px;margin-top:6px;border-radius:28px;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none;background:radial-gradient(70% 90% at 50% 100%,rgba(255,236,170,.75),transparent 70%),linear-gradient(180deg,#A9DAF0 0%,#D7EEF0 45%,#F6EBCB 75%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.grove .gv-ground .gv-soil{position:absolute;left:0;right:0;bottom:0;width:100%;height:140px;display:block;object-fit:cover;object-position:50% 0}
.grove .gv-ground .gv-sun2{position:absolute;left:12%;top:34px;width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,#FFF4C2,#FFD95E 60%,#F6C443);box-shadow:0 0 40px 14px rgba(255,214,90,.45)}
.grove .gv-patch{position:absolute;translate:-50% -55%;height:auto;pointer-events:none}
.grove .gv-ground .gv-planted{position:absolute;inset:0}
.grove .gv-pt{position:absolute;translate:-50% -91.5%;pointer-events:none}
.grove .gv-pt img{display:block;width:100%;height:auto;transform-origin:50% 91.5%}
.grove .gv-pt .gv-puff{position:absolute;left:50%;top:91.5%;width:70%;height:16px;translate:-50% -50%;border-radius:50%;border:3px solid rgba(214,180,120,.8);opacity:0}
.grove .gv-pt em{position:absolute;left:50%;top:10%;translate:-50% 0;font-style:normal;font-weight:800;color:var(--lime);font-size:18px;opacity:0;text-shadow:0 2px 8px rgba(0,0,0,.3)}
.grove .gv-ground .gv-hint{position:absolute;z-index:400;left:50%;top:40px;translate:-50% 0;display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.75);border:1.5px dashed rgba(13,120,41,.45);color:var(--deep);font-weight:600;border-radius:999px;padding:8px 18px;font-size:14.5px;white-space:nowrap;transition:opacity .4s}
.grove .gv-ground .gv-hint svg.gv-i{width:19px;height:19px;color:var(--green)}
.grove .gv-ground.gv-used .gv-hint{opacity:0}
.grove .gv-ground .gv-tally{position:absolute;right:26px;top:26px;z-index:400;display:flex;align-items:center;gap:12px;opacity:0;transition:opacity .4s}
.grove .gv-ground.gv-used .gv-tally{opacity:1}
.grove .gv-tally span{background:#fff;color:var(--deep);box-shadow:0 10px 20px -12px rgba(11,58,26,.5);border-radius:999px;padding:8px 18px;font-family:var(--display);font-size:18px;font-weight:700}
.grove .gv-tally .gv-made{display:none}
.grove .gv-ground.gv-many .gv-tally .gv-made{display:inline-flex;animation:gv-pop .6s cubic-bezier(.2,.9,.3,1.5) both}
.grove .gv-ghost{position:absolute;left:50%;top:70%;width:38px;height:38px;color:#fff;opacity:0;transition:left .8s cubic-bezier(.4,0,.2,1),top .8s cubic-bezier(.4,0,.2,1),opacity .3s;pointer-events:none;z-index:500;filter:drop-shadow(0 4px 6px rgba(0,0,0,.35))}
.grove .gv-ghost.gv-on{opacity:1}
.grove .gv-ghost::after{content:"";position:absolute;left:4px;top:-2px;width:20px;height:20px;border-radius:50%;border:2px solid #fff;opacity:0}
.grove .gv-ghost.gv-tap::after{animation:gv-ring .6s ease-out}
@keyframes gv-ring{from{opacity:1;scale:.3}to{opacity:0;scale:2}}
@keyframes gv-pop{from{opacity:0;scale:.6}to{opacity:1;scale:1}}
@keyframes gv-ptgrow{0%{transform:scale(0)}60%{transform:scale(1.08,1.14)}100%{transform:scale(1)}}
@keyframes gv-patch{from{scale:0;opacity:0}to{scale:1;opacity:1}}
@keyframes gv-puff{from{opacity:1;scale:.3}to{opacity:0;scale:1.6}}
@keyframes gv-plus{0%{opacity:0;translate:-50% 10px}20%{opacity:1}100%{opacity:0;translate:-50% -40px}}
@media (prefers-reduced-motion:no-preference){
.grove .gv-pt.gv-new img{animation:gv-ptgrow .9s cubic-bezier(.2,.9,.25,1.3) both}
.grove .gv-pt.gv-new .gv-puff{animation:gv-puff .7s ease-out}
.grove .gv-patch.gv-new{animation:gv-patch 1s .15s cubic-bezier(.2,.8,.3,1.2) both}
.grove .gv-pt.gv-new.gv-me em{animation:gv-plus 1.2s ease-out}
.grove .gv-ground .gv-hint svg.gv-i{animation:gv-tapme 1.4s ease-in-out infinite}

}
@keyframes gv-tapme{0%,100%{translate:0 0}50%{translate:0 4px}}
@media (prefers-reduced-motion:no-preference){
.grove .gv-falling i{animation:gv-fall var(--d) linear var(--dl) infinite}
.grove .gv-forest.gv-in .gv-trees i{animation:gv-tree .6s calc(var(--i) * 55ms) cubic-bezier(.2,.8,.25,1.4) backwards}
.grove .gv-forest:not(.gv-in) .gv-trees i{scale:0}
.grove .gv-hero.gv-go .gv-sky-dust{animation:gv-skyd 4.4s both}
.grove .gv-hero.gv-go .gv-sky-storm{animation:gv-storm 4.6s both}
.grove .gv-hero.gv-go .gv-sun{animation:gv-sunw 5s both}
.grove .gv-hero.gv-go .gv-sun .gv-disc::after{animation:gv-hot 4.2s both}
.grove .gv-hero.gv-go .gv-sun .gv-rays{animation:gv-raysin 5.2s both}
.grove .gv-hero.gv-go .gv-rainbow{animation:gv-bow 8s both}
.grove .gv-hero.gv-go .gv-cl.gv-c1{animation:gv-cl1 5s both,gv-drift 18s 5s ease-in-out infinite alternate}
.grove .gv-hero.gv-go .gv-cl .gv-dk{animation:gv-dk 5s both}
.grove .gv-hero.gv-go .gv-cl.gv-c2 .gv-dk,.grove .gv-hero.gv-go .gv-cl.gv-c4 .gv-dk,.grove .gv-hero.gv-go .gv-cl.gv-c5 .gv-dk{animation:gv-dk2 5s both}
.grove .gv-hero.gv-go .gv-cl.gv-c3{animation:gv-cl3 5s both,gv-drift 22s 5s ease-in-out infinite alternate-reverse}
.grove .gv-hero.gv-go .gv-cl.gv-c2{animation:gv-cl2 5s both}
.grove .gv-hero.gv-go .gv-cl.gv-c4{animation:gv-cl4 5s both}
.grove .gv-hero.gv-go .gv-cl.gv-c5{animation:gv-cl5 5s both}
.grove .gv-hero.gv-go .gv-birds{animation:gv-fly 30s 5.2s linear infinite backwards}
.grove .gv-birds svg{animation:gv-flap .5s ease-in-out infinite alternate}
.grove .gv-birds svg:nth-child(2){animation-delay:-.2s}
.grove .gv-birds svg:nth-child(3){animation-delay:-.35s}
.grove .gv-hero.gv-go .gv-haze{animation:gv-haze 2.6s both}
.grove .gv-hero.gv-go .gv-rain{animation:gv-rainw 4s both}
.grove .gv-rain i{animation:gv-drop var(--sp) linear var(--dl) infinite}
.grove .gv-rain::before{animation:gv-sheet .35s linear infinite}
.grove .gv-hero.gv-go .gv-ly.gv-green{animation:gv-greenin 2.2s var(--dl) both}
.grove .gv-hero.gv-go .gv-mist{animation:gv-mist 4.4s both}
.grove .gv-hero.gv-go .gv-water{animation:gv-sweep 2s 2.3s cubic-bezier(.3,.6,.3,1) both}
.grove .gv-hero.gv-go .gv-tr{animation:gv-sprout 1.3s var(--d) cubic-bezier(.2,.9,.25,1.15) both}
.grove .gv-hero.gv-go .gv-grass{animation:gv-sweep 2.2s 3.2s cubic-bezier(.4,0,.2,1) both}
.grove .gv-hero.gv-go .gv-glint{animation:gv-glintin2 4.4s both}
.grove .gv-splash b{animation:gv-splash .7s ease-out var(--dl) infinite}
.grove .gv-hero.gv-go .gv-rays2{animation:gv-raysin2 5.4s both}
.grove .gv-pollen i{animation:gv-float var(--du) ease-in-out var(--dl) infinite}
.grove .gv-hero.gv-go .gv-pollen{animation:gv-raysin2 6.4s both}
.grove .gv-hero.gv-go .gv-fg.gv-dry{animation:gv-fgdry 3.4s both}
.grove .gv-hero.gv-go .gv-fg.gv-green{animation:gv-fgin 2.4s 2.4s both}
.grove .gv-fg.gv-green{animation:gv-fgsway 5s ease-in-out infinite alternate}
.grove .gv-hero.gv-go .gv-fg.gv-green{animation:gv-fgin 2.4s 2.4s both,gv-fgsway 5s ease-in-out 4.8s infinite alternate}
.grove .gv-hero.gv-go .gv-flowers{animation:gv-flowersin 1.6s 4.4s ease-out both}
.grove .gv-hero.gv-go .gv-bf.gv-b1{animation:gv-bf1 16s 5.6s ease-in-out infinite backwards}
.grove .gv-hero.gv-go .gv-bf.gv-b2{animation:gv-bf2 19s 6.2s ease-in-out infinite backwards}
.grove .gv-bf svg{animation:gv-wing .2s ease-in-out infinite alternate}
.grove .gv-hero.gv-go .gv-badge{animation:gv-up .8s .1s cubic-bezier(.2,.7,.2,1) backwards}
.grove .gv-hero.gv-go h1 .gv-l1{animation:gv-up .8s .25s cubic-bezier(.2,.7,.2,1) backwards}
.grove .gv-hero.gv-go h1 .gv-l2{animation:gv-up .9s .4s cubic-bezier(.2,.7,.2,1) backwards}
.grove .gv-hero.gv-go h1 .gv-gw{animation:gv-gfill 2.8s 1.6s cubic-bezier(.45,0,.25,1) both}
.grove .gv-hero.gv-go h1 .gv-sprout{animation:gv-grow 1.1s 4.3s cubic-bezier(.2,.8,.25,1.3) backwards,gv-sway2 4s 5.4s ease-in-out infinite}
.grove .gv-hero.gv-go .gv-sprout .gv-lf1{transform-origin:28px 42px;animation:gv-open 1s 4.8s cubic-bezier(.2,.8,.25,1.3) backwards}
.grove .gv-hero.gv-go .gv-sprout .gv-lf2{transform-origin:32px 36px;animation:gv-open 1s 5s cubic-bezier(.2,.8,.25,1.3) backwards}
.grove .gv-hero.gv-go .gv-lead{animation:gv-up .8s .7s cubic-bezier(.2,.7,.2,1) backwards}
.grove .gv-hero.gv-go .gv-ctas{animation:gv-up .8s .85s cubic-bezier(.2,.7,.2,1) backwards}
.grove .gv-hero.gv-go .gv-places{animation:gv-up .8s 5.6s cubic-bezier(.2,.7,.2,1) backwards}
.grove .gv-hero.gv-go .gv-tl{animation:gv-up .8s .5s cubic-bezier(.2,.7,.2,1) backwards}
.grove .gv-hero.gv-go .gv-tl-bar s{animation:gv-bar 5.8s .4s cubic-bezier(.45,.05,.4,1) both}
.grove .gv-hero.gv-go .gv-tl .gv-dot{animation:gv-dot 6s both}
.grove .gv-hero.gv-go .gv-tl-st .gv-s1{animation:gv-st1 6s both}
.grove .gv-hero.gv-go .gv-tl-st .gv-s2{animation:gv-st2 6s both}
.grove .gv-hero.gv-go .gv-tl-st .gv-s3{animation:gv-st3 6s both}
.grove .gv-hero.gv-go .gv-tl-st .gv-s4{animation:gv-st4 6s both}
.grove .gv-hero.gv-go .gv-cnt{animation:gv-count 3.4s 2.6s cubic-bezier(.3,.1,.3,1) both}
.grove .gv-rv{opacity:0;translate:0 26px;transition:opacity .8s cubic-bezier(.2,.7,.2,1),translate .8s cubic-bezier(.2,.7,.2,1)}
.grove .gv-rv.gv-in{opacity:1;translate:0 0}
.grove .gv-pleaf.gv-rv{translate:0 0;scale:.85;transform-origin:100% 0;transition:opacity .8s,scale .8s cubic-bezier(.2,.8,.25,1.2)}
.grove .gv-pleaf.gv-rv.gv-in{scale:1}

}
@keyframes gv-fall{0%{transform:translate(0,0) rotate(0)}25%{transform:translate(var(--sw),25vh) rotate(calc(var(--r) * .3))}50%{transform:translate(0,50vh) rotate(calc(var(--r) * .6))}75%{transform:translate(calc(var(--sw) * -1),75vh) rotate(calc(var(--r) * .85))}100%{transform:translate(0,105vh) rotate(var(--r))}}
@keyframes gv-up{from{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}
@keyframes gv-bloom{from{opacity:0;transform:scale(.6);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@keyframes gv-grow{from{transform:scaleY(0)}}
@keyframes gv-sway{0%,100%{rotate:-4deg}50%{rotate:5deg}}
@keyframes gv-open{from{transform:scale(0)}}
@keyframes gv-leafin{from{opacity:0;transform:rotate(-14deg) scale(.7)}to{opacity:1;transform:none}}
@keyframes gv-breath{from{transform:scale(1)}to{transform:scale(1.1)}}
@keyframes gv-spin{to{transform:rotate(360deg)}}
@keyframes gv-drawv{to{stroke-dashoffset:0}}
@keyframes gv-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes gv-tree{from{scale:0}to{scale:1}}
@keyframes gv-skyd{0%,52%{opacity:1}90%,100%{opacity:0}}
@keyframes gv-storm{0%,14%{opacity:0}30%,66%{opacity:.8}92%,100%{opacity:0}}
@keyframes gv-sunw{0%{opacity:1}16%{opacity:.9}30%,66%{opacity:.12}86%{opacity:1;transform:scale(1.08)}100%{opacity:1;transform:none}}
@keyframes gv-hot{0%,22%{opacity:1}44%,100%{opacity:0}}
@keyframes gv-raysin{0%,74%{opacity:0}100%{opacity:1}}
@keyframes gv-bow{0%,50%{opacity:0;clip-path:inset(0 0 0 100%)}68%{opacity:.7;clip-path:inset(0 0 0 0)}100%{opacity:.34;clip-path:inset(0 0 0 0)}}
@keyframes gv-cl1{0%{translate:-45vw 0;scale:1.4}26%,62%{translate:16vw -12vh;scale:1.7}100%{translate:0 0;scale:1}}
@keyframes gv-cl3{0%{translate:45vw 0;scale:1.4}26%,62%{translate:-12vw 6vh;scale:1.6}100%{translate:0 0;scale:1}}
@keyframes gv-cl2{0%{opacity:0;translate:-60vw 0}26%,62%{opacity:1;translate:0 0}100%{opacity:0;translate:-70vw -6vh}}
@keyframes gv-cl4{0%{opacity:0;translate:60vw 0}26%,62%{opacity:1;translate:0 0}100%{opacity:0;translate:70vw -4vh}}
@keyframes gv-cl5{0%{opacity:0;translate:-50vw 4vh}28%,60%{opacity:.95;translate:0 0}100%{opacity:0;translate:-60vw 0}}
@keyframes gv-dk{0%,62%{opacity:1}100%{opacity:0}}
@keyframes gv-dk2{0%,70%{opacity:1}100%{opacity:.3}}
@keyframes gv-greenin{from{opacity:0}to{opacity:1}}
@keyframes gv-wetsand{0%{filter:none}35%,100%{filter:brightness(.78) saturate(1.2)}}
@keyframes gv-mist{0%,26%{opacity:0}40%,70%{opacity:1}95%,100%{opacity:0}}
@keyframes gv-sweep{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}
@keyframes gv-flowersin{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes gv-sheet{from{transform:translate(0,0)}to{transform:translate(-44px,160px)}}
@keyframes gv-drift{from{transform:translateX(0)}to{transform:translateX(40px)}}
@keyframes gv-fly{0%{translate:30vw 0}50%{translate:-50vw 3vh}100%{translate:-120vw -2vh}}
@keyframes gv-flap{from{transform:scaleY(1)}to{transform:scaleY(.3)}}
@keyframes gv-haze{0%,40%{opacity:1;background-position:0 0,0 0}100%{opacity:0;background-position:-120px 0,-300px 0}}
@keyframes gv-rainw{0%,26%{opacity:0}34%,80%{opacity:1}92%,100%{opacity:0}}
@keyframes gv-drop{from{translate:0 0}to{translate:-240px 980px}}
@keyframes gv-wet{0%{stop-color:var(--s)}45%{stop-color:var(--w)}100%{stop-color:var(--g)}}
@keyframes gv-bush{from{fill:var(--s)}to{fill:var(--g)}}
@keyframes gv-bed{0%{stroke:#CBA870}40%{stroke:#8E7550}100%{stroke:#3F8A3B}}
@keyframes gv-flow{from{stroke-dashoffset:-1}to{stroke-dashoffset:0}}
@keyframes gv-glint{to{stroke-dashoffset:-.128}}
@keyframes gv-glintin{0%,92%{opacity:0}100%{opacity:.85}}
@keyframes gv-sprout{0%{transform:scale(0)}60%{transform:scale(1.06,1.12)}100%{transform:scale(1)}}
@keyframes gv-sway{0%,100%{rotate:-1.2deg}50%{rotate:1.4deg}}
@keyframes gv-grass{from{transform:scaleY(0)}to{transform:none}}
@keyframes gv-flower{from{transform:scale(0) rotate(-90deg)}to{transform:none}}
@keyframes gv-bfin{from{opacity:0}to{opacity:1}}
@keyframes gv-bf1{0%{translate:0 0;opacity:0}5%{opacity:1}20%{translate:-60px -40px}40%{translate:-20px -90px}60%{translate:70px -50px}80%{translate:30px 10px}95%{opacity:1}100%{translate:0 0;opacity:0}}
@keyframes gv-bf2{0%{translate:0 0;opacity:0}5%{opacity:1}25%{translate:80px -60px}50%{translate:20px -110px}75%{translate:-60px -40px}95%{opacity:1}100%{translate:0 0;opacity:0}}
@keyframes gv-wing{from{transform:scaleX(1)}to{transform:scaleX(.3)}}
@keyframes gv-gfill{from{--gv-fill:-8%}to{--gv-fill:100%}}
@keyframes gv-sway2{0%,100%{rotate:-4deg}50%{rotate:5deg}}
@keyframes gv-bar{from{width:0}to{width:100%}}
@keyframes gv-dot{0%,18%{background:#D9A85C;box-shadow:0 0 0 5px rgba(217,168,92,.25)}24%,56%{background:#4FA9DE;box-shadow:0 0 0 5px rgba(79,169,222,.25)}62%,90%{background:#8CCB4B;box-shadow:0 0 0 5px rgba(140,203,75,.25)}96%,100%{background:#2FA84F;box-shadow:0 0 0 5px rgba(47,168,79,.18)}}
@keyframes gv-st1{0%,17%{opacity:1;translate:0 0}21%,100%{opacity:0;translate:0 -12px}}
@keyframes gv-st2{0%,18%{opacity:0;translate:0 12px}22%,56%{opacity:1;translate:0 0}60%,100%{opacity:0;translate:0 -12px}}
@keyframes gv-st3{0%,57%{opacity:0;translate:0 12px}61%,90%{opacity:1;translate:0 0}94%,100%{opacity:0;translate:0 -12px}}
@keyframes gv-st4{0%,91%{opacity:0;translate:0 12px}96%,100%{opacity:1;translate:0 0}}
@keyframes gv-count{from{--gv-n:0}to{--gv-n:var(--gv-goal)}}
@keyframes gv-wind{0%{transform:rotate(-1.4deg) skewX(1deg)}100%{transform:rotate(1.1deg) skewX(-.8deg)}}
@keyframes gv-gsway{0%{opacity:0}100%{opacity:1}}
@keyframes gv-gsway2{0%{opacity:1}100%{opacity:.25}}
@keyframes gv-glintm{0%{opacity:.35;transform:translateX(-6px)}100%{opacity:.95;transform:translateX(6px)}}
@keyframes gv-glintin2{0%,90%{opacity:0}100%{opacity:.35}}
@keyframes gv-splash{0%{opacity:.9;scale:.15}100%{opacity:0;scale:1.6}}
@keyframes gv-raysdrift{from{transform:translateX(0)}to{transform:translateX(90px)}}
@keyframes gv-raysin2{0%,70%{opacity:0}100%{opacity:.75}}
@keyframes gv-float{0%{translate:0 0}25%{translate:30px -24px}50%{translate:-10px -50px}75%{translate:-34px -20px}100%{translate:0 0}}
@keyframes gv-fgdry{0%,45%{opacity:.9}80%,100%{opacity:0}}
@keyframes gv-fgin{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes gv-fgsway{from{rotate:-1deg}to{rotate:1.2deg}}
@media (max-width:960px){
.grove .gv-hero{min-height:0;display:flex;flex-direction:column}
.grove .gv-hero-in{order:1;padding-top:26px}
.grove .gv-hero-in::before{inset:-10px -10% -20px}
.grove h1{font-size:clamp(50px,14.5vw,66px)}
.grove h1 .gv-l1{font-size:.56em}
.grove .gv-lead{font-size:16px;margin:12px auto 20px}
.grove .gv-ctas .gv-btn{flex:1;justify-content:center;padding:13px 14px}
.grove .gv-badge{border-radius:16px;font-size:12.5px;text-align:start}
.grove .gv-places{order:2;position:relative;right:auto;bottom:auto;flex-direction:row;flex-wrap:wrap;justify-content:center;margin:16px 18px 0;z-index:3}
.grove .gv-places span{font-size:12.5px;padding:5px 12px}
.grove .gv-landbox{order:3;position:relative;top:auto;height:300px;margin-top:-6px}
.grove .gv-tl{left:12px;right:12px;bottom:12px;width:auto;padding:10px 14px}
.grove .gv-tl-st b{font-size:17px}
.grove .gv-tl-bar{margin:6px 0 2px}
.grove .gv-tl-n{display:none}
.grove .gv-sun{width:110px;height:110px;top:2%;left:-6%}
.grove .gv-sun .gv-rays{inset:-80px}
.grove .gv-rainbow{top:52%;width:130vw;right:-50%}
.grove .gv-cl.gv-c1{top:44%;width:170px}
.grove .gv-cl.gv-c3{top:2%;width:210px}
.grove .gv-cl.gv-c2,.grove .gv-cl.gv-c4,.grove .gv-cl.gv-c5{width:300px}
.grove .gv-birds{top:31%;right:6%}
.grove .gv-bf{width:16px;height:13px}
.grove .gv-fg{width:62vw;bottom:-4px}
.grove .gv-rays2{opacity:.5}
.grove section{padding:66px 0}
.grove .gv-forest .gv-grid{grid-template-columns:minmax(0,1fr);gap:30px}
.grove .gv-targets{grid-template-columns:1fr 1fr}
.grove .gv-targets div{padding:20px 14px 0;border-top:1px solid rgba(255,255,255,.12)}
.grove .gv-targets div:nth-child(odd){border-inline-start:0}
.grove .gv-targets b{font-size:30px}
.grove .gv-head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:30px}
.grove .gv-about .gv-grid,.grove .gv-gov .gv-grid,.grove .gv-cta .gv-box{grid-template-columns:minmax(0,1fr);gap:30px}
.grove .gv-about figure img{height:300px}
.grove .gv-vm{grid-template-columns:minmax(0,1fr)}
.grove .gv-pgrid{grid-template-columns:minmax(0,1fr)}
.grove .gv-pleaf,.grove .gv-pleaf.gv-wide{grid-column:auto!important}
.grove .gv-goals .gv-list{grid-template-columns:minmax(0,1fr)}
.grove .gv-gdocs{grid-template-columns:minmax(0,1fr)}
.grove .gv-ways{grid-template-columns:1fr 1fr}
.grove .gv-cta .gv-box{padding:34px 18px 18px;border-radius:26px}
.grove .gv-ground{height:250px;border-radius:20px}
.grove .gv-ground .gv-sun2{width:44px;height:44px;top:70px;left:8%}
.grove .gv-ground .gv-tally{right:14px;left:14px;top:14px;flex-wrap:wrap;justify-content:center;gap:8px}
.grove .gv-tally span{font-size:16px;padding:6px 14px}
.grove .gv-ground.gv-many .gv-hint{display:none}

}
@media (max-width:420px){
.grove .gv-ways{grid-template-columns:minmax(0,1fr)}
}


/* ===== إضافات النظام (ما كانت في النموذج) ===== */
.grove .gv-badge b{display:grid;place-items:center;width:30px;height:24px}
.grove .gv-badge b svg{width:15px;height:15px;stroke:var(--deep)}
.grove .gv-targets{grid-template-columns:repeat(var(--cols),1fr)}
.grove .gv-about .gv-grid.gv-solo,.grove .gv-about.gv-solo .gv-grid{grid-template-columns:minmax(0,1fr)}
.grove .gv-about .gv-solo{grid-template-columns:minmax(0,1fr)}
.grove .gv-more{margin-top:22px}
.grove .gv-on-dark{color:var(--lime);justify-content:center}
.grove .gv-sub{color:var(--muted);margin:14px 0 26px;max-width:440px}
.grove .gv-goal small{display:block;color:var(--muted);font-size:14px;line-height:1.7}
.grove .gv-loc b{display:block;font-weight:600;margin-bottom:10px}
.grove .gv-loc a{display:flex;align-items:center;gap:8px;font-family:var(--body);font-size:15px;color:#e3f1e5;margin-top:6px}
.grove .gv-loc a svg.gv-i{width:18px;height:18px;color:var(--lime)}
.grove .gv-pj{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.grove .gv-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:0 40px 0 40px;overflow:hidden;transition:.3s}
.grove .gv-card:hover{transform:translateY(-4px);box-shadow:0 24px 40px -24px rgba(11,58,26,.45)}
.grove .gv-art{position:relative;display:grid;place-items:center;height:190px;background:var(--lime-s);color:var(--green)}
.grove .gv-art img{width:100%;height:100%;object-fit:cover}
.grove .gv-art svg.gv-i{width:46px;height:46px}
.grove .gv-state{position:absolute;top:12px;right:12px;background:#fff;color:var(--green-d);border-radius:999px;padding:3px 12px;font-size:12.5px;font-weight:700}
.grove .gv-state.gv-done{background:var(--green);color:#fff}
.grove .gv-bd{display:flex;flex-direction:column;gap:6px;padding:18px 20px 22px}
.grove .gv-bd h3{font-family:var(--display);font-size:20px;color:var(--deep);line-height:1.45}
.grove .gv-meta{color:var(--muted);font-size:14px;line-height:1.7}
.grove .gv-pg{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);margin-top:6px}
.grove .gv-pg b{color:var(--green)}
.grove .gv-bar{height:8px;border-radius:9px;background:#E7E1CF;overflow:hidden}
.grove .gv-bar i{display:block;height:100%;border-radius:9px;background:linear-gradient(270deg,var(--lime),var(--green2))}
.grove .gv-prow{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.grove .gv-pt-chip{display:inline-flex;align-items:center;min-height:54px;padding:8px 20px;background:#fff;border:1px solid var(--line);border-radius:0 22px 0 22px;font-family:var(--display);color:var(--deep)}
.grove .gv-pt-chip img{max-height:38px;width:auto}
.grove .gv-pt-chip.gv-add{border-style:dashed;color:var(--green)}
@media (max-width:960px){
  .grove .gv-pj{grid-template-columns:minmax(0,1fr)}
  .grove .gv-targets{grid-template-columns:1fr 1fr}
}

/* ==================================================================
   الصفحات الداخلية بطابع الغرس: صدر بسماء الصبح وتلال خضراء وشجرة سمر، وبطاقات بشكل الورقة،
   وأزرار خضراء، والصفحة تنتهي بتلال قبل التذييل. (يطبّق على كل الصفحات، والرئيسية لها مشهدها الخاص.)
   ================================================================== */
[data-skin="grove"]{
  --gv-cream:#F7F5EC; --gv-sand:#EFE9D8; --gv-deep:var(--b950); --gv-green:var(--b600); --gv-lime:var(--c300);
  --ink:#1C2A1F; --ink-2:#4E5D51; --ink-3:#768478;
  --line:color-mix(in oklab,var(--b600) 15%,transparent); --line-2:color-mix(in oklab,var(--b600) 26%,transparent);
  --raised:var(--gv-sand); --radius:18px; --radius-lg:24px;
}
[data-skin="grove"] body::before{background:radial-gradient(60rem 30rem at 90% -8%,rgba(244,197,66,.10),transparent 62%),radial-gradient(50rem 30rem at 5% 30%,color-mix(in oklab,var(--b300) 8%,transparent),transparent 60%)}

/* صدر الصفحة: سماء وتلال */
[data-skin="grove"] .phead{
  --ink:var(--gv-deep);--ink-2:#3F5A45;--ink-3:#6D7F70;--p:var(--b700);
  --p-soft:color-mix(in oklab,var(--b600) 10%,transparent);--p-line:color-mix(in oklab,var(--b600) 30%,transparent);
  color:var(--gv-deep);border-bottom:0;
  background:linear-gradient(180deg,#F6E2B8 0%,#F9EDD3 42%,#FBF5E6 70%,var(--gv-cream) 100%);
  padding-block:clamp(56px,7vw,86px) 168px;
}
[data-skin="grove"] .phead .hx-bg,[data-skin="grove"] .phead .phead-glow,[data-skin="grove"] .phead::after{display:none}
[data-skin="grove"] .phead h1{color:var(--gv-deep);font-weight:700}
[data-skin="grove"] .phead p{color:#3F5A45}
[data-skin="grove"] .phead .crumb a:hover{color:var(--b700)}
[data-skin="grove"] .phead-ref{background:rgba(255,255,255,.75);border-color:var(--p-line);color:#3F5A45;backdrop-filter:blur(6px)}
[data-skin="grove"] .phead .wrap{z-index:2}
.gvp-art{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.gvp-sun{position:absolute;top:-70px;left:clamp(10px,8vw,140px);width:clamp(220px,26vw,360px);opacity:.75}
.gvp-cloud{position:absolute;height:auto;opacity:.82}
.gvp-c1{top:clamp(18px,3vw,40px);left:32%;width:clamp(150px,16vw,230px)}
.gvp-c2{top:clamp(60px,7vw,96px);left:4%;width:clamp(120px,13vw,190px);opacity:.6}
.gvp-hills{position:absolute;inset-inline:0;bottom:0;height:150px;
  background:url(../themes/grove/far-green.webp) center bottom 0/100% 190px no-repeat,url(../themes/grove/mid-green.webp) center bottom 0/100% 210px no-repeat,url(../themes/grove/near-green.webp) center bottom -10px/100% 220px no-repeat}
.gvp-tree{position:absolute;bottom:58px;left:clamp(30px,13vw,240px);width:clamp(96px,10vw,140px);height:auto;filter:drop-shadow(0 10px 8px rgba(30,60,20,.2))}

/* العناوين بورقة شجر */
[data-skin="grove"] .eyebrow{color:var(--b700);font-family:var(--display);font-size:15px}
[data-skin="grove"] .eyebrow::before{width:14px;height:14px;border-radius:0 70% 0 70%;background:var(--gv-lime);box-shadow:inset 0 0 0 1.5px var(--b600)}
[data-skin="grove"] .sec-head h2,[data-skin="grove"] .prose h2,[data-skin="grove"] .doc-group{color:var(--gv-deep)}
[data-skin="grove"] .grad-text{background:none;color:var(--b500)}

/* البطاقات بشكل الورقة */
[data-skin="grove"] :is(.card-x,.tile,.srv-card,.pr,.sp,.person,.vm-card,.pgm-row,.pj-card,.post-card,.vid,.gal-card,.side-nav,.blank,.gtab,.dept,.docs,.org-tier){
  background:#fff;border:1px solid var(--line);box-shadow:0 18px 40px -30px rgba(11,58,26,.45);
}
[data-skin="grove"] :is(.tile,.srv-card,.pr,.sp,.person,.vm-card,.gtab,.dept){border-radius:0 34px 0 34px}
[data-skin="grove"] :is(.pj-card,.post-card,.gal-card,.vid){border-radius:24px 24px 24px 6px;overflow:hidden}
[data-skin="grove"] :is(.tile,.srv-card,.sp,.person)::before{background:linear-gradient(135deg,var(--b500),var(--gv-lime))}
[data-skin="grove"] :is(.tile,.srv-card,.sp,.person,.pj-card,.post-card,.vid,.gal-card,.gtab,.pr):hover{border-color:color-mix(in oklab,var(--b600) 40%,transparent);box-shadow:0 26px 50px -30px rgba(11,58,26,.6)}
[data-skin="grove"] .gtab.on{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,var(--b500),var(--gv-lime)) border-box}
[data-skin="grove"] .side-nav a.on{background:color-mix(in oklab,var(--gv-lime) 30%,#fff);color:var(--b800)}
[data-skin="grove"] .ico{border-radius:0 16px 0 16px;background:color-mix(in oklab,var(--gv-lime) 28%,#fff);color:var(--b700);border-color:color-mix(in oklab,var(--b600) 25%,transparent)}
[data-skin="grove"] .dept{border-inline-start:1px solid var(--line);border-top:4px solid var(--b500)}
[data-skin="grove"] .org-tier.top{background:linear-gradient(135deg,var(--b700),var(--b500))}
[data-skin="grove"] .band{background:linear-gradient(180deg,var(--gv-sand),var(--gv-cream));border-block:0}
[data-skin="grove"] .blank svg{color:var(--b500);opacity:.8}
[data-skin="grove"] .doc:hover{background:#F6F9EE}
[data-skin="grove"] .meter span{background:linear-gradient(90deg,var(--b600),var(--gv-lime))}

/* الأزرار خضراء مدوّرة */
[data-skin="grove"] :is(.btn-pri,.submit,.mt-go,.head-cta,.doc-open,.c-tabs a.on,.filt.on,.pager .current){background:var(--b600);color:#fff;border-color:transparent}
[data-skin="grove"] :is(.btn-pri,.submit,.head-cta,.btn-ghost,.filt,.doc-open){border-radius:999px}
[data-skin="grove"] :is(.btn-pri,.submit,.head-cta,.doc-open):hover{background:var(--b700);box-shadow:0 14px 30px -14px rgba(13,120,41,.8)}
[data-skin="grove"] .head-store{color:var(--b700);border-color:color-mix(in oklab,var(--b600) 45%,transparent);border-radius:999px}

/* النماذج */
[data-skin="grove"] :is(main form,main .mt){background:#fff;border-color:var(--line-2);border-radius:28px;box-shadow:0 30px 60px -40px rgba(11,58,26,.55)}
[data-skin="grove"] :is(.field input,.field select,.field textarea,.radio,.agree,.up input[type="file"]){background:var(--gv-cream);border-color:var(--line-2)}
[data-skin="grove"] :is(.field input,.field select,.field textarea):focus{background:#fff;border-color:var(--b600);box-shadow:0 0 0 4px color-mix(in oklab,var(--gv-lime) 40%,transparent)}

/* الصفحة تنتهي بتلال خضراء فوق التذييل (الرئيسية لها مشهدها) */
[data-skin="grove"] main:not(:has(.grove))::after{
  content:"";display:block;height:150px;margin-top:clamp(20px,4vw,50px);
  background:url(../themes/grove/far-green.webp) center bottom 0/100% 190px no-repeat,url(../themes/grove/mid-green.webp) center bottom 0/100% 210px no-repeat,url(../themes/grove/near-green.webp) center bottom -10px/100% 220px no-repeat;
}
[data-skin="grove"] .site-foot{background:linear-gradient(180deg,#2E5212 0,color-mix(in oklab,var(--b950) 80%,#0B2410) 120px,var(--b950))}
[data-skin="grove"] .site-foot::before{display:none}
[data-skin="grove"] .site-foot .foot-col h3::before,[data-skin="grove"] .site-foot .foot-nav a::before{border-radius:0 70% 0 70%;width:12px;height:12px;background:var(--gv-lime)}

@media (max-width:760px){
  [data-skin="grove"] .phead{padding-bottom:128px}
  .gvp-hills,[data-skin="grove"] main:not(:has(.grove))::after{height:110px;background-size:100% 130px,100% 150px,100% 160px}
  .gvp-tree{width:76px;left:10px;bottom:40px}
  .gvp-c1{left:40%}
  .gvp-sun{left:-40px;top:-90px}
}
