/* ============================================================================
   main.css — Sree Samrudhi Farm Products
   Mobile-first · thumb-friendly · cream + leaf-green theme
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600&family=JetBrains+Mono:wght@400;600&display=swap');

:root{
  --cream:#F7F2E7; --paper:#FFFDF6; --paper-2:#FBF6EA;
  --ink:#2A2316; --ink-soft:#564B36; --faint:#8A7E66;
  --leaf:#3E7C45; --leaf-dark:#2E5E34; --leaf-soft:#E2EEDF;
  --sienna:#B0512A; --gold:#C9972B; --gold-soft:#F0E2BC;
  --line:#E4DAC4; --line-soft:#EFE7D3;
  --ok:#3E7C45; --warn:#C9972B; --bad:#B0512A;
  --shadow:0 1px 2px rgba(42,35,22,.04),0 8px 24px rgba(42,35,22,.06);
  --shadow-lg:0 12px 40px rgba(42,35,22,.12);
  --r:14px; --r-sm:10px; --r-lg:22px;
  --maxw:1160px; --nav-h:60px; --tab-h:62px;
  --sans:'Newsreader',Georgia,serif;
  --display:'Fraunces',Georgia,serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
}

body{font-family:var(--sans);background:var(--cream);color:var(--ink);font-size:17px;}
h1,h2,h3,h4,.display{font-family:var(--display);letter-spacing:-.01em;}
.mono{font-family:var(--mono);}
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:18px;}
section{padding-block:34px;}
.muted{color:var(--faint);}
.center{text-align:center;}
img.contain{object-fit:contain;}
.hide{display:none !important;}

/* ---------- Buttons ------------------------------------------------------ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--mono);font-size:15px;font-weight:600;min-height:50px;
  padding:13px 22px;border-radius:var(--r-sm);background:var(--leaf);color:#fff;
  transition:transform .12s ease,filter .12s ease;text-align:center;line-height:1.1;}
.btn:hover{filter:brightness(1.06);} .btn:active{transform:scale(.98);}
.btn.full{width:100%;}
.btn.gold{background:var(--gold);color:#2A2316;}
.btn.sienna{background:var(--sienna);}
.btn.ghost{background:transparent;border:1.6px solid var(--ink);color:var(--ink);}
.btn.sm{min-height:42px;padding:9px 16px;font-size:13.5px;}
.btn.lg{min-height:56px;font-size:16px;}

/* ---------- Top nav ------------------------------------------------------ */
.topbar{position:sticky;top:0;z-index:50;background:rgba(247,242,231,.92);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;gap:14px;height:var(--nav-h);}
.brandlock{display:flex;align-items:center;gap:10px;font-family:var(--display);
  font-weight:700;font-size:18px;color:var(--ink);}
.brandlock .leaf{font-size:24px;}
.brandlock .brandmark{width:40px;height:40px;border-radius:50%;flex:0 0 auto;}
.brandlock small{display:block;font-family:var(--mono);font-size:9.5px;font-weight:400;
  letter-spacing:.14em;text-transform:uppercase;color:var(--faint);}
.nav-links{display:none;margin-left:auto;gap:6px;align-items:center;}
.nav-links a{font-family:var(--mono);font-size:13.5px;padding:9px 13px;border-radius:8px;color:var(--ink-soft);}
.nav-links a:hover,.nav-links a.active{background:var(--leaf-soft);color:var(--leaf-dark);}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:8px;}
.nav-links + .nav-right{margin-left:14px;}
.nav-cta{display:inline-flex;margin-left:auto;min-height:40px;white-space:nowrap;}
@media(min-width:900px){ .nav-links{margin-left:auto;} .nav-cta{margin-left:14px;} }
@media(max-width:420px){ .nav-cta{font-size:12px;padding:9px 13px;min-height:38px;} .brandlock small{display:none;} }

/* language toggle */
.langtoggle{display:inline-flex;border:1.5px solid var(--ink);border-radius:999px;overflow:hidden;}
.langtoggle button{font-family:var(--mono);font-size:12px;padding:7px 13px;color:var(--ink);min-height:0;border-radius:0;}
.langtoggle button.on{background:var(--ink);color:var(--cream);}

