/* Self-hosted fonts (SIL Open Font License) — replaces render-blocking Google Fonts request */
@font-face{font-family:'Nunito';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/nunito-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/nunito-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Nunito';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/nunito-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/nunito-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/nunito-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/nunito-latin-ext-700-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Nunito';font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/nunito-latin-800-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito';font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/nunito-latin-ext-800-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Nunito';font-style:normal;font-weight:900;font-display:swap;src:url(/assets/fonts/nunito-latin-900-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Nunito';font-style:normal;font-weight:900;font-display:swap;src:url(/assets/fonts/nunito-latin-ext-900-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Libre Baskerville';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Libre Baskerville';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-ext-700-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Libre Baskerville';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-400-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Libre Baskerville';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/libre-baskerville-latin-ext-400-italic.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root {
  --green:#2d7a3a;--green2:#3da44f;--lime:#8cc63f;--cream:#fdf8ef;--warm:#f5f0e8;--sand:#e8dfc8;
  --dark:#2a3828;--charcoal:#3d5238;--mid:#4a5e44;--muted:#7a9070;--gold:#c8933a;--white:#ffffff;
  --ff:'Nunito',system-ui,sans-serif;--ffs:'Libre Baskerville',Georgia,serif;--ease:cubic-bezier(.4,0,.2,1);--r:16px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--ff);color:var(--dark);background:var(--white);overflow-x:hidden}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{list-style:none}
button{font-family:var(--ff);cursor:pointer}
.page{display:none}.page.active{display:block}

/* TOP BAR */
.topbar{background:#3d7a40;color:rgba(255,255,255,.85);font-size:12.5px;padding:7px 0}
.topbar-i{max-width:1240px;margin:0 auto;padding:0 28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.topbar-i a,footer a,.bc a,.cblock a,.det-btns .btn-outline{color:var(--lime);font-weight:700}

/* NAV */
.nav{background:var(--white);position:sticky;top:0;z-index:900;border-bottom:1px solid rgba(0,0,0,.07);transition:box-shadow .2s}
.nav.scrolled{box-shadow:0 2px 20px rgba(0,0,0,.1)}
.nav-i{max-width:1240px;margin:0 auto;padding:0 28px;height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{display:flex;align-items:center;gap:14px;cursor:pointer;flex-shrink:0}
.logo-mark{width:44px;height:44px;background:var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;flex-shrink:0}
.logo-mark::after{content:'';position:absolute;width:24px;height:24px;border:3px solid rgba(255,255,255,.9);border-radius:50% 0 50% 0;transform:rotate(45deg)}
.logo-txt b{display:block;font-size:15px;font-weight:900;color:var(--dark);letter-spacing:-.02em;line-height:1.2}
.logo-txt span{font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.08em}
.nav-links{display:flex;align-items:center;gap:2px}
.nl{background:none;border:none;font-size:14px;font-weight:700;color:var(--mid);padding:9px 16px;border-radius:10px;transition:.2s var(--ease)}
.nl:hover,.nl.act{color:var(--green);background:rgba(45,122,58,.07)}
.nl-cta{background:var(--green)!important;color:var(--white)!important}
.nl-cta:hover{background:var(--green2)!important}
.ham{display:none;background:none;border:none;font-size:24px;color:var(--dark)}
.mob{display:none;flex-direction:column;background:var(--white);border-top:1px solid rgba(0,0,0,.07);padding:8px 20px 16px}
.mob.open{display:flex}
.mob button,.mob a.mob-link{background:none;border:none;font-size:15px;font-weight:700;color:var(--mid);padding:13px 0;text-align:left;border-bottom:1px solid rgba(0,0,0,.06)}
.mob button:last-child{border:none}

/* HERO */
.hero{position:relative;min-height:90vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--dark)}
.h-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:opacity 1.2s var(--ease)}
.h-bg.out{opacity:0}
.h-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,18,6,.88) 0%,rgba(8,18,6,.3) 55%,transparent 100%);pointer-events:none}
.h-con{position:relative;z-index:2;max-width:1240px;margin:0 auto;padding:0 28px 80px;width:100%}
.h-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);border-radius:100px;padding:7px 18px;font-size:11.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--lime);margin-bottom:20px}
.hero h1{font-family:var(--ffs);font-size:clamp(2.2rem,5.5vw,4.8rem);color:var(--white);line-height:1.06;margin-bottom:20px;max-width:720px}
.hero h1 em{font-style:italic;color:var(--lime)}
.h-sub{font-size:17px;color:rgba(255,255,255,.72);max-width:500px;margin-bottom:34px;line-height:1.65;font-weight:400}
.h-btns{display:flex;gap:12px;flex-wrap:wrap}
.h-dots{position:absolute;bottom:24px;right:28px;z-index:3;display:flex;gap:8px}
.h-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.3);border:none;transition:.2s;cursor:pointer}
.h-dot.act{background:var(--lime);transform:scale(1.3)}

