:root{
  --teal:#0E7C72;      /* brand teal: wordmark, languages, actions */
  --teal-d:#0A5C54;
  --tint:#EEF7F6;      /* faint teal wash */
  --tint2:#DCEEEB;
  --white:#FFFFFF;
  --ink:#10201E;
  --mist:#6F8582;
  --line:#E3ECEA;
  /* legacy names, remapped so every page stays on-palette */
  --leaf:var(--teal-d);--leaf-2:var(--tint);--rice:var(--white);--rice-2:var(--tint);--sand:var(--tint);--turmeric:var(--teal);--clay:var(--teal);
  --serif:'Fraunces',Georgia,serif;
  --sans:'Inter',system-ui,sans-serif;
  --r:16px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--white);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1;letter-spacing:-.015em}
h2{font-size:clamp(1.9rem,4vw,2.7rem);margin-bottom:14px}
.eyebrow{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:14px}
section{padding:92px 0}
.lead{font-size:1.12rem;max-width:640px;color:#3b4f4c}

nav{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-family:var(--serif);font-size:1.3rem;text-decoration:none;display:flex;align-items:baseline;gap:8px;color:var(--teal)}
.logo b{font-family:'Noto Serif Malayalam',serif;font-weight:600}
.logo small{font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--mist)}
nav ul{display:flex;gap:26px;list-style:none;font-size:.9rem}
nav ul a{text-decoration:none;color:#3b4f4c}nav ul a:hover{color:var(--teal)}
.btn{display:inline-block;background:var(--teal);color:#fff;padding:13px 26px;border-radius:99px;text-decoration:none;font-weight:600;font-size:.93rem;border:0;cursor:pointer;transition:background .2s,transform .2s}
.btn:hover{background:var(--teal-d);transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--teal);border:1.5px solid var(--teal)}
.btn.ghost:hover{background:var(--teal);color:#fff}
@media(max-width:760px){nav ul{display:none}}

/* hero */
.hero{padding:110px 0 100px;text-align:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 0,var(--tint) 0,#fff 62%)}
.hero .wrap{display:flex;flex-direction:column;align-items:center}
.tagline{font-family:var(--serif);font-size:clamp(1.05rem,2.4vw,1.4rem);color:var(--ink);margin:2px 0 14px}.tagline i{color:var(--teal)}
sup a{color:var(--teal);text-decoration:none;font-weight:600;font-size:.72em;padding:0 1px}
.flap{display:block;min-height:1.3em}
.flap-inner{display:inline-block;font-size:clamp(4rem,15vw,9.5rem);line-height:1.3;color:var(--teal);font-family:'Noto Serif Malayalam',serif;font-weight:500;letter-spacing:-.01em}
.lang{font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--mist);margin-top:4px;min-height:1.2em}
.hero h1{font-size:clamp(1.7rem,4.2vw,3rem);margin:44px 0 10px;max-width:760px}
.topic{color:var(--teal);font-style:italic;border-bottom:2px solid var(--tint2);white-space:nowrap}
.phase{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mist);min-height:1.4em;margin-bottom:26px}
.phase i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--teal);margin-right:8px;vertical-align:middle}
.hero p.sub{max-width:560px;color:#3b4f4c;margin-bottom:30px}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}
/* glow + click-to-begin */
.flap-inner{cursor:pointer;position:relative;outline:none;transition:text-shadow .4s,transform .3s;text-shadow:0 0 22px rgba(14,124,114,.30),0 0 64px rgba(14,124,114,.22);animation:glow 3.2s ease-in-out infinite alternate}
.flap-inner:hover,.flap-inner:focus-visible{text-shadow:0 0 30px rgba(14,124,114,.5),0 0 90px rgba(14,124,114,.38);transform:scale(1.015)}
.flap-inner:focus-visible{outline:2px solid var(--teal);outline-offset:10px;border-radius:12px}
@keyframes glow{from{text-shadow:0 0 14px rgba(14,124,114,.18),0 0 44px rgba(14,124,114,.12)}to{text-shadow:0 0 30px rgba(14,124,114,.42),0 0 90px rgba(14,124,114,.30)}}
.flap-inner.burst{animation:none;text-shadow:0 0 36px rgba(14,124,114,.6),0 0 120px rgba(14,124,114,.45)}
.hint{font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--teal);margin-top:10px;transition:opacity .5s,max-height .5s;max-height:30px;font-weight:600;animation:hintpulse 2s ease-in-out infinite}
.hint i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--teal);margin-right:10px;vertical-align:middle;box-shadow:0 0 0 0 rgba(14,124,114,.5);animation:ping 2s infinite}
.hint b{font-family:'Noto Serif Malayalam',serif;letter-spacing:0;text-transform:none;font-size:1.1em}
.hint.gone{opacity:0;max-height:0;margin:0;animation:none;overflow:hidden}
@keyframes hintpulse{50%{opacity:.55}}
@keyframes ping{70%{box-shadow:0 0 0 12px rgba(14,124,114,0)}100%{box-shadow:0 0 0 0 rgba(14,124,114,0)}}
.marquee{width:100vw;max-width:100%;overflow:hidden;max-height:0;opacity:0;transition:max-height .6s ease,opacity .6s ease,margin .6s;margin-top:0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.marquee.on{max-height:90px;opacity:1;margin-top:18px}
.track{display:flex;gap:46px;width:max-content;animation:scrollx 22s linear infinite;color:var(--teal);font-size:1.9rem;line-height:1.5;white-space:nowrap}
.track span{opacity:.9}
@keyframes scrollx{to{transform:translateX(-50%)}}
/* fast entrance */
.hero .eyebrow,.hero .tagline,.hero .flap,.hero .lang,.hero .hint,.hero h1,.hero .phase,.hero .sub,.hero .cta-row{animation-fill-mode:both}
.hero .eyebrow{animation:rise .5s .05s both}.hero .tagline{animation:rise .5s .15s both}
.hero .flap{animation:rise .45s .3s both}.hero .lang{animation:rise .4s .55s both}.hero .hint{animation:rise .4s .75s both,hintpulse 2s 1.2s ease-in-out infinite}
.hero h1{animation:rise .5s .95s both}.hero .phase{animation:rise .4s 1.1s both}.hero .sub{animation:rise .4s 1.2s both}.hero .cta-row{animation:rise .4s 1.3s both}
@keyframes rise{from{opacity:0;transform:translateY(14px);filter:blur(3px)}to{opacity:1;transform:none;filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.flap-inner,.hint,.hint i,.track{animation:none}.hero *{animation:none!important}.marquee.on{overflow-x:auto}}
/* premium flicker: brief stutter + soft blur, no cartoon flips */
.flick{animation:flick .34s steps(1,end)}
@keyframes flick{0%{opacity:1}12%{opacity:.08;filter:blur(2px)}28%{opacity:.9}42%{opacity:.15;filter:blur(1.5px)}60%{opacity:1;filter:blur(0)}72%{opacity:.5}100%{opacity:1}}

.grid{display:grid;gap:20px;margin-top:40px}
.g3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{background:#fff;border-radius:var(--r);padding:28px;border:1px solid var(--line)}
.card .n{font-family:var(--serif);color:var(--teal);font-size:1.9rem}
.card h3{font-size:1.25rem;margin:6px 0 8px}
.card p{font-size:.95rem;color:#475b58}
.alt,.dark{background:var(--tint)}
.dark .lead{color:#3b4f4c}
.pill{display:inline-block;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;padding:4px 11px;border-radius:99px;border:1px solid var(--teal);color:var(--teal);font-weight:600}
.pill.on{background:var(--teal);color:#fff}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chips span{font-size:.8rem;background:var(--tint);color:var(--teal-d);padding:5px 12px;border-radius:99px}

.founder h3{margin:0}
.founder span{display:block;font-size:.85rem;color:var(--teal);margin-bottom:8px;font-weight:600}

form{display:grid;gap:14px;max-width:520px;margin-top:28px}
input,select,textarea{font:inherit;padding:14px 16px;border-radius:12px;border:1.5px solid var(--line);background:#fff;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--teal);border-color:transparent}
.note{font-size:.8rem;color:var(--mist);margin-top:10px}
footer{border-top:1px solid var(--line);color:var(--mist);padding:46px 0;font-size:.85rem}
footer .logo{margin-bottom:10px}
footer p{max-width:720px;margin-top:10px}

.swatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-top:30px}
.sw{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:#fff}
.sw i{display:block;height:110px}
.sw div{padding:14px;font-size:.85rem}.sw b{display:block;font-size:1rem}
.type-sample{font-size:2.4rem;font-family:var(--serif);margin:10px 0}
table{border-collapse:collapse;width:100%;margin-top:24px;font-size:.95rem}
td,th{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
/* yin-yang: nutrition + training, one teal */
.yy-grid{display:grid;grid-template-columns:minmax(200px,340px) 1fr;gap:56px;align-items:center;margin-top:44px}
.yy{width:100%;height:auto;display:block;animation:yyturn 60s linear infinite;transform-origin:50% 50%}
@keyframes yyturn{to{transform:rotate(360deg)}}
.yy-copy{display:grid;gap:16px}
.yy-copy .card{position:relative;padding-left:62px}
.yy-copy .dot{position:absolute;left:26px;top:34px;width:20px;height:20px;border-radius:50%;border:2px solid var(--teal);background:var(--tint)}
.yy-copy .dot.on{background:var(--teal)}
.mbb{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-family:var(--serif);font-size:1.5rem;color:var(--teal);padding:6px 2px}
.mbb i{width:6px;height:6px;border-radius:50%;background:var(--teal);opacity:.5}
@media(max-width:760px){.yy-grid{grid-template-columns:1fr;gap:32px}.yy{max-width:240px;margin:0 auto}}
@media(prefers-reduced-motion:reduce){.yy{animation:none}}
@media(prefers-reduced-motion:reduce){.flick{animation:none}html{scroll-behavior:auto}}

/* story, founders, backed-by, waitlist */
.ml{font-family:'Noto Serif Malayalam',serif}
.story-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;margin-top:36px}
.story-q .q,.story-a .q{font-family:var(--serif);font-size:1.45rem;line-height:1.3;margin:6px 0 14px;color:var(--ink)}
.story-q .q .ml{color:var(--teal);font-size:1.25em}
.story-q p,.story-a p{font-size:1rem;color:#475b58}
.story-a{background:var(--teal);border-color:var(--teal)}
.story-a .eyebrow,.story-a .q,.story-a p,.story-a b{color:#fff}
@media(max-width:760px){.story-grid{grid-template-columns:1fr}}
.founders{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.founder p{margin-top:10px}
.backed{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:16px}
.backer{display:flex;gap:18px;align-items:flex-start}
.backer img{width:64px;height:64px;border-radius:50%;flex:none;border:1px solid var(--line)}
.backer h3{margin:0 0 2px}.backer span{display:block;font-size:.82rem;color:var(--teal);font-weight:600;margin-bottom:8px}
.opts{border:0;display:grid;gap:10px;margin-top:6px}
.opts legend{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:8px}
.opt{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:16px 18px;cursor:pointer;transition:border-color .2s,background .2s}
.opt:hover{border-color:var(--teal)}
.opt input{width:auto;margin-top:5px;accent-color:var(--teal);flex:none}
.opt b{display:block;font-family:var(--serif);font-weight:500;font-size:1.1rem}
.opt small{display:block;color:#475b58;font-size:.88rem;line-height:1.45}
.opt:has(input:checked){border-color:var(--teal);background:var(--tint)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.form-msg{font-size:.9rem;color:var(--teal-d);min-height:1.2em}
.thanks{max-width:520px;margin-top:28px;background:var(--tint);border-radius:var(--r);padding:28px}
footer .stay{color:var(--ink);max-width:640px;margin:12px 0}
footer .stay b{font-family:var(--serif);font-weight:500;font-size:1.15rem;color:var(--teal)}
footer .from{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:6px}
.brandmark{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-weight:600}
.brandmark img{border-radius:50%}
[hidden]{display:none!important}

.nav-cta{white-space:nowrap;padding:11px 22px}
nav ul{gap:22px}
