.gr-ap{
–ap-dark:#17261C;
–ap-green:#3A5A38;
–ap-green-ink:#2B4529;
–ap-cream:#FBFAF6;
–ap-sand:#F3EFE5;
–ap-ink:#1B2A1F;
–ap-muted:#5E6B5B;
–ap-light:#F1EEE6;
–ap-light-muted:rgba(241,238,230,.66);
–ap-accent:#EE9E4A; /* orange/gold accent — change here */
–ap-line:rgba(43,69,41,.14);
–ap-body:var(–gr-font-body,’Inter’,-apple-system,BlinkMacSystemFont,’Segoe UI’,Roboto,Helvetica,Arial,sans-serif);
–ap-display:var(–gr-font-display,’Fraunces’,Georgia,’Times New Roman’,serif);
–ap-pad-x:clamp(18px,4vw,44px);
–ap-tear:url(“data:image/svg+xml,%3Csvg xmlns=’http://www.w3.org/2000/svg’ width=’480′ height=’14’ viewBox=’0 0 480 14′ preserveAspectRatio=’none’%3E%3Cpath d=’M0 7 Q12 4 24 6 T48 5 T72 7 T96 4 T120 6 T144 5 T168 8 T192 5 T216 6 T240 4 T264 7 T288 5 T312 6 T336 4 T360 7 T384 5 T408 6 T432 4 T456 7 T480 7 V14 H0Z’/%3E%3C/svg%3E”);
display:block;position:relative;width:100%;max-width:100%;margin:0;padding:0;
grid-column:1 / -1;flex:1 1 100%;
font-family:var(–ap-body);color:var(–ap-ink);background:var(–ap-cream);
-webkit-font-smoothing:antialiased;
}
.gr-ap.gr-bleed{width:100vw;max-width:100vw;margin-left:calc(50% – 50vw);margin-right:calc(50% – 50vw);}
.gr-ap *,.gr-ap *::before,.gr-ap *::after{box-sizing:border-box;}
.gr-ap a{text-decoration:none;box-shadow:none;}
.gr-ap ul{margin:0;padding:0;list-style:none;}
.gr-ap li{list-style:none;margin:0;}
.gr-ap h1,.gr-ap h2,.gr-ap h3,.gr-ap p,.gr-ap figure,.gr-ap blockquote{margin:0;padding:0;border:0;text-transform:none;}
.gr-ap .ap-sec{position:relative;padding:clamp(64px,8vw,120px) var(–ap-pad-x);}
.gr-ap .ap-wrap{position:relative;z-index:1;width:100%;max-width:1200px;margin:0 auto;}
/* torn paper edge: sits on top of a section, coloured by that section */
.gr-ap .ap-tear{
position:absolute;left:0;right:0;top:-13px;height:14px;z-index:2;pointer-events:none;
background:currentColor;
-webkit-mask:var(–ap-tear) repeat-x 0 0 / 480px 14px;
mask:var(–ap-tear) repeat-x 0 0 / 480px 14px;
}
/* shared type */
.gr-ap .ap-eyebrow{
display:inline-flex;align-items:center;gap:10px;margin-bottom:20px;
font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(–ap-accent);
}
.gr-ap .ap-eyebrow::before{content:””;display:block;width:34px;height:1px;background:currentColor;}
.gr-ap .ap-eyebrow–green{color:var(–ap-green);}
.gr-ap .ap-h2{
font-size:clamp(30px,3.6vw,52px);line-height:1.08;font-weight:800;letter-spacing:-.035em;color:var(–ap-ink);
}
.gr-ap .ap-h2 em,.gr-ap .ap-h1 em{font-family:var(–ap-display);font-style:italic;font-weight:500;letter-spacing:-.02em;color:var(–ap-accent);}
.gr-ap .ap-p{font-size:clamp(15.5px,1.2vw,18px);line-height:1.75;color:var(–ap-muted);max-width:62ch;}
.gr-ap .ap-p + .ap-p{margin-top:18px;}
.gr-ap .ap-p strong{color:var(–ap-ink);font-weight:600;}
.gr-ap .ap-p–lg{font-size:clamp(18px,1.5vw,22px);line-height:1.6;color:var(–ap-ink);}
/* buttons */
.gr-ap .ap-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;}
.gr-ap a.ap-btn{
display:inline-flex;align-items:center;gap:10px;padding:16px 30px;border-radius:999px;
background:var(–ap-green);border:1px solid var(–ap-green);color:var(–ap-light);
font-size:14.5px;font-weight:700;transition:background .3s,color .3s,transform .3s;
}
.gr-ap a.ap-btn:hover{background:transparent;color:var(–ap-green);transform:translateY(-2px);}
.gr-ap a.ap-btn svg{width:13px;height:13px;}
.gr-ap a.ap-link{
font-size:14px;font-weight:600;color:var(–ap-ink);padding-bottom:2px;
border-bottom:1px solid var(–ap-accent);transition:color .3s;
}
.gr-ap a.ap-link:hover{color:var(–ap-green);}
/* ================= 1. HERO ================= */
.gr-ap .ap-hero{
overflow:hidden;background:var(–ap-dark);color:var(–ap-light);
padding-top:clamp(90px,11vw,170px);padding-bottom:clamp(90px,10vw,150px);
}
.gr-ap .ap-hero__bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.gr-ap .ap-hero__bg span{position:absolute;inset:-28%;will-change:transform;}
.gr-ap .ap-hero__bg span:nth-child(1){
background:
radial-gradient(42% 52% at 20% 26%,rgba(47,122,69,.46),rgba(47,122,69,0) 66%),
radial-gradient(38% 48% at 78% 22%,rgba(30,96,58,.42),rgba(30,96,58,0) 68%),
radial-gradient(46% 56% at 62% 84%,rgba(58,140,84,.30),rgba(58,140,84,0) 70%);
filter:blur(22px);animation:ap-mesh-a 26s ease-in-out infinite alternate;
}
.gr-ap .ap-hero__bg span:nth-child(2){
background:
radial-gradient(40% 50% at 12% 78%,rgba(18,66,40,.62),rgba(18,66,40,0) 68%),
radial-gradient(44% 54% at 88% 66%,rgba(36,110,66,.30),rgba(36,110,66,0) 70%);
filter:blur(26px);animation:ap-mesh-b 37s ease-in-out infinite alternate-reverse;
}
@keyframes ap-mesh-a{0%{transform:translate3d(-2%,-1%,0) scale(1.02)}50%{transform:translate3d(3%,2%,0) scale(1.1) rotate(1.4deg)}100%{transform:translate3d(-1%,3%,0) scale(1.04) rotate(-1.2deg)}}
@keyframes ap-mesh-b{0%{transform:translate3d(2%,1%,0) scale(1.06)}50%{transform:translate3d(-3%,-2%,0) scale(.96) rotate(-1.6deg)}100%{transform:translate3d(1%,-3%,0) scale(1.08) rotate(.6deg)}}
.gr-ap .ap-hero__watermark{
position:absolute;right:-2vw;bottom:-3vw;z-index:0;pointer-events:none;user-select:none;
font-family:var(–ap-display);font-style:italic;font-weight:500;line-height:.8;
font-size:clamp(120px,22vw,340px);letter-spacing:-.04em;color:rgba(241,238,230,.045);white-space:nowrap;
}
.gr-ap .ap-hero .ap-wrap{text-align:center;max-width:1000px;}
.gr-ap .ap-hero .ap-eyebrow{justify-content:center;}
.gr-ap .ap-hero .ap-eyebrow::after{content:””;display:block;width:34px;height:1px;background:currentColor;}
.gr-ap .ap-h1{
font-size:clamp(40px,6.4vw,92px);line-height:1.02;font-weight:800;letter-spacing:-.045em;color:var(–ap-light);
}
.gr-ap .ap-hero__lead{
margin:clamp(22px,2.4vw,32px) auto 0;max-width:44ch;
font-size:clamp(17px,1.6vw,22px);line-height:1.6;color:var(–ap-light-muted);
}
.gr-ap .ap-hero__lead strong{color:var(–ap-light);font-weight:600;}
/* ================= 2. WHERE IT BEGAN ================= */
.gr-ap .ap-journey{background:var(–ap-cream);color:var(–ap-cream);}
.gr-ap .ap-journey__grid{
display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,96px);align-items:start;
}
.gr-ap .ap-journey__side{position:sticky;top:110px;}
.gr-ap .ap-date{
display:inline-flex;align-items:center;gap:10px;margin-top:28px;padding:10px 18px;border-radius:999px;
background:var(–ap-sand);border:1px solid var(–ap-line);
font-size:13px;font-weight:600;letter-spacing:.04em;color:var(–ap-green-ink);
}
.gr-ap .ap-date::before{content:””;width:8px;height:8px;border-radius:50%;background:var(–ap-accent);}
.gr-ap .ap-pull{
margin-top:clamp(28px,3vw,40px);padding-left:22px;border-left:2px solid var(–ap-accent);
font-family:var(–ap-display);font-style:italic;font-weight:500;
font-size:clamp(20px,1.8vw,26px);line-height:1.45;color:var(–ap-accent);max-width:40ch;
}
/* journey paragraphs use the same display font as the closing quote */
.gr-ap .ap-journey .ap-p,
.gr-ap .ap-journey .ap-p.ap-p–lg{
font-family:var(–ap-display);font-style:italic;font-weight:500;
font-size:clamp(20px,1.8vw,26px);line-height:1.45;letter-spacing:0;max-width:40ch;
}
.gr-ap .ap-journey .ap-p + .ap-p{margin-top:22px;}
.gr-ap .ap-journey .ap-p strong{font-weight:600;}
/* ================= 3. BACK TO OUR ROOTS ================= */
.gr-ap .ap-roots{background:var(–ap-sand);color:var(–ap-sand);}
.gr-ap .ap-roots__head{text-align:center;max-width:760px;margin:0 auto;}
.gr-ap .ap-roots__head .ap-eyebrow{justify-content:center;}
.gr-ap .ap-roots__head .ap-eyebrow::after{content:””;display:block;width:34px;height:1px;background:currentColor;}
.gr-ap .ap-roots__head .ap-p{margin:22px auto 0;}
.gr-ap .ap-spices{
display:flex;flex-wrap:wrap;justify-content:center;align-items:center;
gap:clamp(10px,1.6vw,18px) clamp(18px,2.6vw,36px);
margin:clamp(40px,5vw,60px) auto;padding:clamp(32px,4vw,48px) 0;
border-top:1px solid var(–ap-line);border-bottom:1px solid var(–ap-line);
}
.gr-ap .ap-spice{
display:inline-flex;align-items:center;gap:12px;
font-family:var(–ap-display);font-style:italic;font-weight:500;
font-size:clamp(26px,3.3vw,50px);line-height:1.1;letter-spacing:-.02em;color:var(–ap-ink);
}
.gr-ap .ap-spice i{
display:block;flex:0 0 auto;width:clamp(12px,1.1vw,16px);height:clamp(12px,1.1vw,16px);border-radius:50%;
background:var(–c);box-shadow:0 0 0 4px color-mix(in srgb,var(–c) 18%,transparent);
}
.gr-ap .ap-spice–more{color:var(–ap-muted);font-size:clamp(20px,2vw,30px);}
.gr-ap .ap-roots__grid{
display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center;
}
.gr-ap .ap-belief{
position:relative;overflow:hidden;border-radius:28px;background:var(–ap-green);color:var(–ap-light);
padding:clamp(36px,4.6vw,64px);
}
.gr-ap .ap-belief::after{
content:””;position:absolute;right:-60px;bottom:-60px;width:240px;height:240px;border-radius:50%;
border:1px solid rgba(241,238,230,.14);box-shadow:0 0 0 36px rgba(241,238,230,.03),0 0 0 72px rgba(241,238,230,.02);
}
.gr-ap .ap-belief__label{
display:block;margin-bottom:22px;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(–ap-accent);
}
.gr-ap .ap-belief__mark{
display:block;height:40px;margin-bottom:6px;font-family:var(–ap-display);font-size:96px;line-height:.9;color:var(–ap-accent);
}
.gr-ap .ap-belief__quote{
position:relative;z-index:1;font-family:var(–ap-display);font-style:italic;font-weight:500;
font-size:clamp(28px,3vw,44px);line-height:1.16;letter-spacing:-.02em;color:var(–ap-light);
}
/* ================= 4. MORE THAN A BRAND ================= */
.gr-ap .ap-brand{background:var(–ap-dark);color:var(–ap-dark);overflow:hidden;}
.gr-ap .ap-brand .ap-wrap{color:var(–ap-light);}
.gr-ap .ap-brand__head{
display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:end;
margin-bottom:clamp(40px,5vw,64px);
}
.gr-ap .ap-brand .ap-h2{color:var(–ap-light);}
.gr-ap .ap-brand .ap-p{color:var(–ap-light-muted);}
.gr-ap .ap-brand .ap-p–lg{color:var(–ap-light);}
.gr-ap .ap-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.8vw,22px);}
.gr-ap .ap-value{
position:relative;padding:clamp(26px,2.6vw,36px);border-radius:22px;
background:rgba(241,238,230,.045);border:1px solid rgba(241,238,230,.12);
transition:transform .35s ease,background .35s ease,border-color .35s ease;
}
.gr-ap .ap-value:hover{transform:translateY(-4px);background:rgba(241,238,230,.07);border-color:rgba(238,158,74,.45);}
.gr-ap .ap-value__icon{
display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:26px;
border-radius:50%;background:var(–ap-accent);color:#17261C;
}
.gr-ap .ap-value__icon svg{width:24px;height:24px;}
.gr-ap .ap-value__title{
display:block;font-size:clamp(18px,1.5vw,22px);font-weight:700;line-height:1.3;letter-spacing:-.01em;color:var(–ap-light);
}
.gr-ap .ap-value__title em{font-family:var(–ap-display);font-style:italic;font-weight:500;color:var(–ap-accent);}
.gr-ap .ap-brand__foot{
margin-top:clamp(40px,5vw,60px);text-align:center;
font-family:var(–ap-display);font-style:italic;font-weight:500;
font-size:clamp(20px,2vw,28px);line-height:1.45;color:var(–ap-light);
}
.gr-ap .ap-brand__foot span{color:var(–ap-accent);}
/* ================= 5. FOUNDERS ================= */
.gr-ap .ap-founders{background:var(–ap-sand);color:var(–ap-sand);}
.gr-ap .ap-founders__grid{
display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,6vw,96px);align-items:center;
}
.gr-ap .ap-photo{position:relative;margin:0;}
.gr-ap .ap-photo::before{
content:””;position:absolute;inset:18px -18px -18px 18px;border-radius:30px;
border:1.5px solid var(–ap-accent);z-index:0;
}
.gr-ap .ap-photo img{
position:relative;z-index:1;display:block;width:100%;height:auto;aspect-ratio:4 / 5;
object-fit:cover;object-position:center 25%;border-radius:30px;
box-shadow:0 30px 60px -30px rgba(23,38,28,.45);
}
.gr-ap .ap-photo__tag{
position:absolute;z-index:2;left:-14px;bottom:28px;
padding:12px 20px;border-radius:999px;background:var(–ap-dark);color:var(–ap-light);
font-family:var(–ap-display);font-style:italic;font-weight:500;font-size:17px;
box-shadow:0 14px 30px -14px rgba(0,0,0,.5);
}
.gr-ap .ap-founders__text .ap-p{margin-top:22px;}
.gr-ap .ap-people{display:flex;flex-wrap:wrap;gap:14px;margin-top:clamp(28px,3vw,40px);}
.gr-ap .ap-person{
display:flex;flex-direction:column;gap:4px;min-width:190px;flex:1 1 190px;
padding:18px 22px;border-radius:18px;background:var(–ap-cream);border:1px solid var(–ap-line);
}
.gr-ap .ap-person__name{font-size:clamp(18px,1.5vw,21px);font-weight:700;letter-spacing:-.01em;color:var(–ap-ink);}
.gr-ap .ap-person__role{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(–ap-accent);}
/* ================= 6. CLOSING ================= */
.gr-ap .ap-close{background:var(–ap-cream);color:var(–ap-cream);text-align:center;}
.gr-ap .ap-close .ap-wrap{max-width:960px;}
.gr-ap .ap-close__big{
font-size:clamp(34px,5vw,72px);line-height:1.08;font-weight:800;letter-spacing:-.04em;color:var(–ap-ink);
}
.gr-ap .ap-close__big em{font-family:var(–ap-display);font-style:italic;font-weight:500;color:var(–ap-green);}
.gr-ap .ap-close__lead{
margin-top:20px;font-family:var(–ap-display);font-style:italic;font-weight:500;
font-size:clamp(20px,1.9vw,26px);color:var(–ap-accent);
}
.gr-ap .ap-sign{
display:flex;flex-direction:column;align-items:center;gap:10px;
margin:clamp(44px,5vw,64px) auto 0;padding-top:clamp(36px,4vw,52px);border-top:1px solid var(–ap-line);
}
.gr-ap .ap-sign__name{
font-family:var(–ap-display);font-style:italic;font-weight:500;font-size:clamp(34px,3.6vw,48px);
letter-spacing:-.02em;line-height:1;color:var(–ap-green-ink);
}
.gr-ap .ap-close .ap-actions{justify-content:center;margin-top:30px;}
/* ================= responsive ================= */
@media (max-width:860px){
.gr-ap .ap-journey__grid,
.gr-ap .ap-roots__grid,
.gr-ap .ap-brand__head,
.gr-ap .ap-founders__grid{grid-template-columns:1fr;}
.gr-ap .ap-photo{max-width:460px;margin:0 auto;}
.gr-ap .ap-photo__tag{left:0;}
.gr-ap .ap-journey__side{position:static;}
.gr-ap .ap-values{grid-template-columns:1fr;}
}
@media (max-width:480px){
.gr-ap .ap-spice{font-size:26px;}
.gr-ap .ap-spice–more{font-size:20px;}
}
@media (prefers-reduced-motion:reduce){
.gr-ap .ap-hero__bg span{animation:none;}
.gr-ap .ap-value:hover,.gr-ap a.ap-btn:hover{transform:none;}
}