/* STATS */
.stats{background:var(--green);color:white}
.stats-i{max-width:1240px;margin:0 auto;padding:0 28px;display:flex;justify-content:space-around;flex-wrap:wrap}
.stat{padding:22px 16px;text-align:center}
.stat-n{font-family:var(--ffs);font-size:1.9rem;color:var(--lime);display:block;line-height:1}
.stat-l{font-size:11px;font-weight:700;opacity:.8;text-transform:uppercase;letter-spacing:.07em;margin-top:4px}

/* BTNS */
.btn-lime{display:inline-flex;align-items:center;gap:8px;background:var(--lime);color:var(--dark);font-weight:800;font-size:15px;padding:14px 28px;border-radius:12px;border:none;transition:.22s var(--ease)}
.btn-lime:hover{background:#7db833;transform:translateY(-2px)}
.btn-ghost{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);backdrop-filter:blur(6px);color:var(--white);font-weight:700;font-size:15px;padding:14px 28px;border-radius:12px;border:1px solid rgba(255,255,255,.25);transition:.22s var(--ease)}
.btn-ghost:hover{background:rgba(255,255,255,.18)}
.btn-green{display:inline-flex;align-items:center;gap:8px;background:var(--green);color:white;font-size:15px;font-weight:800;padding:14px 28px;border-radius:12px;border:none;transition:.22s var(--ease)}
.btn-green:hover{background:var(--green2);transform:translateY(-2px)}
.btn-outline{display:inline-flex;align-items:center;gap:8px;background:none;color:var(--green);font-size:15px;font-weight:700;padding:13px 26px;border-radius:12px;border:2px solid var(--green);transition:.22s}
.btn-outline:hover{background:rgba(45,122,58,.06)}

/* SECTION */
.sec{padding:88px 28px}.sec-alt{background:var(--cream)}#page-about .sec:first-of-type{background:var(--charcoal)}#page-about .sec:first-of-type .s-tag{color:var(--lime)}#page-about .sec:first-of-type .s-ttl{color:white}#page-about .sec:first-of-type p{color:rgba(255,255,255,.8)}
.ctn{max-width:1240px;margin:0 auto}
.s-tag{display:inline-block;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--green);margin-bottom:10px}
.s-ttl{font-family:var(--ffs);font-size:clamp(1.7rem,3.5vw,2.7rem);color:var(--dark);line-height:1.15;margin-bottom:14px}
.s-sub{font-size:15.5px;color:var(--mid);max-width:580px;margin-bottom:48px;font-weight:400;line-height:1.7}
.s-ctr{text-align:center}.s-ctr .s-sub{margin:0 auto 48px}

/* CAT CARDS */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:14px}
.cat-card{background:var(--white);border:1.5px solid rgba(0,0,0,.07);border-radius:20px;padding:30px 14px 22px;text-align:center;cursor:pointer;transition:.25s var(--ease);position:relative;overflow:hidden}
.cat-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--green),var(--lime));opacity:0;transition:.3s var(--ease);pointer-events:none}
.cat-card:hover::before,.cat-card:hover .cat-ic,.cat-card:hover .cat-nm{opacity:1;color:var(--white)}
.cat-card:hover{transform:translateY(-5px);border-color:var(--green);box-shadow:0 10px 30px rgba(45,122,58,.18)}
.cat-ic{font-size:2.2rem;margin-bottom:10px;display:block;position:relative;z-index:1}
.cat-nm{font-size:12.5px;font-weight:800;color:var(--charcoal);text-transform:uppercase;letter-spacing:.05em;position:relative;z-index:1;transition:.2s}

