/* Nura Foods — site stylesheet */
:root {
  --bg:#F6F1E8; --bg-2:#efe8d8; --surface:#FFFFFF; --surface-2:#FBF7EF;
  --ink:#0F1B33; --ink-soft:#4a5572;
  --green:#638246; --green-deep:#4f6a37; --green-lift:#74995a;
  --orange:#FF7A00; --yellow:#FFD23F;
  --line:rgba(15,27,51,0.10);
  --shadow-sm:0 4px 16px rgba(15,27,51,0.07);
  --shadow:0 18px 48px rgba(15,27,51,0.12);
  --shadow-lift:0 30px 70px rgba(15,27,51,0.20);
  --wa:#25D366;
  --display:"Fredoka","Trebuchet MS",sans-serif;
  --body:"Plus Jakarta Sans",-apple-system,"Segoe UI",sans-serif;
  --maxw:1180px; --r:26px;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){ :root:not([data-theme="light"]){
  --bg:#0C1526; --bg-2:#0a1120; --surface:#152340; --surface-2:#111d37;
  --ink:#F6F1E8; --ink-soft:#aab4cc; --green:#8bb063; --green-deep:#6f9450; --green-lift:#9cc072;
  --orange:#ff8c24; --yellow:#FFD23F; --line:rgba(246,241,232,0.14);
  --shadow-sm:0 4px 16px rgba(0,0,0,.3); --shadow:0 18px 48px rgba(0,0,0,.42); --shadow-lift:0 30px 70px rgba(0,0,0,.55);
  color-scheme:dark;
}}
:root[data-theme="dark"]{
  --bg:#0C1526; --bg-2:#0a1120; --surface:#152340; --surface-2:#111d37;
  --ink:#F6F1E8; --ink-soft:#aab4cc; --green:#8bb063; --green-deep:#6f9450; --green-lift:#9cc072;
  --orange:#ff8c24; --yellow:#FFD23F; --line:rgba(246,241,232,0.14);
  --shadow-sm:0 4px 16px rgba(0,0,0,.3); --shadow:0 18px 48px rgba(0,0,0,.42); --shadow-lift:0 30px 70px rgba(0,0,0,.55);
  color-scheme:dark;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{background:var(--bg); color:var(--ink); font-family:var(--body); font-size:15px; line-height:1.6; overflow-x:hidden;}
h1,h2,h3,h4{font-family:var(--display); font-weight:600; line-height:1.08; text-wrap:balance; margin:0; letter-spacing:-.01em;}
p{margin:0;} a{color:inherit; text-decoration:none;} img{max-width:100%; display:block;}
.wrap{max-width:var(--maxw); margin-inline:auto; padding-inline:22px;}
.eyebrow{font-weight:800; letter-spacing:.18em; text-transform:uppercase; font-size:12px; color:var(--green); display:inline-flex; align-items:center; gap:9px;}
.eyebrow::before{content:""; width:22px; height:2px; background:var(--green); border-radius:2px; display:inline-block;}

/* Reveal */
html.js .reveal{opacity:0; transform:translateY(28px); transition:opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1);}
html.js .reveal.in{opacity:1; transform:none;}
@media (prefers-reduced-motion:reduce){ html.js .reveal{opacity:1!important; transform:none!important; transition:none;} }