/* ---------- Mobile thumb tab bar ---------------------------------------- */
.tabbar{position:fixed;bottom:0;left:0;right:0;z-index:60;height:var(--tab-h);
  background:var(--paper);border-top:1px solid var(--line);
  display:flex;justify-content:space-around;align-items:stretch;
  padding-bottom:env(safe-area-inset-bottom);}
.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  font-family:var(--mono);font-size:10px;color:var(--faint);}
.tabbar a .ic{font-size:20px;line-height:1;}
.tabbar a.active{color:var(--leaf-dark);}
body{padding-bottom:calc(var(--tab-h) + env(safe-area-inset-bottom));}

/* ---------- Hero --------------------------------------------------------- */
.hero{background:
   radial-gradient(120% 90% at 90% 0%,rgba(62,124,69,.10),transparent 55%),
   linear-gradient(180deg,var(--paper-2),var(--cream));
  border-bottom:1px solid var(--line);}
.hero .wrap{padding-block:20px 26px;}

/* ---------- Photo hero (image background) ------------------------------- */
.hero.hero-photo{
  background:
    linear-gradient(90deg, rgba(12,30,18,.90) 0%, rgba(12,30,18,.74) 46%, rgba(12,30,18,.34) 70%, rgba(12,30,18,0) 100%),
    url('../assets/images/hero-farm.jpg') center right / cover no-repeat;
  border-bottom:1px solid var(--leaf-dark);
}
.hero.hero-photo .wrap{padding-block:24px 38px;min-height:clamp(300px,44vh,460px);display:flex;flex-direction:column;justify-content:flex-start;}
.hero.hero-photo .eyebrow{color:var(--gold-soft);}
.hero.hero-photo h1{color:#fff;max-width:16ch;text-shadow:0 2px 18px rgba(0,0,0,.45);}
.hero.hero-photo h1 em{color:#bfe6c0;}
.hero.hero-photo p.lede{color:#eaf1e5;max-width:34ch;text-shadow:0 1px 10px rgba(0,0,0,.4);}
.hero.hero-photo .pill{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.28);color:#eef5ec;}
@media(max-width:760px){
  .hero.hero-photo{
    background:
      linear-gradient(180deg, rgba(14,33,20,.78) 0%, rgba(14,33,20,.5) 48%, rgba(14,33,20,.62) 100%),
      url('../assets/images/hero-farm.jpg') center right / cover no-repeat;
  }
  .hero.hero-photo p.lede{max-width:100%;}
}

/* ---------- Generic photo hero (Products / Technology / About) ---------- */
.hero.photo{border-bottom:1px solid var(--leaf-dark);background-size:cover;background-position:center;}
.hero.photo .wrap{padding-block:30px 34px;min-height:clamp(220px,34vh,330px);display:flex;flex-direction:column;justify-content:center;}
.hero.photo .eyebrow{color:var(--gold-soft);}
.hero.photo h1{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.5);}
.hero.photo p.lede{color:#eaf1e5;text-shadow:0 1px 10px rgba(0,0,0,.45);max-width:52ch;}
.bg-tech{background-image:linear-gradient(90deg,rgba(12,30,18,.92),rgba(12,30,18,.66) 55%,rgba(12,30,18,.3)),url('../assets/images/field-dashboard.jpg');}
.bg-products{background-image:linear-gradient(90deg,rgba(12,30,18,.9),rgba(12,30,18,.6) 55%,rgba(12,30,18,.24)),url('../assets/images/products-range.jpg');}
.bg-about{background-image:linear-gradient(90deg,rgba(12,30,18,.9),rgba(12,30,18,.58) 52%,rgba(12,30,18,.2));background-image:linear-gradient(90deg,rgba(12,30,18,.9),rgba(12,30,18,.58) 52%,rgba(12,30,18,.2)),url('../assets/images/farmer-image.jpg');background-position:center right;}
@media(max-width:760px){
  .bg-tech{background-image:linear-gradient(180deg,rgba(12,30,18,.78),rgba(12,30,18,.6)),url('../assets/images/field-dashboard.jpg');}
  .bg-products{background-image:linear-gradient(180deg,rgba(12,30,18,.72),rgba(12,30,18,.55)),url('../assets/images/products-range.jpg');}
  .bg-about{background-image:linear-gradient(180deg,rgba(12,30,18,.72),rgba(12,30,18,.5) 55%,rgba(12,30,18,.62)),url('../assets/images/farmer-image.jpg');}
}
/* photo section band (dark image bg with readable cards on top) */
.band-photo{position:relative;background-size:cover;background-position:center;}
.band-photo::before{content:"";position:absolute;inset:0;background:rgba(12,30,18,.74);}
.band-photo > .wrap{position:relative;z-index:1;}
.band-photo .sec-head h2{color:#fff;} .band-photo .sec-head p{color:#eaf1e5;} .band-photo .sec-head .kicker{color:var(--gold-soft);}
.bg-disease{background-image:url('../assets/images/field-disease-check.jpg');}

/* ---------- Animated brand band (GIF) ----------------------------------- */
.anim-band{background:linear-gradient(180deg,var(--paper-2),var(--cream));border-block:1px solid var(--line);}
.anim-grid{display:grid;grid-template-columns:1fr;gap:22px;align-items:center;}
.anim-figure{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--line);background:#dff0d6;}
.anim-figure img{width:100%;display:block;image-rendering:auto;}
.anim-copy h2{font-size:clamp(22px,5.5vw,32px);}
.anim-copy p{color:var(--ink-soft);margin-top:10px;}
.anim-points{display:flex;flex-direction:column;gap:10px;margin-top:16px;}
.anim-points li{display:flex;gap:10px;align-items:flex-start;font-size:15px;}
.anim-points .b{color:var(--leaf-dark);font-weight:700;}
@media(min-width:820px){ .anim-grid{grid-template-columns:1.15fr .85fr;gap:34px;} .anim-band .anim-figure{order:2;} }

/* ---------- Photo feature cards ----------------------------------------- */
.photo-grid{display:grid;grid-template-columns:1fr;gap:16px;}
.photo-card{position:relative;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);min-height:200px;display:flex;align-items:flex-end;}
.photo-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.photo-card:hover img{transform:scale(1.05);}
.photo-card .cap{position:relative;z-index:2;width:100%;padding:16px 16px 14px;color:#fff;
  background:linear-gradient(180deg,rgba(14,33,20,0),rgba(14,33,20,.82));}
.photo-card .cap h3{font-size:18px;}
.photo-card .cap p{font-size:13px;color:#dbe7d6;margin-top:3px;}
@media(min-width:760px){ .photo-grid{grid-template-columns:repeat(3,1fr);} }
.eyebrow{font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--leaf);margin-bottom:14px;}
.hero h1{font-size:clamp(30px,8vw,52px);font-weight:700;line-height:1.05;}
.hero h1 em{font-style:italic;color:var(--leaf-dark);}
.hero p.lede{font-size:clamp(16px,4.4vw,20px);color:var(--ink-soft);margin-top:16px;max-width:42ch;}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
.hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;}
.pill{font-family:var(--mono);font-size:11.5px;padding:7px 13px;border-radius:999px;
  background:var(--paper);border:1px solid var(--line);color:var(--ink-soft);}

/* ---------- Section headers --------------------------------------------- */
.sec-head{margin-bottom:24px;}
.sec-head .kicker{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);}
.sec-head h2{font-size:clamp(24px,6vw,34px);margin-top:6px;}
.sec-head p{color:var(--ink-soft);margin-top:8px;max-width:60ch;}

/* ---------- Category grid ------------------------------------------------ */
.cat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.cat-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
  padding:18px 16px;box-shadow:var(--shadow);display:block;transition:transform .14s,box-shadow .14s;}