/* PRODUCTS */
.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.pc{background:var(--white);border:1.5px solid rgba(0,0,0,.07);border-radius:var(--r);overflow:hidden;cursor:pointer;transition:.25s var(--ease)}
.pc:hover{box-shadow:0 8px 32px rgba(0,0,0,.11);transform:translateY(-4px);border-color:var(--green)}
.pc-img{position:relative;background:var(--cream);height:210px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.pc-img img{height:190px;width:100%;object-fit:contain;transition:transform .4s var(--ease);padding:8px}
.pc:hover .pc-img img{transform:scale(1.06)}
.h-pin{position:absolute;top:12px;left:12px;background:var(--green);color:white;font-size:10px;font-weight:800;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.04em}
.pc-body{padding:16px 18px 20px}
.pc-nm{font-size:13.5px;font-weight:800;color:var(--dark);margin-bottom:5px;line-height:1.35}
.pc-wt{font-size:12px;color:var(--muted);font-weight:600}
.pc-cta{margin-top:12px;display:flex;align-items:center;gap:5px;font-size:13px;font-weight:800;color:var(--green)}

/* FILTER */
.filt-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:38px}
.fb{background:var(--white);border:1.5px solid var(--sand);color:var(--mid);font-size:13px;font-weight:700;padding:8px 18px;border-radius:100px;cursor:pointer;transition:.2s}
.fb:hover,.fb.act{background:var(--green);border-color:var(--green);color:var(--white)}

/* DETAIL */
.back-b{display:inline-flex;align-items:center;gap:8px;background:none;border:1.5px solid var(--sand);color:var(--mid);font-size:13px;font-weight:700;padding:10px 18px;border-radius:10px;margin-bottom:30px;transition:.2s}
.back-b:hover{background:var(--warm)}
.det-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:52px;align-items:start}
.det-main{border-radius:var(--r);background:var(--cream);border:1.5px solid var(--sand);object-fit:contain;width:100%;height:320px;padding:16px}
.det-thumbs{display:flex;gap:10px;margin-top:10px}
.det-th{width:78px;height:78px;object-fit:contain;border-radius:10px;border:1.5px solid var(--sand);background:var(--cream);padding:4px;cursor:pointer;transition:.2s}
.det-th.act{border-color:var(--green)}
.h-tag2{display:inline-flex;align-items:center;gap:6px;background:rgba(45,122,58,.1);color:var(--green);font-size:11.5px;font-weight:800;padding:5px 13px;border-radius:20px;margin-bottom:12px}
.det-ttl{font-family:var(--ffs);font-size:1.9rem;color:#ffffff;font-weight:800;margin-bottom:8px}
.det-sub{font-size:15px;color:rgba(255,255,255,.85);line-height:1.68;margin-bottom:22px}
.spec-box{background:var(--cream);border:1.5px solid var(--sand);border-radius:var(--r);overflow:hidden;margin-bottom:22px}
.spec-row{display:flex;padding:12px 18px;border-bottom:1px solid var(--sand);font-size:13.5px}
.spec-row:last-child{border:none}
.sk{font-weight:700;color:var(--dark);width:150px;flex-shrink:0}
.sv{color:var(--mid)}
.det-btns{display:flex;gap:12px;flex-wrap:wrap}

/* FIELD-TO-PLATE */
.ftp{background:linear-gradient(160deg,var(--dark) 0%,#173020 100%);color:white;padding:88px 28px;position:relative;overflow:hidden}
.ftp::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.025'%3E%3Ccircle cx='30' cy='30' r='20'/%3E%3C/g%3E%3C/svg%3E");pointer-events:none}
.ftp-i{max-width:1240px;margin:0 auto;position:relative}
.ftp-hdr{text-align:center;margin-bottom:60px}
.ftp-hdr .s-tag{color:var(--lime)}
.ftp-hdr .s-ttl{color:white;margin-bottom:14px}
.ftp-hdr p{color:rgba(255,255,255,.55);max-width:500px;margin:0 auto;font-size:15.5px;line-height:1.7}
.ftp-steps{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:0;margin-bottom:56px}
.ftp-step{padding:24px 24px 24px 0;position:relative}
.ftp-step::after{content:'';position:absolute;top:36px;right:0;width:24px;height:2px;background:rgba(140,198,63,.35)}
.ftp-step:last-child::after{display:none}
.step-n{width:50px;height:50px;border:2px solid var(--lime);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--ffs);font-size:1rem;color:var(--lime);margin-bottom:14px;font-weight:700}
.ftp-step h3,.ftp-step h4{font-size:14.5px;font-weight:800;color:white;margin-bottom:6px}
.ftp-step p{font-size:13px;color:rgba(255,255,255,.5);line-height:1.65}
.ftp-imgs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ftp-img{border-radius:var(--r);overflow:hidden;height:240px}
.ftp-img img{width:100%;height:100%;object-fit:cover}

/* HALAL */
.halal{background:var(--cream);padding:88px 28px}
.halal-grid{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center}
.halal-img{border-radius:24px;overflow:hidden;height:480px}
.halal-img img{width:100%;height:100%;object-fit:cover}
.halal-badge{width:140px;height:140px;background:var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3.5rem;margin-bottom:28px;box-shadow:0 6px 36px rgba(45,122,58,.28)}
.halal-r h2{font-family:var(--ffs);font-size:2.2rem;color:var(--dark);margin-bottom:16px}
.halal-r p{color:var(--mid);font-size:15px;line-height:1.75;margin-bottom:14px}
.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.chip{background:var(--white);border:1.5px solid var(--sand);border-radius:8px;padding:7px 14px;font-size:12.5px;font-weight:700;color:var(--charcoal)}
.chip.g{background:var(--green);border-color:var(--green);color:white}

/* ABOUT */
.ab-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.ab-img{border-radius:22px;overflow:hidden}
.ab-img img{width:100%;height:450px;object-fit:cover}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.sbox{background:var(--cream);border-radius:var(--r);padding:18px;text-align:center}
.sbox-n{font-family:var(--ffs);font-size:1.7rem;color:var(--green);font-weight:700;line-height:1}
.sbox-l{font-size:11.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-top:5px}
.timeline{margin-top:40px;position:relative;padding-left:28px}
.timeline::before{content:'';position:absolute;left:0;top:8px;bottom:8px;width:2px;background:var(--sand)}
.tli{position:relative;margin-bottom:28px}
.tli::before{content:'';position:absolute;left:-33px;top:5px;width:11px;height:11px;border-radius:50%;background:var(--green);border:2px solid var(--white);box-shadow:0 0 0 2px var(--green)}
.tli-y{font-size:11.5px;font-weight:800;color:var(--green);text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}
.tli-t{font-size:13.5px;color:var(--mid);line-height:1.65}
.vi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(195px,1fr));gap:14px}
.vic{background:var(--white);border:1.5px solid var(--sand);border-radius:var(--r);padding:26px 20px}
.vic big{font-size:2rem;display:block;margin-bottom:10px}
.vic h3,.vic h4{font-size:13.5px;font-weight:800;color:var(--dark);margin-bottom:7px}
.vic p{font-size:13px;color:var(--mid);line-height:1.6}