/* Announcement */
.announce{background:linear-gradient(90deg,var(--orange),#ff9838); color:#fff; font-weight:700; font-size:13.5px; text-align:center; padding:10px 16px;}
.announce span{opacity:.92; font-weight:600;}

/* Header */
header.site{position:sticky; top:0; z-index:50; transition:background .3s,box-shadow .3s,border-color .3s;
  background:color-mix(in srgb,var(--bg) 70%,transparent); backdrop-filter:blur(14px) saturate(1.2); border-bottom:1px solid transparent;}
header.site.scrolled{background:color-mix(in srgb,var(--bg) 92%,transparent); box-shadow:var(--shadow-sm); border-bottom-color:var(--line);}
.nav{display:flex; align-items:center; gap:22px; height:74px; transition:height .3s;}
header.site.scrolled .nav{height:64px;}
.brand img{height:64px; width:auto; transition:height .3s;} header.site.scrolled .brand img{height:54px;}
.brand .dark-only{display:none;}
:root[data-theme="dark"] .brand .light-only{display:none;} :root[data-theme="dark"] .brand .dark-only{display:block;}
@media (prefers-color-scheme:dark){ :root:not([data-theme="light"]) .brand .light-only{display:none;} :root:not([data-theme="light"]) .brand .dark-only{display:block;} }
nav.links{display:flex; gap:6px; margin-inline:auto; font-weight:700; font-size:15px;}
nav.links a{padding:9px 14px; border-radius:999px; color:var(--ink-soft); transition:color .2s,background .2s;}
nav.links a:hover{color:var(--ink); background:color-mix(in srgb,var(--green) 12%,transparent);}
nav.links a.active{color:var(--green-deep); background:color-mix(in srgb,var(--green) 15%,transparent);}
.nav-tools{display:flex; align-items:center; gap:10px;}
.icon-btn{width:42px; height:42px; display:grid; place-items:center; border-radius:50%; border:1px solid var(--line); background:var(--surface); color:var(--ink); cursor:pointer; transition:transform .2s,box-shadow .2s;}
.icon-btn:hover{transform:translateY(-2px); box-shadow:var(--shadow-sm);}
.icon-btn svg{width:19px; height:19px;} .menu-btn{display:none;}
.nav-cta{background:var(--green); color:#fff; font-weight:800; font-size:14px; border-radius:999px; padding:11px 20px; white-space:nowrap;}

/* Buttons */
.btn{font-family:var(--body); font-weight:800; font-size:15px; border:none; border-radius:999px; padding:15px 28px; cursor:pointer; display:inline-flex; align-items:center; gap:10px; position:relative; overflow:hidden; transition:transform .18s,box-shadow .2s;}
.btn::after{content:""; position:absolute; top:0; left:-120%; width:60%; height:100%; transform:skewX(-20deg); background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent); transition:left .6s;}
.btn:hover::after{left:130%;} .btn:hover{transform:translateY(-3px);}
.btn-primary{background:linear-gradient(135deg,var(--green-lift),var(--green-deep)); color:#fff; box-shadow:0 12px 28px color-mix(in srgb,var(--green) 45%,transparent);}
.btn-ghost{background:transparent; color:var(--ink); border:1.5px solid var(--ink);}
.btn-ghost:hover{background:var(--ink); color:var(--bg);}

/* Hero */
.hero{position:relative; padding-block:70px 60px; overflow:hidden;}
.hero .mesh{position:absolute; inset:-20% -10% 0; z-index:0; pointer-events:none; filter:blur(60px); opacity:.8;}
.hero .blob{position:absolute; border-radius:50%;}
.hero .b1{width:420px; height:420px; background:color-mix(in srgb,var(--green) 55%,transparent); top:-80px; left:-60px; animation:drift1 14s ease-in-out infinite;}
.hero .b2{width:360px; height:360px; background:color-mix(in srgb,var(--yellow) 55%,transparent); top:40px; right:-40px; animation:drift2 18s ease-in-out infinite;}
.hero .b3{width:300px; height:300px; background:color-mix(in srgb,var(--orange) 40%,transparent); bottom:-120px; left:40%; animation:drift1 20s ease-in-out infinite reverse;}
@keyframes drift1{0%,100%{transform:translate(0,0)} 50%{transform:translate(30px,40px)}}
@keyframes drift2{0%,100%{transform:translate(0,0)} 50%{transform:translate(-40px,30px)}}
.hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:1.05fr 1fr; gap:46px; align-items:center;}
.hero .tag{display:inline-flex; align-items:center; gap:9px; background:var(--surface); border:1px solid var(--line); border-radius:999px; padding:7px 16px 7px 8px; font-weight:700; font-size:13px; color:var(--ink-soft); box-shadow:var(--shadow-sm);}
.hero .tag b{background:var(--yellow); color:#4a3a00; border-radius:999px; padding:3px 10px; font-size:12px;}
.hero h1{font-size:clamp(42px,6.4vw,72px); font-weight:700; margin-top:20px;}
.hero h1 .grad{background:linear-gradient(120deg,var(--green-deep),var(--green-lift) 60%,var(--orange)); -webkit-background-clip:text; background-clip:text; color:transparent;}
.hero p.lead{font-size:18.5px; color:var(--ink-soft); max-width:46ch; margin-top:18px;}
.cta-row{display:flex; gap:14px; flex-wrap:wrap; margin-top:30px;}
.hero-stats{display:flex; gap:30px; margin-top:34px; flex-wrap:wrap;}
.hero-stats .st b{font-family:var(--display); font-weight:600; font-size:30px; display:block; color:var(--ink); line-height:1;}
.hero-stats .st span{font-size:13px; color:var(--ink-soft); font-weight:600;}
.hero-visual{position:relative; aspect-ratio:1/1;}
.hero-card{position:absolute; inset:0; border-radius:34px; overflow:hidden; border:1px solid var(--line); box-shadow:var(--shadow-lift); background:radial-gradient(130% 130% at 25% 15%,#eaf1dd 0%,#d6e6bf 48%,#bcd79e 100%); animation:bob 6s ease-in-out infinite;}
:root[data-theme="dark"] .hero-card, :root:not([data-theme="light"]) .hero-card{background:radial-gradient(130% 130% at 25% 15%,#23436f 0%,#1a3357 55%,#142743 100%);}
@keyframes bob{0%,100%{transform:translateY(0) rotate(0)} 50%{transform:translateY(-14px) rotate(-1deg)}}
.hero-card img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.hero-card .jarmark{position:absolute; inset:0; display:grid; place-items:center; color:var(--green-deep);}
.hero-card .jarmark svg{width:48%; height:48%; filter:drop-shadow(0 12px 24px rgba(0,0,0,.18));}
.hero-card .samp{position:absolute; top:16px; right:16px;}
.float-chip{position:absolute; background:var(--surface); border:1px solid var(--line); border-radius:16px; padding:11px 15px; box-shadow:var(--shadow); font-weight:800; font-size:13.5px; display:flex; align-items:center; gap:9px; z-index:2;}
.float-chip .dot{width:30px; height:30px; border-radius:10px; display:grid; place-items:center; color:#fff;}
.float-chip.c1{top:8%; left:-26px; animation:bob 5s ease-in-out infinite;}
.float-chip.c2{bottom:12%; right:-22px; animation:bob 7s ease-in-out infinite .5s;}
.float-chip.c1 .dot{background:var(--green);} .float-chip.c2 .dot{background:var(--orange);}
.samp{background:rgba(15,27,51,.5); color:#fff; font-size:11px; font-weight:700; letter-spacing:.04em; padding:4px 9px; border-radius:999px;}

/* Marquee */
.marquee{background:var(--ink); color:var(--bg); overflow:hidden; border-block:1px solid var(--line);}
.marquee .track{display:flex; white-space:nowrap; animation:scroll 36s linear infinite;}
.marquee .track:hover{animation-play-state:paused;}
.marquee .track span{font-family:var(--display); font-weight:500; font-size:19px; padding:16px 0; display:inline-flex; align-items:center;}
.marquee .track span::after{content:"✦"; color:var(--yellow); margin:0 28px; font-size:13px;}
@keyframes scroll{from{transform:translateX(0)} to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){ .marquee .track,.hero-card,.float-chip,.hero .blob{animation:none!important;} }

/* Sections */
.sec{padding-block:72px;}
.sec-head{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:36px; flex-wrap:wrap;}
.sec-head h2{font-size:clamp(30px,4.2vw,46px); margin-top:10px;}
.sec-head .link{font-weight:800; color:var(--green-deep); display:inline-flex; gap:7px; align-items:center; transition:gap .2s;}
.sec-head .link:hover{gap:12px;}

/* Category filter tabs */
.cat-tabs{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:30px;}
.cat-tabs a{padding:9px 18px; border-radius:999px; border:1px solid var(--line); font-weight:700; font-size:14px; color:var(--ink-soft); background:var(--surface); transition:all .2s;}
.cat-tabs a:hover{color:var(--ink);}
.cat-tabs a.active{background:var(--green); color:#fff; border-color:var(--green);}

/* Products */
/* auto-fit + capped max so 1–few products stay card-sized and centered, never stretched full width */
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(244px,300px)); gap:24px; justify-content:center;}
.card{background:var(--surface); border:1px solid var(--line); border-radius:var(--r); overflow:hidden; box-shadow:var(--shadow-sm); display:flex; flex-direction:column; transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s;}
.card:hover{transform:translateY(-8px); box-shadow:var(--shadow-lift);}
.pimg{position:relative; aspect-ratio:1/1; display:grid; place-items:center; overflow:hidden; background:linear-gradient(150deg,var(--surface-2),color-mix(in srgb,var(--green) 15%,var(--surface-2)));}
.pimg a{position:absolute; inset:0; display:grid; place-items:center;}
.pimg img{width:100%; height:100%; object-fit:cover; transition:transform .5s cubic-bezier(.16,1,.3,1);}
.card:hover .pimg img{transform:scale(1.06);}
.pimg .jarmark{color:var(--green); transition:transform .5s cubic-bezier(.16,1,.3,1);}
.card:hover .pimg .jarmark{transform:scale(1.12) rotate(-3deg);}
.pimg .jarmark svg{width:54%; height:54%;}
.pimg .samp{position:absolute; top:12px; left:12px;}
.badge{position:absolute; top:12px; right:12px; background:var(--yellow); color:#4a3a00; font-weight:800; font-size:11px; letter-spacing:.03em; text-transform:uppercase; padding:5px 11px; border-radius:999px; box-shadow:var(--shadow-sm); z-index:2;}
.badge.save{background:var(--orange); color:#fff;}
.card-body{padding:17px 17px 19px; display:flex; flex-direction:column; gap:9px; flex:1;}
.stars{display:flex; align-items:center; gap:6px; font-size:13px; color:var(--ink-soft); font-weight:700;}
.stars .s{color:var(--yellow); letter-spacing:1px;}
.card h3{font-size:20px; font-weight:600;}
.card h3 a:hover{color:var(--green-deep);}
.card .weight{font-size:13px; color:var(--ink-soft); font-weight:600;}
.price{display:flex; align-items:baseline; gap:9px; margin-top:2px;}
.price .now{font-family:var(--display); font-weight:600; font-size:23px; color:var(--ink);}
.price .was{font-size:14px; color:var(--ink-soft); text-decoration:line-through;}
.price .off{font-size:12px; font-weight:800; color:var(--green-deep); background:color-mix(in srgb,var(--green) 18%,transparent); padding:2px 9px; border-radius:999px;}
.btn-wa{margin-top:auto; background:var(--wa); color:#063d1e; font-weight:800; border:none; border-radius:999px; padding:13px; display:flex; align-items:center; justify-content:center; gap:8px; cursor:pointer; font-family:var(--body); font-size:14.5px; position:relative; overflow:hidden; transition:transform .18s,filter .18s;}
.btn-wa::after{content:""; position:absolute; top:0; left:-120%; width:55%; height:100%; transform:skewX(-20deg); background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent); transition:left .6s;}
.btn-wa:hover::after{left:130%;} .btn-wa:hover{transform:translateY(-2px); filter:brightness(1.04);}
.btn-wa svg{width:18px; height:18px;}

/* Trust */
.trust{background:var(--surface); border-block:1px solid var(--line);}
.trust .wrap{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; padding-block:40px;}
.trust .t{display:flex; gap:14px; align-items:center;}
.trust .t .ic{flex:none; width:50px; height:50px; border-radius:15px; display:grid; place-items:center; background:linear-gradient(140deg,color-mix(in srgb,var(--green) 20%,transparent),color-mix(in srgb,var(--yellow) 18%,transparent)); color:var(--green-deep); border:1px solid var(--line); transition:transform .3s;}
.trust .t:hover .ic{transform:translateY(-4px) rotate(-4deg);}
.trust .t .ic svg{width:24px; height:24px;}
.trust .t b{display:block; font-size:15.5px; font-family:var(--display); font-weight:600;}
.trust .t span{font-size:13px; color:var(--ink-soft);}

/* Founder */
.founder{position:relative; background:linear-gradient(145deg,#142743,var(--ink)); color:var(--bg); border-radius:34px; overflow:hidden; box-shadow:var(--shadow);}
.founder::before{content:""; position:absolute; width:320px; height:320px; border-radius:50%; background:color-mix(in srgb,var(--green) 40%,transparent); top:-120px; right:-80px; filter:blur(70px);}
.founder-grid{position:relative; display:grid; grid-template-columns:.85fr 1.15fr; align-items:stretch;}
.founder .photo{min-height:340px; position:relative; background:radial-gradient(120% 120% at 70% 20%,#2a4a78,#152a4c); display:grid; place-items:center; overflow:hidden;}
.founder .photo img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.founder .photo .jarmark{color:var(--yellow);} .founder .photo .jarmark svg{width:42%; height:42%;}
.founder .copy{padding:52px 48px;}
.founder .copy .eyebrow{color:var(--yellow);} .founder .copy .eyebrow::before{background:var(--yellow);}
.founder .copy h2{color:var(--bg); font-size:clamp(28px,3.6vw,42px); margin:16px 0 18px;}
.founder .copy p{color:#d4dbe9; font-size:17px; max-width:52ch;}
.founder .sign{margin-top:24px; font-family:var(--display); font-size:24px; color:var(--yellow);}
.founder .sign small{display:block; font-family:var(--body); font-size:12.5px; letter-spacing:.12em; text-transform:uppercase; color:#aeb8cc; margin-top:5px;}

/* Reviews */
.rev-head{display:flex; flex-direction:column; align-items:center; text-align:center; gap:10px; margin-bottom:34px;}
.gbadge{display:inline-flex; align-items:center; gap:8px; background:var(--surface); border:1px solid var(--line); border-radius:999px; padding:8px 16px; font-weight:800; font-size:14px; box-shadow:var(--shadow-sm);}
.gbadge .score{color:var(--green-deep);}
.rev-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.rev{background:var(--surface); border:1px solid var(--line); border-radius:22px; padding:24px; box-shadow:var(--shadow-sm); transition:transform .3s,box-shadow .3s;}
.rev:hover{transform:translateY(-6px); box-shadow:var(--shadow);}
.rev .s{color:var(--yellow); letter-spacing:1px; font-size:14px;}
.rev p{margin:13px 0 17px; font-size:15px;}
.rev .who{display:flex; align-items:center; gap:12px;}
.rev .av{width:40px; height:40px; border-radius:50%; background:linear-gradient(140deg,var(--green-lift),var(--green-deep)); color:#fff; display:grid; place-items:center; font-weight:800; font-family:var(--display);}
.rev .who b{font-size:14px;} .rev .who span{font-size:12px; color:var(--ink-soft); display:block;}

/* Breadcrumb */
.crumb{font-size:12.5px; color:var(--ink-soft); font-weight:700;}
.crumb a:hover{color:var(--green-deep);}

/* Product detail */
.pdp{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start;}
.pdp .gallery{display:grid; grid-template-columns:70px 1fr; gap:16px;}
.pdp .thumbs{display:flex; flex-direction:column; gap:11px;}
.pdp .thumb{aspect-ratio:1; border-radius:14px; border:1px solid var(--line); background:var(--surface-2); display:grid; place-items:center; color:var(--ink-soft); cursor:pointer; overflow:hidden;}
.pdp .thumb img{width:100%; height:100%; object-fit:cover;}
.pdp .thumb.active{border-color:var(--green); border-width:2px; color:var(--green);}
.pdp .thumb svg{width:56%; height:56%;}
.pdp .main-img{position:relative; aspect-ratio:1; border-radius:22px; border:1px solid var(--line); display:grid; place-items:center; overflow:hidden; background:linear-gradient(150deg,var(--surface-2),color-mix(in srgb,var(--green) 15%,var(--surface-2))); color:var(--green);}
.pdp .main-img img{width:100%; height:100%; object-fit:cover;}
.pdp .main-img .jarmark svg{width:50%; height:50%;}
.pdp .cat{color:var(--green-deep); font-weight:800; font-size:12px; letter-spacing:.12em; text-transform:uppercase; margin-top:14px;}
.pdp h1{font-size:clamp(28px,4vw,38px); margin:6px 0 10px;}
.pdp .price{margin:4px 0 16px;} .pdp .price .now{font-size:30px;}
.pdp .desc{font-size:15.5px; color:var(--ink-soft); margin-bottom:20px;}
.pdp .size-row{display:flex; gap:12px; align-items:center; margin-bottom:18px; flex-wrap:wrap;}
.pdp .size{border:1.5px solid var(--green); color:var(--green-deep); background:color-mix(in srgb,var(--green) 10%,transparent); border-radius:13px; padding:10px 17px; font-weight:800; font-size:14px; cursor:pointer;}
.pdp .qty{display:inline-flex; align-items:center; border:1px solid var(--line); border-radius:13px; overflow:hidden;}
.pdp .qty button{border:none; background:var(--surface-2); width:40px; height:42px; font-size:18px; cursor:pointer; color:var(--ink);}
.pdp .qty span{width:46px; text-align:center; font-weight:800;}
.pdp .btn-wa{max-width:340px; padding:16px; font-size:15.5px;}
.inc-tax{font-size:12.5px; color:var(--ink-soft); margin-top:-8px; margin-bottom:12px;}
.accordion{margin-top:24px;}
.acc{border-top:1px solid var(--line);}
.acc:last-child{border-bottom:1px solid var(--line);}
.acc button{width:100%; background:none; border:none; padding:15px 2px; font-weight:800; display:flex; justify-content:space-between; align-items:center; font-size:14.5px; cursor:pointer; color:var(--ink); font-family:var(--body);}
.acc .body{max-height:0; overflow:hidden; transition:max-height .3s ease; color:var(--ink-soft); font-size:14.5px;}
.acc.open .body{max-height:400px; padding-bottom:15px;}
.acc .plus{color:var(--ink-soft); transition:transform .3s;} .acc.open .plus{transform:rotate(45deg);}

/* Simple content pages */
.page-hero{padding-block:52px 10px;}
.page-hero h1{font-size:clamp(30px,4.5vw,46px);}
.prose{max-width:72ch; font-size:16px; color:var(--ink-soft); padding-block:24px 10px;}
.prose p{margin-bottom:16px;} .prose h2{color:var(--ink); margin:26px 0 12px;}

/* Forms */
.form-card{background:var(--surface); border:1px solid var(--line); border-radius:24px; padding:30px; box-shadow:var(--shadow-sm); max-width:560px;}
label.fld{display:block; font-weight:700; font-size:13.5px; margin-bottom:6px; color:var(--ink);}
.input,textarea.input,select.input{width:100%; border:1px solid var(--line); border-radius:12px; padding:12px 14px; font-family:var(--body); font-size:15px; background:var(--surface-2); color:var(--ink); margin-bottom:16px;}
.input:focus{outline:2px solid var(--green); border-color:var(--green);}
.alert{border-radius:12px; padding:12px 16px; font-weight:700; font-size:14px; margin-bottom:18px;}
.alert-success{background:color-mix(in srgb,var(--green) 18%,transparent); color:var(--green-deep);}
.alert-error{background:color-mix(in srgb,var(--orange) 20%,transparent); color:#b24a00;}

/* FAQ */
.faq-list{max-width:760px;}

/* Mobile menu */
.mobile-menu{display:none; position:fixed; inset:0; z-index:60;}
.mobile-menu .scrim{position:absolute; inset:0; background:rgba(8,14,28,.5); opacity:0; transition:opacity .3s; backdrop-filter:blur(2px);}
.mobile-menu .panel{position:absolute; top:0; right:0; height:100%; width:min(82vw,340px); background:var(--bg); box-shadow:var(--shadow-lift); transform:translateX(100%); transition:transform .34s cubic-bezier(.16,1,.3,1); display:flex; flex-direction:column; padding:20px 22px; gap:6px;}
.mobile-menu.open{display:block;} .mobile-menu.open .scrim{opacity:1;} .mobile-menu.open .panel{transform:none;}
.mobile-menu .mhead{display:flex; justify-content:space-between; align-items:center; margin-bottom:14px;}
.mobile-menu .mhead img{height:38px;}
.mobile-menu a.mlink{font-family:var(--display); font-weight:600; font-size:22px; padding:12px 6px; border-bottom:1px solid var(--line); color:var(--ink);}
.mobile-menu a.mlink:last-of-type{border-bottom:none;}
.mobile-menu .btn-primary{margin-top:14px; justify-content:center;}
@media (prefers-reduced-motion:reduce){ .mobile-menu .scrim,.mobile-menu .panel{transition:none;} }

/* Footer */
footer.site{background:var(--ink); color:var(--bg); margin-top:76px;}
footer.site .wrap{display:grid; grid-template-columns:1.4fr 1fr 1.1fr; gap:42px; padding-block:56px 32px;}
footer .flogo{height:46px; width:auto; margin-bottom:18px;}
footer p.about{color:#c3cada; font-size:14.5px; max-width:34ch;}
footer .socials{display:flex; gap:10px; margin-top:20px;}
footer .socials a{width:42px; height:42px; border-radius:50%; border:1px solid rgba(255,255,255,.18); display:grid; place-items:center; color:var(--bg); transition:background .2s,transform .2s;}
footer .socials a:hover{background:var(--green); border-color:var(--green); transform:translateY(-3px);}
footer .socials svg{width:18px; height:18px;}
footer h4{font-family:var(--display); font-weight:600; font-size:17px; margin:4px 0 17px; color:var(--yellow);}
footer ul{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:11px;}
footer ul a{color:#c3cada; font-size:14.5px; transition:color .2s;} footer ul a:hover{color:#fff;}
footer .contact li{color:#c3cada; font-size:14.5px; margin-bottom:12px;}
footer .fssai{display:inline-flex; gap:8px; align-items:center; margin-top:10px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); border-radius:11px; padding:9px 13px; font-size:12.5px; color:#dfe4ee;}
footer .legal{border-top:1px solid rgba(255,255,255,.14);}
footer .legal .wrap{display:flex; justify-content:space-between; gap:16px; padding-block:22px 8px; flex-wrap:wrap;}
footer .legal,footer .legal a{color:#a7afc4; font-size:13px;}
footer .legal .credit{text-align:center; padding:4px 22px 22px; font-size:12.5px; color:#8c93a8;}
footer .legal .credit a{color:#c3cada; text-decoration:underline; font-weight:700;}
footer .legal .credit a:hover{color:#fff;}
footer .legal .links{display:flex; gap:18px; flex-wrap:wrap;}

@media (max-width:920px){
  nav.links,.nav-cta{display:none;} .menu-btn{display:grid;}
  .hero-grid,.founder-grid,.pdp{grid-template-columns:1fr;}
  /* Full-width square so aspect-ratio produces real height (margin-inline:auto
     alone made it shrink-to-fit to 0 because its children are absolute). */
  .hero-visual{width:100%; max-width:420px; margin:14px auto 0;}
  /* Keep the decorative chips inside the card so they never overlap the stats
     or the marquee strip on narrow screens. */
  .float-chip.c1{top:14px; left:14px;}
  .float-chip.c2{bottom:14px; right:14px;}
  .announce{font-size:12px; padding:8px 14px; line-height:1.35;}
  footer .flogo{height:60px;}
  .trust .wrap{grid-template-columns:repeat(2,1fr);} .rev-grid{grid-template-columns:1fr;}
  footer.site .wrap{grid-template-columns:1fr; gap:30px;}
}
@media (max-width:480px){ .trust .wrap{grid-template-columns:1fr;} .hero-stats{gap:22px;} }