GrandRoots
Our Story

A Journey from Fear
to Purpose

Some brands are born from an idea.
GrandRoots was born from a life-changing journey.

Where it began

A time to pause, reflect and look at life differently.

July 2025

In July 2025, the founder’s life changed when she was diagnosed with Stage 2 cancer. What followed was a difficult period of treatment, uncertainty and recovery — but also a time to pause, reflect and look at life differently.

Through this journey, family became the greatest source of strength. It also led to a deeper look at something we often overlook: what we put on our plates every day.

This brought her back to the simple traditions she had grown up with — the spices, recipes and food wisdom passed down through generations.

Back to Our Roots

Never just ingredients.

They were part of family kitchens, cherished recipes and everyday traditions.

  • Turmeric
  • Cumin
  • Coriander
  • Chilli
  • Black Pepper
  • Cinnamon
  • & other traditional spices
The journey sparked a simple question
“

Why shouldn’t every family have access to spices they can trust?

That question became the beginning of GrandRoots.

Built around the belief that pure food begins with quality ingredients, GrandRoots is committed to bringing carefully sourced, authentic spices to modern kitchens while respecting the traditions behind them.

More Than a Brand

A second beginning.

For the founder, GrandRoots represents a second beginning.

It represents:

  • The strength found in family

  • The wisdom passed down through generations

  • A renewed appreciation for the simple things that matter