/* RECIPES */
.rec-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}
.rec-card{border-radius:var(--r);overflow:hidden;position:relative;cursor:pointer;height:270px}
.rec-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}
.rec-card:hover img{transform:scale(1.05)}
.rec-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.82) 0%,transparent 52%);display:flex;flex-direction:column;justify-content:flex-end;padding:22px;pointer-events:none}
.rec-cat{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--lime);margin-bottom:5px}
.rec-nm{font-size:17px;font-weight:800;color:white;line-height:1.2}
.rec-tm{font-size:12.5px;color:rgba(255,255,255,.6);margin-top:5px}

/* CONTACT */
.con-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:start}
.con-info h2{font-family:var(--ffs);font-size:1.75rem;color:var(--dark);margin-bottom:18px;padding-bottom:14px;border-bottom:2px solid var(--sand)}
.rtabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.rtab{background:none;border:1.5px solid var(--sand);color:var(--mid);font-size:12px;font-weight:700;padding:7px 15px;border-radius:8px;cursor:pointer;transition:.2s}
.rtab:hover,.rtab.act{background:var(--green);border-color:var(--green);color:white}
.cblock{margin-bottom:20px;padding:14px 18px;background:var(--cream);border-radius:8px;border-left:3px solid var(--green)}
.cblock h4{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--green);margin-bottom:8px}
.cblock p,.cblock a{font-size:14px;color:var(--dark);line-height:1.9}
.cblock a:hover{color:var(--green)}
.map-box{margin-top:20px;border-radius:var(--r);overflow:hidden;border:2px solid var(--sand);box-shadow:0 4px 20px rgba(0,0,0,.08)}
.map-box iframe{display:block;width:100%;height:280px}
.cf{position:sticky;top:90px}.cf h2{font-family:var(--ffs);font-size:1.75rem;color:#ffffff;font-weight:800;margin-bottom:18px;padding-bottom:14px;border-bottom:2px solid #ddd}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fi{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}
.fi.full{grid-column:1/-1}
.fi label{font-size:12px;font-weight:800;color:#ffffff;text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:4px}
.fi input,.fi textarea,.fi select{border:1.5px solid #ccc;border-radius:10px;padding:12px 14px;font-family:var(--ff);font-size:14px;color:#1a1a1a;background:#f9f9f7;outline:none;transition:.2s}
.fi input:focus,.fi textarea:focus,.fi select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(45,122,58,.1)}
.fi textarea{resize:vertical;min-height:100px}

/* CTA */
.cta{background:linear-gradient(135deg,var(--green),#163d1e);padding:80px 28px;text-align:center;position:relative;overflow:hidden}
.cta::before{content:'#BalanceYourLife';position:absolute;font-family:var(--ffs);font-size:9rem;font-weight:700;color:rgba(255,255,255,.04);white-space:nowrap;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}
.cta h2{font-family:var(--ffs);font-size:clamp(1.8rem,4vw,3rem);color:white;margin-bottom:14px;position:relative}
.cta p{color:rgba(255,255,255,.68);font-size:16px;max-width:460px;margin:0 auto 30px;position:relative}
.cta-btns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;position:relative}

/* PAGE HERO */
.ph{background:linear-gradient(135deg,var(--dark) 0%,#1e3520 100%);padding:60px 28px;color:white}
.ph-i{max-width:1240px;margin:0 auto}
.bc{display:flex;align-items:center;gap:8px;font-size:12.5px;color:rgba(255,255,255,.42);margin-bottom:12px}
.bc a{cursor:pointer;transition:.15s}.bc a:hover{color:rgba(255,255,255,.82)}
.ph h1{font-family:var(--ffs);font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700}

/* FOOTER */
footer{background:var(--dark);color:rgba(255,255,255,.55);padding:60px 28px 24px}
.ft-i{max-width:1240px;margin:0 auto}
.ft-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:24px}
.ft-brand p{font-size:13px;line-height:1.75;margin-top:14px;max-width:270px}
.ft-certs{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.ftc{background:rgba(255,255,255,.07);border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700;color:rgba(255,255,255,.6)}
.ft-col h4{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.85);margin-bottom:14px}
.ft-col li{margin-bottom:8px}
.ft-col a{font-size:13px;cursor:pointer;transition:.15s}
.ft-col a:hover{color:var(--lime)}
.ft-bot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:12px}
.soc{display:flex;gap:10px}
.sb{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.08);border:none;color:rgba(255,255,255,.6);font-size:13px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s;font-family:var(--ff);font-weight:700}
.sb:hover{background:var(--green);color:white}
#tbtn{position:fixed;bottom:22px;right:22px;width:44px;height:44px;background:var(--green);color:white;border:none;border-radius:12px;font-size:17px;display:none;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 18px rgba(0,0,0,.2);z-index:800;transition:.2s}
#tbtn.show{display:flex}#tbtn:hover{background:var(--green2)}

/* RESPONSIVE */
@media(max-width:960px){
  .det-grid,.halal-grid,.ab-grid,.con-grid{grid-template-columns:1fr}
  .ft-grid{grid-template-columns:1fr 1fr}
  .ftp-imgs{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .nav-links{display:none}.ham{display:block}
  .hero h1{font-size:2.1rem}
  .ft-grid{grid-template-columns:1fr}
  .ftp-imgs{grid-template-columns:1fr}
  .cat-grid{grid-template-columns:repeat(3,1fr)}
  .form-row{grid-template-columns:1fr}
  .stats-i{justify-content:center}
}
/* ── LANGUAGE SWITCHER ── */
.lang-switcher{position:relative;display:flex;align-items:center;flex-shrink:0}
.lang-current{display:flex;align-items:center;gap:7px;background:var(--green);color:#fff;font-family:var(--ff);font-size:13px;font-weight:700;padding:8px 14px 8px 12px;border-radius:100px;border:none;cursor:pointer;transition:.2s var(--ease);white-space:nowrap;box-shadow:0 2px 8px rgba(45,122,58,.35)}
.lang-current:hover{background:var(--green2);transform:translateY(-1px)}
.lang-globe{width:15px;height:15px;flex-shrink:0}
.lang-text{font-size:13px;font-weight:700}
.lang-chevron{width:12px;height:12px;flex-shrink:0;transition:transform .25s var(--ease)}
.lang-switcher.open .lang-chevron{transform:rotate(180deg)}
.lang-dropdown{display:none;position:absolute;top:calc(100% + 10px);right:0;background:var(--white);border:1.5px solid var(--sand);border-radius:14px;box-shadow:0 8px 32px rgba(0,0,0,.14);min-width:170px;z-index:2000;overflow:hidden}
.lang-switcher.open .lang-dropdown{display:block}
.lang-btn{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;border-bottom:1px solid var(--sand);font-family:var(--ff);font-size:13.5px;font-weight:600;color:var(--mid);padding:11px 16px;cursor:pointer;text-align:left;transition:.15s}
.lang-btn:last-child{border-bottom:none}
.lang-btn:hover{background:var(--cream);color:var(--green)}
.lang-btn.act{color:var(--green);background:rgba(45,122,58,.07);font-weight:800}
.lang-btn.act::after{content:"✓";margin-left:auto;color:var(--green);font-size:13px}
.lang-flag{font-size:17px;line-height:1;flex-shrink:0}
@media(max-width:640px){.lang-switcher{display:none}.mob-lang{display:flex!important}}
.mob-lang{display:none;flex-wrap:wrap;gap:8px;padding:12px 0 6px;border-top:1px solid rgba(0,0,0,.06);margin-top:4px}
.mob-lang-btn{flex:1;min-width:calc(33% - 8px);display:flex;align-items:center;justify-content:center;gap:5px;background:var(--cream);border:1.5px solid var(--sand);font-family:var(--ff);font-size:12px;font-weight:700;color:var(--mid);padding:8px 6px;border-radius:8px;cursor:pointer;transition:.15s}
.mob-lang-btn:hover,.mob-lang-btn.act{background:var(--green);border-color:var(--green);color:#fff}


/* ====== SEO/CRO ADDITIONS ====== */
/* Mobile sticky CTA bar */
#mob-cta-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:9990;background:var(--green);padding:10px 16px;gap:10px;align-items:center;box-shadow:0 -3px 12px rgba(0,0,0,.25)}
#mob-cta-bar a{flex:1;text-align:center;padding:10px 6px;border-radius:6px;font-weight:700;font-size:14px;text-decoration:none}
#mob-cta-bar .mcta-quote{background:var(--gold);color:#fff}
#mob-cta-bar .mcta-email{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.4)}
@media(max-width:767px){#mob-cta-bar{display:flex}body{padding-bottom:60px}}

/* Trust badges strip */
.trust-strip{display:flex;flex-wrap:wrap;gap:10px 20px;justify-content:center;align-items:center;padding:16px 20px;background:var(--cream);border-top:1px solid var(--sand);border-bottom:1px solid var(--sand)}
.trust-badge{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--dark);white-space:nowrap}

/* Pulse animation on quote button in contact sidebar */
@keyframes pulse-btn{0%,100%{box-shadow:0 0 0 0 rgba(200,147,58,.5)}70%{box-shadow:0 0 0 8px rgba(200,147,58,0)}}
.cf .btn-green{animation:pulse-btn 2.5s infinite}
/* ====== END SEO/CRO ====== */

/* ====== PRE-LAUNCH ADDITIONS (routing, a11y, responsive) ====== */
a.nl,a.btn-lime,a.btn-ghost,a.btn-green,a.btn-outline,a.back-b{cursor:pointer}
a.cat-card,a.pc{display:block;color:inherit}
.pc.act{border-color:var(--lime);box-shadow:0 0 0 3px rgba(140,198,63,.45)}
.skip-link{position:absolute;top:8px;inset-inline-start:8px;z-index:10000;background:#fff;color:var(--dark);padding:10px 16px;border-radius:8px;font-weight:800;transform:translateY(-200%)}
.skip-link:focus{transform:none}
.con-grid>*,.det-grid>*,.ab-grid>*,.halal-grid>*,.aw-grid>*{min-width:0}
.cblock p,.cblock a{overflow-wrap:anywhere}
@media(max-width:960px){.ft-col a{overflow-wrap:anywhere}}
.form-row>*{min-width:0}
.fi input,.fi select,.fi textarea{width:100%;min-width:0;max-width:100%}
.topbar-i a{display:inline-block;padding:3px 0}
.bc a{display:inline-block;padding:4px 0}
.ft-legal a{display:inline-block;padding:4px 0}
:focus-visible{outline:3px solid var(--lime);outline-offset:2px}
.h-dot{min-width:10px}
/* contrast fixes for text that sat on the green page background */
.sec:not(.sec-alt) .s-tag{color:var(--lime)}
.sec:not(.sec-alt) .s-ttl{color:#fff}
.sec:not(.sec-alt) .s-sub{color:rgba(255,255,255,.82)}
.con-info h2{color:#fff}
.cf>p{color:rgba(255,255,255,.85)!important}
.cf>p a{color:var(--lime)!important}
.back-b{color:#fff;border-color:rgba(255,255,255,.55)}
.back-b:hover{background:rgba(255,255,255,.1)}
.h-tag2{background:rgba(0,0,0,.18);color:var(--lime)}
/* animal-welfare two-column block (was inline style, never collapsed on mobile) */
.aw-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.aw-img{border-radius:22px;overflow:hidden;height:400px}
.aw-img img{width:100%;height:100%;object-fit:cover}
@media(max-width:960px){.aw-grid{grid-template-columns:1fr;gap:32px}.aw-img{height:300px}}
/* image-slot fallbacks while approved photography is pending */
.aw-grid.aw-grid--text{grid-template-columns:1fr;max-width:760px}
.halal-img.halal-img--product{background:#fff;border:1.5px solid var(--sand);display:flex;align-items:center;justify-content:center}
.halal-img.halal-img--product img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;padding:24px}
.rec-card.rec-card--noimg{background:linear-gradient(135deg,var(--dark) 0%,#1e3520 100%)}
/* landing pages */
.ph-sub{font-size:16px;line-height:1.7;color:rgba(255,255,255,.78);max-width:760px;margin-top:14px}
.ph-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.lp-links{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.lp-links a{background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.35);color:#fff;font-size:13px;font-weight:700;padding:8px 16px;border-radius:100px;transition:.2s}
.lp-links a:hover{background:var(--lime);border-color:var(--lime);color:var(--dark)}
.lp-lbl{display:block;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--lime);margin-bottom:10px}
.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1.5px solid var(--sand);border-radius:var(--r);background:#fff;margin-top:8px}
.spec-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:560px}
.spec-table th,.spec-table td{padding:12px 16px;text-align:start;border-bottom:1px solid var(--sand);color:var(--mid);vertical-align:top}
.spec-table th{background:var(--cream);color:var(--dark);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.spec-table tr:last-child td{border-bottom:none}
.spec-table td:first-child{color:var(--dark);font-weight:700}
.sec-alt .vi-grid{margin-top:8px}
.vic big{color:var(--green)}
.empty-note{grid-column:1/-1;color:#fff;font-size:15px;padding:24px 0}
.empty-note a{color:var(--lime);font-weight:800;text-decoration:underline}
/* legal pages */
.legal{max-width:820px;margin:0 auto;color:var(--mid);font-size:15px;line-height:1.75}
.legal h2{font-family:var(--ffs);font-size:1.35rem;color:var(--dark);margin:34px 0 10px}
.legal p{margin-bottom:12px}
.legal ul{list-style:disc;padding-inline-start:22px;margin-bottom:12px}
.legal li{margin-bottom:4px}
.legal a{color:var(--green);font-weight:700;text-decoration:underline}
.legal-upd{font-size:13px;font-weight:700;color:var(--muted)}
@media(max-width:640px){.legal .tbl-wrap{overflow:visible}.legal .spec-table{min-width:0}.legal .spec-table thead{display:none}
  .legal .spec-table,.legal .spec-table tbody,.legal .spec-table tr,.legal .spec-table td{display:block;width:100%}
  .legal .spec-table tr{border-bottom:1px solid var(--sand);padding:10px 0}.legal .spec-table tr:last-child{border-bottom:none}
  .legal .spec-table td{border:none;padding:4px 16px}
  .legal .spec-table td::before{content:attr(data-label);display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}}
/* footer */
.ft-col .ft-txt{font-size:13px;color:var(--lime);font-weight:700}
.ft-legal{display:flex;gap:16px;flex-wrap:wrap}
.ft-legal a{font-size:12px;font-weight:600;color:rgba(255,255,255,.7)}
.ft-legal a:hover{color:var(--lime)}
span.sb{cursor:default}
/* small-screen polish */
@media(max-width:640px){
  .sec{padding:64px 18px}.ph{padding:44px 18px}.cta{padding:64px 18px}.ftp,.halal{padding:64px 18px}
  .nav-i{padding:0 16px}.topbar-i{padding:0 16px}
  .ham{min-width:44px;min-height:44px}
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .det-main{height:260px}
  .halal-img{height:300px}.ab-img img{height:300px}
  .spec-row{flex-direction:column;gap:2px}.sk{width:auto}
  .cf{position:static}
  .mob a.mob-link{padding:14px 0}
}
.nl{white-space:nowrap}
@media(max-width:960px){.nav-links{display:none}.lang-switcher{margin-inline-start:auto}.ham{display:block;min-width:44px;min-height:44px}}
/* cookie consent banner (non-blocking) + footer control + click-to-load map */
.cc-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:9995;max-width:780px;margin:0 auto;background:#1e3520;color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:14px;box-shadow:0 8px 30px rgba(0,0,0,.35);padding:16px 18px;font-family:var(--ff)}
.cc-banner[hidden]{display:none}
.cc-i{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.cc-txt{flex:1 1 320px;font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.92);margin:0}
.cc-txt a{color:var(--lime);font-weight:800;text-decoration:underline;white-space:nowrap}
.cc-btns{display:flex;gap:10px;flex:0 0 auto}
.cc-btn{min-width:112px;min-height:44px;padding:10px 18px;border-radius:10px;border:2px solid var(--lime);background:var(--lime);color:var(--dark);font-family:var(--ff);font-size:14px;font-weight:800;cursor:pointer}
.cc-btn:hover{background:#7db833;border-color:#7db833}
.ft-legal button.ft-cookie{background:none;border:none;padding:4px 0;font-family:var(--ff);font-size:12px;font-weight:600;color:rgba(255,255,255,.7);cursor:pointer}
.ft-legal button.ft-cookie:hover{color:var(--lime)}
.map-ph{height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px;text-align:center;background:var(--cream)}
.map-ph p{color:var(--mid);font-size:14px;line-height:1.6;max-width:420px}
.map-ph-btns{display:flex;gap:16px;align-items:center;flex-wrap:wrap;justify-content:center}
.map-ph-btns .btn-green{font-size:14px;padding:11px 22px}
.map-ph-link{color:var(--green);font-weight:800;font-size:14px;text-decoration:underline}
@media(max-width:767px){.cc-banner{left:10px;right:10px;bottom:72px;padding:14px}.cc-btns{width:100%}.cc-btn{flex:1}}
@media(max-width:380px){.logo-txt span{font-size:10px}.logo-txt b{font-size:14px}}
/* homepage hero images (self-hosted) */
.h-bg.slide-1{background-image:url(/assets/img/hero/hero-1-desktop.webp);background-position:right center}
.h-bg.slide-2{background-image:url(/assets/img/hero/hero-2-desktop.webp);background-position:center center}
@media(max-width:767px){.h-bg.slide-1{background-image:url(/assets/img/hero/hero-1-mobile.webp);background-position:center top}.h-bg.slide-2{background-image:url(/assets/img/hero/hero-2-mobile.webp);background-position:center top}}
.h-ov{background:linear-gradient(to top,rgba(8,18,6,.88) 0%,rgba(8,18,6,.3) 55%,transparent 100%),linear-gradient(to right,rgba(8,18,6,.6) 0%,rgba(8,18,6,.25) 45%,transparent 70%)}
[dir=rtl] .h-ov{background:linear-gradient(to top,rgba(8,18,6,.88) 0%,rgba(8,18,6,.3) 55%,transparent 100%),linear-gradient(to left,rgba(8,18,6,.6) 0%,rgba(8,18,6,.25) 45%,transparent 70%)}
@media(max-width:767px){.h-ov,[dir=rtl] .h-ov{background:linear-gradient(to top,rgba(8,18,6,.94) 0%,rgba(8,18,6,.8) 42%,rgba(8,18,6,.5) 66%,rgba(8,18,6,.18) 100%)}}