.cat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);}
.cat-card .emoji{font-size:30px;}
.cat-card h3{font-size:18px;margin-top:10px;}
.cat-card p{font-size:13.5px;color:var(--faint);margin-top:6px;}
.cat-card .count{font-family:var(--mono);font-size:11px;color:var(--leaf);margin-top:10px;display:inline-block;}

/* ---------- Filter chips ------------------------------------------------- */
.filters{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:6px;margin-bottom:22px;}
.filters::-webkit-scrollbar{height:0;}
.fchip{flex:0 0 auto;font-family:var(--mono);font-size:13px;padding:10px 16px;border-radius:999px;
  background:var(--paper);border:1.5px solid var(--line);color:var(--ink-soft);min-height:44px;white-space:nowrap;}
.fchip.on{background:var(--leaf);border-color:var(--leaf);color:#fff;}

/* ---------- Product grid ------------------------------------------------- */
.prod-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.prod-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
  box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;}
.prod-card .thumb{aspect-ratio:1/1;background:var(--leaf-soft);display:flex;align-items:center;justify-content:center;font-size:46px;position:relative;}
.prod-card .body{padding:13px;display:flex;flex-direction:column;gap:6px;flex:1;}
.prod-card .brandtag{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--leaf);}
.prod-card h3{font-size:15.5px;line-height:1.25;}
.prod-card .pack{font-size:12.5px;color:var(--faint);}
.prod-card .price{font-family:var(--display);font-weight:700;font-size:19px;margin-top:auto;}
.prod-card .price .mrp{font-family:var(--sans);font-weight:400;font-size:13px;color:var(--faint);text-decoration:line-through;margin-left:6px;}
.prod-card .pdesc{font-size:13px;color:var(--ink-soft);line-height:1.45;}
.prod-card .specs{display:flex;flex-direction:column;gap:5px;margin-top:2px;}
.prod-card .spec{display:flex;flex-direction:column;font-size:12px;line-height:1.3;border-top:1px dashed var(--line-soft);padding-top:5px;}
.prod-card .spec span{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);}
.prod-card .spec b{color:var(--ink);font-weight:600;}
.prod-card .enquire-btn{margin-top:auto;}
.prod-card .row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;}
.badge{font-family:var(--mono);font-size:9.5px;font-weight:600;padding:4px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em;}
.badge.in{background:var(--leaf-soft);color:var(--leaf-dark);}
.badge.low{background:var(--gold-soft);color:#7a5b13;}
.badge.out{background:#F1DDD3;color:var(--sienna);}
.badge.rx{background:#EFE7D3;color:var(--ink-soft);}
.thumb .stock-flag{position:absolute;top:8px;left:8px;}

/* ---------- Brand wall (logos linking to company sites) ------------------ */
.brand-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.brand-tile{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
  min-height:104px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  box-shadow:var(--shadow);transition:transform .14s,box-shadow .14s;position:relative;}
.brand-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);}
.brand-tile img{max-height:46px;width:auto;max-width:84%;object-fit:contain;}
.brand-tile .mono-logo{width:54px;height:54px;border-radius:12px;background:var(--leaf-soft);color:var(--leaf-dark);
  display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;font-size:22px;}
.brand-tile .bname{font-family:var(--mono);font-size:11px;color:var(--ink-soft);text-align:center;line-height:1.2;}
.brand-tile .ext{position:absolute;top:8px;right:10px;font-size:11px;color:var(--faint);opacity:0;transition:opacity .15s;}
.brand-tile:hover .ext{opacity:1;}
.brand-tile.dim{opacity:.85;}

/* logos render on dark chips when they are white-on-transparent */
.brand-tile .chip-dark{background:var(--forest,#13301f);border-radius:10px;padding:10px 14px;display:flex;align-items:center;justify-content:center;width:100%;min-height:64px;}
.brand-tile .chip-dark img{filter:none;}

/* ---------- Generic cards & callouts ------------------------------------ */
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:20px;box-shadow:var(--shadow);}
.card.leaf{border-left:5px solid var(--leaf);}
.card.gold{border-left:5px solid var(--gold);}
.grid-2{display:grid;grid-template-columns:1fr;gap:16px;}
.note-strip{background:var(--leaf-soft);border:1px solid #cfe2cb;border-radius:var(--r);padding:14px 16px;font-size:14px;color:var(--leaf-dark);}

/* ---------- Forms -------------------------------------------------------- */
label.fld{display:block;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin:14px 0 5px;}
.input{width:100%;font-family:var(--sans);font-size:17px;padding:13px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;color:var(--ink);min-height:50px;}
.input:focus{outline:2px solid var(--gold);outline-offset:1px;}
.err{color:var(--sienna);font-size:13.5px;margin-top:6px;}

/* ---------- Tables (admin) ---------------------------------------------- */
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);}
table.data{width:100%;font-size:14px;min-width:560px;}
table.data th,table.data td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line-soft);vertical-align:middle;}
table.data th{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);background:var(--paper-2);position:sticky;top:0;}
table.data tr:last-child td{border-bottom:none;}
table.data .logo-cell img{height:26px;}
.tag{font-family:var(--mono);font-size:10px;padding:3px 8px;border-radius:6px;background:var(--leaf-soft);color:var(--leaf-dark);}
.tag.miss{background:#F1DDD3;color:var(--sienna);}
.iconbtn{font-family:var(--mono);font-size:12px;padding:7px 11px;border-radius:8px;border:1.4px solid var(--line);min-height:38px;}
.iconbtn.del{border-color:#E7C3B4;color:var(--sienna);}

/* ---------- Footer ------------------------------------------------------- */
.footer{background:var(--leaf-dark);color:#EAF1E5;margin-top:30px;}
.footer .wrap{padding-block:40px 28px;}
.footer-grid{display:grid;grid-template-columns:1fr;gap:26px;}
.footer h4{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#A9C6A6;margin-bottom:12px;}
.footer a{color:#EAF1E5;} .footer a:hover{color:#fff;text-decoration:underline;}
.footer p{font-size:14px;color:#CBDBC5;line-height:1.7;}
.footer .gstin{font-family:var(--mono);font-size:12px;color:#fff;background:rgba(255,255,255,.08);padding:4px 9px;border-radius:6px;display:inline-block;margin-top:6px;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:26px;padding-top:18px;font-size:12.5px;color:#A9C6A6;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;}
.footer-bottom a.partner{color:var(--gold-soft);font-family:var(--mono);}

/* ---------- Farmer signup (modern) -------------------------------------- */
.reg-grid{display:grid;grid-template-columns:1fr;gap:22px;align-items:start;}
@media(min-width:900px){ .reg-grid{grid-template-columns:.92fr 1.08fr;gap:40px;} }
.reg-intro .blist{display:flex;flex-direction:column;gap:14px;margin-top:18px;}
.reg-intro .blist li{display:flex;gap:12px;align-items:flex-start;}
.reg-intro .blist .ic{flex:0 0 auto;width:42px;height:42px;border-radius:12px;background:var(--leaf-soft);display:flex;align-items:center;justify-content:center;font-size:20px;}
.reg-intro .blist h4{font-size:15.5px;}
.reg-intro .blist p{font-size:13.5px;color:var(--faint);margin-top:2px;}
.reg-hero-photo{
  background:linear-gradient(90deg,rgba(12,30,18,.88),rgba(12,30,18,.58) 52%,rgba(12,30,18,.22) 82%,rgba(12,30,18,.06)),
    url('../assets/images/farmer-signup-bg.jpg') center / cover no-repeat;
  border-bottom:1px solid var(--leaf-dark);
}
.reg-hero-photo .wrap{padding-block:34px 30px;}
.reg-hero-photo .eyebrow{color:var(--gold-soft);}
.reg-hero-photo h1{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.5);}
.reg-hero-photo p.lede{color:#eaf1e5;text-shadow:0 1px 10px rgba(0,0,0,.45);}
@media(max-width:760px){
  .reg-hero-photo{background:linear-gradient(180deg,rgba(12,30,18,.74),rgba(12,30,18,.5) 60%,rgba(12,30,18,.6)),
    url('../assets/images/farmer-signup-bg.jpg') center / cover no-repeat;}
}
.reg-card{background:var(--paper);border:1px solid var(--line);border-left:5px solid var(--leaf);border-radius:var(--r-lg);padding:22px;box-shadow:var(--shadow-lg);}
.reg-card .req{color:var(--sienna);}
.cropwrap{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.cropchip{font-family:var(--mono);font-size:13px;padding:9px 14px;border-radius:999px;background:#fff;border:1.5px solid var(--line);color:var(--ink-soft);min-height:42px;cursor:pointer;user-select:none;transition:background .12s,border-color .12s;}
.cropchip.on{background:var(--leaf);border-color:var(--leaf);color:#fff;}
.addcrop-row{display:flex;gap:8px;margin-top:10px;}
.reg-success{display:none;text-align:center;padding:30px 12px;}
.reg-success .big{font-size:50px;}
.reg-trust{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
.reg-trust .pill{font-size:11px;}
/* embed mode (inside home modal) */
body.embed{padding-bottom:0;background:var(--cream);}
body.embed .reg-intro{display:none;}
body.embed .reg-wrap{padding-block:16px;}
body.embed .reg-card{box-shadow:none;border-radius:var(--r);}

/* ---------- Product marquee --------------------------------------------- */
.marquee{overflow:hidden;background:linear-gradient(180deg,var(--cream),var(--paper-2));padding:18px 0;}
.marquee-track{display:flex;gap:14px;width:max-content;animation:marquee 40s linear infinite;}
.marquee:hover .marquee-track{animation-play-state:paused;}
.mq-logo{flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  width:150px;height:84px;padding:14px 18px;background:#fff;border:1px solid var(--line);
  border-radius:var(--r);box-shadow:var(--shadow);}
.mq-logo img{max-width:100%;max-height:48px;width:auto;object-fit:contain;}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:560px){ .mq-logo{width:122px;height:72px;padding:12px 14px;} .mq-logo img{max-height:40px;} }
@media(prefers-reduced-motion:reduce){ .marquee-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center} }

/* ---------- Login & portal ---------------------------------------------- */
.auth-shell{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:24px 0;}
.auth-card{width:100%;max-width:400px;}
.creds{font-family:var(--mono);font-size:11.5px;color:var(--faint);background:var(--paper-2);border:1px dashed var(--line);border-radius:10px;padding:12px;margin-top:16px;line-height:1.7;}
.tool-grid{display:grid;grid-template-columns:1fr;gap:16px;}
.tool-card{display:flex;gap:14px;align-items:center;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--r);padding:14px;box-shadow:var(--shadow);transition:transform .14s,box-shadow .14s;}
.tool-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);}
.tool-card .tic{width:54px;height:54px;flex:0 0 auto;border-radius:14px;background:var(--leaf-soft);display:flex;align-items:center;justify-content:center;font-size:26px;}
.tool-card h3{font-size:17px;} .tool-card p{font-size:13.5px;color:var(--faint);margin-top:3px;}
.locked{opacity:.5;pointer-events:none;}

/* ---------- Stat strip --------------------------------------------------- */
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:16px;text-align:center;box-shadow:var(--shadow);}
.stat .n{font-family:var(--display);font-weight:700;font-size:28px;color:var(--leaf-dark);}
.stat .l{font-family:var(--mono);font-size:11px;color:var(--faint);text-transform:uppercase;letter-spacing:.05em;margin-top:4px;}

/* ---------- Modal -------------------------------------------------------- */
.modal-bg{position:fixed;inset:0;z-index:100;background:rgba(42,35,22,.5);backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;padding:0;}
.modal{background:var(--paper);width:100%;max-width:480px;border-radius:var(--r-lg) var(--r-lg) 0 0;padding:22px 20px calc(22px + env(safe-area-inset-bottom));max-height:92vh;overflow-y:auto;box-shadow:var(--shadow-lg);}
.modal h3{font-size:21px;margin-bottom:4px;}
.modal .x{position:absolute;}

/* ---------- Responsive (tablet / desktop) -------------------------------- */
@media(min-width:640px){
  .cat-grid{grid-template-columns:repeat(3,1fr);}
  .prod-grid{grid-template-columns:repeat(3,1fr);}
  .brand-grid{grid-template-columns:repeat(3,1fr);}
  .stats{grid-template-columns:repeat(4,1fr);}
  .grid-2{grid-template-columns:1fr 1fr;}
  .tool-grid{grid-template-columns:1fr 1fr;}
  .modal{border-radius:var(--r-lg);}
  .modal-bg{align-items:center;padding:20px;}
}
@media(min-width:900px){
  body{padding-bottom:0;}
  .tabbar{display:none;}
  .nav-links{display:flex;}
  .cat-grid{grid-template-columns:repeat(5,1fr);}
  .prod-grid{grid-template-columns:repeat(4,1fr);}
  .brand-grid{grid-template-columns:repeat(5,1fr);}
  .footer-grid{grid-template-columns:2fr 1fr 1fr 1.2fr;}
  section{padding-block:46px;}
}
@media(prefers-reduced-motion:reduce){*{transition:none !important;scroll-behavior:auto;}}