Every GrandRoots product carries a part of that journey — from the source to your kitchen.

GrandRoots Founder Manjot Kaur and Co-Founder Buta Singh
The founders

THE FUSION BEHIND GRANDROOTS

Two Professions. One Purpose. A Shared Promise..

Behind GrandRoots lies a partnership rooted in care, compassion, and a shared vision — bringing together two different professional journeys to create something meaningful for every family.

Founder
Manjot Kaur

A teacher by profession, brings the values of knowledge, patience, sincerity, and nurturing care. Her belief in guiding and nurturing others extends beyond the classroom into her vision for GrandRoots.

Co-Founder
Buta Singh

A healthcare professional brings a perspective shaped by responsibility, compassion, and a deep appreciation for people’s well-being.

WHERE OUR WORLDS COME TOGETHER
One profession nurtures minds; the other serves people through healthcare. Together, these experiences inspire a shared belief: caring for families begins with thoughtful everyday choices.
Rooted in the wisdom of traditional Indian kitchens and guided by our shared values, GrandRoots is our collective vision to bring quality, authentic flavours, and carefully selected spices to households everywhere.
For us, GrandRoots is more than a business. It is the meeting point of a teacher’s nurturing heart and a healthcare professional’s spirit of care — united by our respect for tradition and our commitment to quality and purity.
GRANDROOTS SPICES
Where Knowledge Meets Care,
and Tradition Meets Purity.

Pure Spices. True Tradition. Back to Our Roots.

This is only the beginning.

GrandRoots

Shop the range


Get in touch

Shopping cart
Sign in

No account yet?

Start typing to see products you are looking for.
Shop
0 Wishlist
0 items Cart
My account