/* سبزآرا — Sabzara design system */
:root{
  --g950:#0a2a1c; --g900:#0e3b24; --g800:#14532d; --g600:#1b7a43; --g500:#2e9e5b;
  --gold:#c9a227; --gold2:#e7c95c; --cream:#faf6ee; --paper:#fffdf8; --ink:#1c2420; --mut:#5d6d63;
  --rad:22px; --sh:0 18px 40px rgba(10,42,28,.14); --sh2:0 8px 22px rgba(10,42,28,.10);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Vazirmatn',Tahoma,sans-serif;background:var(--cream);color:var(--ink);line-height:1.9;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--g800);text-decoration:none}
.wrap{width:min(1180px,92%);margin-inline:auto}
h1,h2,h3{line-height:1.5;color:var(--g950)}
.sec{padding:84px 0}
.sec-t{text-align:center;margin-bottom:42px}
.sec-t .k{color:var(--g600);font-weight:800;letter-spacing:.5px;font-size:.9rem}
.sec-t h2{font-size:clamp(1.5rem,3.4vw,2.2rem);margin:.3rem 0 .4rem}
.sec-t p{color:var(--mut);max-width:640px;margin-inline:auto}
.leaf-div{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px}
.leaf-div::before,.leaf-div::after{content:"";height:2px;width:64px;background:linear-gradient(90deg,transparent,var(--gold))}
.leaf-div::after{background:linear-gradient(90deg,var(--gold),transparent)}
.leaf-div span{font-size:1.15rem}
/* header */
header{position:fixed;inset-inline:0;top:0;z-index:60;transition:.35s;padding:16px 0}
header.scrolled{background:rgba(250,246,238,.92);backdrop-filter:blur(10px);box-shadow:var(--sh2);padding:8px 0}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px}
.logo{display:flex;align-items:center;gap:10px;font-weight:900;font-size:1.35rem;color:#fff}
header.scrolled .logo{color:var(--g950)}
.logo .lg{width:42px;height:42px;border-radius:50%;background:var(--g600);display:grid;place-items:center;font-size:1.2rem;border:2px solid var(--gold)}
nav.main{display:flex;gap:20px}
nav.main a{color:#eaf5ec;font-weight:600;font-size:.98rem;position:relative;padding:4px 2px}
nav.main a::after{content:"";position:absolute;bottom:0;right:0;width:0;height:2px;background:var(--gold);transition:.3s}
nav.main a:hover::after{width:100%}
header.scrolled nav.main a{color:var(--g900)}
.btn{display:inline-block;background:linear-gradient(135deg,var(--g600),var(--g800));color:#fff;padding:12px 26px;border-radius:999px;font-weight:800;box-shadow:var(--sh2);transition:.3s;border:0;cursor:pointer;font-family:inherit;font-size:1rem}
.btn:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.btn.gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#3a2f05}
.btn.ghost{background:transparent;border:2px solid #fff;color:#fff;box-shadow:none}
.btn.sm{padding:9px 20px;font-size:.92rem}
@media(max-width:820px){nav.main{display:none}}
/* hero */
.hero{position:relative;min-height:96vh;display:grid;place-items:center;text-align:center;color:#fff;overflow:hidden;background:var(--g950)}
.hero .bg{position:absolute;inset:-12% 0;background-size:cover;background-position:center;will-change:transform;filter:brightness(.62)}
.hero .shade{position:absolute;inset:0;background:radial-gradient(70% 60% at 50% 38%,rgba(20,83,45,.25),rgba(10,42,28,.88)),linear-gradient(180deg,rgba(10,42,28,.35),rgba(10,42,28,.92))}
.hero .inner{position:relative;z-index:3;padding:130px 0 90px;max-width:820px}
.hero h1{color:#fff;font-size:clamp(1.9rem,5.4vw,3.4rem);margin-bottom:14px}
.hero h1 .hl{background:linear-gradient(90deg,var(--gold2),#ffe9a3);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{color:#dcefe0;font-size:clamp(1rem,2.2vw,1.2rem);max-width:640px;margin:0 auto 26px}
.hero .cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.petal{position:absolute;top:-4vh;z-index:2;color:#bfe6c8;opacity:.5;animation:fall linear infinite;pointer-events:none}
@keyframes fall{to{transform:translateY(112vh) rotate(340deg)}}
.scrolldown{position:absolute;bottom:22px;right:50%;transform:translateX(50%);z-index:3;color:#fff;font-size:1.5rem;animation:bob 1.8s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translate(50%,0)}50%{transform:translate(50%,10px)}}
/* marquee */
.marquee{background:var(--g900);color:#e7f2e9;overflow:hidden;padding:12px 0;border-block:3px solid var(--gold)}
.marquee .track{display:flex;gap:44px;width:max-content;animation:mq 30s linear infinite;font-weight:700;white-space:nowrap}
@keyframes mq{to{transform:translateX(50%)}}
/* cards */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:26px}
.card{background:var(--paper);border-radius:var(--rad);overflow:hidden;box-shadow:var(--sh2);transition:.4s;display:flex;flex-direction:column}
.card:hover{transform:translateY(-9px);box-shadow:var(--sh)}
.card .ph{position:relative;overflow:hidden;aspect-ratio:16/10}
.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.card:hover .ph img{transform:scale(1.09)}
.card .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,42,28,.45))}
.card .bd{padding:20px 22px 24px;display:flex;flex-direction:column;gap:8px;flex:1}
.card h3{font-size:1.18rem}
.card p{color:var(--mut);font-size:.95rem;flex:1}
.card .go{font-weight:800;color:var(--g600)}
.card .go::after{content:" ←";transition:.3s}
.card:hover .go::after{margin-right:5px}
/* stats */
.stats{background:linear-gradient(135deg,var(--g900),var(--g800));border-radius:28px;color:#fff;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;padding:36px 26px;box-shadow:var(--sh)}
.stats .st{text-align:center}
.stats .num{font-size:2.1rem;font-weight:900;color:var(--gold2)}
.stats .lbl{color:#cfe6d4;font-size:.95rem}
/* steps */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.step{background:var(--paper);border-radius:var(--rad);padding:28px 22px;box-shadow:var(--sh2);text-align:center;position:relative}
.step .n{width:54px;height:54px;margin:0 auto 12px;border-radius:50%;background:linear-gradient(135deg,var(--g600),var(--g800));color:#fff;display:grid;place-items:center;font-size:1.3rem;font-weight:900;border:3px solid var(--gold)}
/* faq */
.faq{max-width:780px;margin-inline:auto}
.faq details{background:var(--paper);border-radius:16px;box-shadow:var(--sh2);margin-bottom:12px;padding:6px 20px}
.faq summary{cursor:pointer;font-weight:800;padding:12px 0;color:var(--g900)}
.faq details p{color:var(--mut);padding-bottom:14px}
/* page hero (inner pages) */
.phero{position:relative;padding:150px 0 70px;text-align:center;color:#fff;background-size:cover;background-position:center;overflow:hidden}
.phero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,42,28,.72),rgba(10,42,28,.88))}
.phero .wrap{position:relative;z-index:2}
.phero h1{color:#fff;font-size:clamp(1.6rem,4.4vw,2.6rem)}
.phero p{color:#dcefe0;max-width:620px;margin:8px auto 0}
.crumb{font-size:.88rem;color:#bcd8c2;margin-bottom:10px}
.crumb a{color:#e7c95c}
/* care table */
.care{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin:26px 0}
.care .c{background:var(--paper);border-radius:16px;box-shadow:var(--sh2);padding:16px;text-align:center}
.care .c .ic{font-size:1.5rem}
.care .c b{display:block;color:var(--g900);margin:4px 0}
.care .c span{color:var(--mut);font-size:.9rem}
article.txt p{margin-bottom:14px;color:#37423b}
article.txt h2{margin:26px 0 8px;font-size:1.35rem}
article.txt ul{margin:0 20px 14px;color:#37423b}
/* form */
form.order{background:var(--paper);border-radius:24px;box-shadow:var(--sh);padding:30px;max-width:640px;margin-inline:auto}
form.order label{font-weight:700;display:block;margin:14px 0 6px;color:var(--g900)}
form.order input,form.order select,form.order textarea{width:100%;padding:12px 14px;border:2px solid #dfe7dd;border-radius:12px;font-family:inherit;font-size:1rem;background:#fbfaf5;transition:.25s}
form.order input:focus,form.order select:focus,form.order textarea:focus{border-color:var(--g600);outline:0;background:#fff}
form.order .btn{width:100%;margin-top:20px}
/* cta banner */
.cta-band{background:linear-gradient(135deg,var(--g800),var(--g600));border-radius:28px;color:#fff;text-align:center;padding:48px 24px;box-shadow:var(--sh);position:relative;overflow:hidden}
.cta-band h2{color:#fff;margin-bottom:8px}
.cta-band p{color:#dcefe0;margin-bottom:20px}
/* shop */
.price{color:var(--g800);font-weight:900;font-size:1.15rem}
.price small{color:var(--mut);font-weight:400;font-size:.8rem;text-decoration:line-through;margin-inline-start:6px}
.cbadge{position:absolute;top:-7px;left:-9px;background:var(--gold);color:#3a2f05;font-size:.68rem;font-weight:900;min-width:19px;height:19px;border-radius:999px;display:none;place-items:center;padding:0 4px}
.crow{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--paper);border-radius:16px;box-shadow:var(--sh2);padding:16px 18px;margin-bottom:12px;flex-wrap:wrap}
.crow span{color:var(--mut);font-size:.92rem}
.qty{display:flex;align-items:center;gap:10px}
.qty button{width:32px;height:32px;border-radius:50%;border:2px solid var(--g600);background:#fff;color:var(--g800);font-size:1.05rem;cursor:pointer;font-family:inherit}
.qty button:hover{background:var(--g600);color:#fff}
.rm{border:0;background:none;color:#b3261e;cursor:pointer;font-family:inherit;font-size:.88rem}
.ctotal{display:flex;justify-content:space-between;background:var(--g900);color:#fff;border-radius:16px;padding:18px 20px;font-size:1.1rem;margin:16px 0}
.ctotal b{color:var(--gold2)}
.toast{position:fixed;bottom:26px;right:50%;transform:translate(50%,20px);background:var(--g900);color:#fff;padding:13px 24px;border-radius:999px;box-shadow:var(--sh);opacity:0;transition:.4s;z-index:99;font-weight:700}
.toast.show{opacity:1;transform:translate(50%,0)}
.auth-card{background:var(--paper);border-radius:24px;box-shadow:var(--sh);padding:32px;max-width:460px;margin-inline:auto}
.auth-card label{font-weight:700;display:block;margin:14px 0 6px;color:var(--g900)}
.auth-card input{width:100%;padding:12px 14px;border:2px solid #dfe7dd;border-radius:12px;font-family:inherit;font-size:1rem;background:#fbfaf5}
.auth-card input:focus{border-color:var(--g600);outline:0;background:#fff}
.auth-card .btn{width:100%;margin-top:20px}
.msg{border-radius:12px;padding:10px 14px;margin-top:14px;font-size:.94rem;display:none}
.msg.err{display:block;background:#fdecea;color:#8c1d18}
.msg.ok{display:block;background:#e6f4ea;color:#14532d}
/* footer */
footer{background:var(--g950);color:#cfe6d4;margin-top:0;padding:56px 0 26px}
footer .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px;margin-bottom:30px}
footer h4{color:#fff;margin-bottom:12px}
footer a{color:#cfe6d4}
footer a:hover{color:var(--gold2)}
footer .bot{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;text-align:center;font-size:.9rem;color:#9db8a6}
/* reveal animation */
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}
[data-reveal].in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001s !important;transition-duration:.001s !important}
  [data-reveal]{opacity:1;transform:none}
}

/* Language switcher (same langsw component as EN/AR pages; FA pages do not load lang.css) */
.langsw{font-size:.86rem;font-weight:700;white-space:nowrap}
.langsw a{color:#eaf5ec}
.langsw b{color:var(--gold2)}
header.scrolled .langsw a{color:var(--g900)}
header.scrolled .langsw b{color:var(--g600)}
