/* fonts: Bricolage Grotesque (headings) + Figtree (body) */
:root{--hd:'Bricolage Grotesque',Georgia,sans-serif;--bd:'Figtree',system-ui,sans-serif}
h1,h2,h3{letter-spacing:-.025em;font-weight:700}
.nav nav a.on{color:var(--fg);box-shadow:0 2px 0 var(--acc)}
/* theme switch */
.switch{width:70px;height:38px;border-radius:999px;border:1px solid var(--line);background:var(--glass);position:relative;cursor:pointer;padding:0;color:var(--fg)}
.switch .knob{position:absolute;top:3px;left:3px;width:30px;height:30px;border-radius:50%;background:var(--acc);color:var(--acc-fg);display:grid;place-items:center;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
[data-theme=light] .switch .knob{transform:translateX(32px)}
.switch svg{width:16px;height:16px}.switch .ic-moon{display:none}
[data-theme=light] .switch .ic-sun{display:none}[data-theme=light] .switch .ic-moon{display:block}
/* mobile menu */
.menu-btn{display:none}
@media(max-width:860px){.menu-btn{display:grid}.nav-r .primary{display:none}
 .nav nav{position:fixed;inset:64px 0 auto;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:.5rem 4vw 1rem;display:flex;transform:translateY(-130%);transition:transform .4s;z-index:-1}
 .menu-open .nav nav{transform:none}.nav nav a{padding:.9rem 0;border-bottom:1px solid var(--line);font-size:1.05rem}}
/* page header */
.page-head{padding:9rem 0 3.5rem;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.page-head:before{content:"";position:absolute;inset:0;background:radial-gradient(50% 80% at 85% 0,color-mix(in srgb,var(--acc) 20%,transparent),transparent 70%)}
.page-head .wrap{position:relative}.crumbs{font-size:.9rem;color:var(--mute);margin-bottom:1rem}.crumbs a:hover{color:var(--acc)}
.page-head h1{font-size:clamp(2.2rem,5vw,4rem);max-width:22ch}
/* tiles, steps, faq, band */
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-top:2.5rem}
.tile{padding:1.6rem;border:1px solid var(--line);border-radius:var(--r);background:var(--glass);transition:transform .3s,border-color .3s;display:grid;gap:.5rem;align-content:start}
.tile:hover{transform:translateY(-4px);border-color:var(--acc)}.tile svg{color:var(--acc);width:28px;height:28px}.tile p{color:var(--mute);font-size:.95rem}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.2rem;margin-top:2.5rem}
.cols h3{margin-bottom:.6rem;font-size:1.2rem}.cols ul{padding-left:1.1rem;color:var(--mute);display:grid;gap:.4rem}.cols p{color:var(--mute)}
.steps{list-style:none;padding:0;counter-reset:s;display:grid;gap:1rem;margin-top:2.5rem;max-width:760px}
.steps li{counter-increment:s;display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.2rem 1.4rem;border:1px solid var(--line);border-radius:var(--r);background:var(--glass)}
.steps li:before{content:counter(s);font:700 1.6rem var(--hd);color:var(--acc)}.steps strong{display:block}.steps span{color:var(--mute)}
details{border:1px solid var(--line);border-radius:14px;background:var(--glass);padding:1rem 1.3rem;margin-top:.8rem;max-width:820px}
summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:1rem}summary:after{content:"+";color:var(--acc);font-size:1.3rem;line-height:1}
details[open] summary:after{content:"–"}details p{color:var(--mute);margin-top:.7rem}
.band{background:var(--acc);color:var(--acc-fg);padding:3.5rem 0}.band .wrap{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;align-items:center}
.band h2{max-width:22ch;font-size:clamp(1.5rem,3vw,2.2rem)}.band .btn{background:var(--acc-fg);color:var(--fg)}
[data-theme=light] .band .btn{background:#10191d;color:#fff}
table{width:100%;border-collapse:collapse;margin-top:2rem;font-size:.95rem}
th,td{text-align:left;padding:.85rem 1rem;border-bottom:1px solid var(--line)}th{color:var(--mute);font-weight:600}.tw{overflow-x:auto}
.info-list{display:grid;gap:1.2rem;margin-top:2rem;list-style:none;padding:0}
.info-list li{display:flex;gap:.9rem}.info-list svg{color:var(--acc);flex:none}.info-list b{display:block}.info-list span,.info-list a{color:var(--mute)}
/* legal */
.legal{padding:3rem 0 6rem}.legal .wrap{max-width:820px}
.legal h2{font-size:1.5rem;margin:2.4rem 0 .7rem;max-width:none}.legal p,.legal li{color:var(--mute);margin-top:.7rem}.legal ul{padding-left:1.2rem}
.legal .meta{font-size:.9rem;border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem;background:var(--glass)}
/* footer */
.fgrid{grid-template-columns:1.4fr repeat(3,1fr);gap:2.5rem}
.foot h4{font:700 1rem var(--hd);margin-bottom:.8rem}.foot ul{list-style:none;padding:0;display:grid;gap:.5rem;color:var(--mute);font-size:.92rem}
.foot .about{color:var(--mute);font-size:.92rem;margin-top:.8rem;max-width:34ch}
.fbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.4rem;font-size:.85rem;color:var(--mute)}
.fbar nav{display:flex;flex-wrap:wrap;gap:1.2rem}.fbar a:hover{color:var(--acc)}
.fnote{font-size:.8rem;color:var(--mute);margin-top:1rem;max-width:90ch}
@media(max-width:860px){.fgrid{grid-template-columns:1fr 1fr}.page-head{padding-top:7rem}}
@media(max-width:520px){.fgrid{grid-template-columns:1fr}}
.mapframe{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;background:var(--glass)}
.mapframe iframe{width:100%;height:100%;border:0;display:block}
[data-theme=dark] .mapframe iframe{filter:invert(.92) hue-rotate(180deg) saturate(.8)}
/* logo size: change 64px here (and 76px below if you change it a lot) */
.nav{padding-top:.5rem;padding-bottom:.5rem}
@media(max-width:860px){.brand-logo{height:52px;min-width:52px}.nav nav{inset:68px 0 auto}}
/* brand name (decorative) */
.brand{display:flex;align-items:center;gap:.7rem}
.brand-name{font-family:'Cinzel Decorative',Georgia,serif;font-weight:700;letter-spacing:.04em;font-size:1.05rem;line-height:1.1;background:linear-gradient(90deg,var(--fg),var(--acc));-webkit-background-clip:text;background-clip:text;color:transparent}
@media(max-width:520px){.nav .brand-name{font-size:.8rem;max-width:7.5rem}}
.nav nav{gap:1.2rem}
/* make in india */
.mii{display:inline-flex;align-items:center;gap:.5rem;font-weight:600}.mii img{height:34px;width:auto}.mii b{letter-spacing:.02em}
.mii-li{border-color:color-mix(in srgb,var(--acc) 50%,transparent)!important;color:var(--fg)!important}
.mii-row{display:flex;align-items:center;gap:1rem;margin-top:.8rem;flex-wrap:wrap;font-size:.9rem}.mii-row a{color:var(--acc)}
.soc{display:flex;gap:.6rem;margin-top:1rem}.soc a{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.soc a:hover{border-color:var(--acc);color:var(--acc)}.soc svg{width:18px}
/* director animated icon */
.dir-ico{position:relative;aspect-ratio:1;width:min(100%,360px);margin-inline:auto;display:grid;place-items:center;border-radius:50%}
.dir-ico>svg{width:42%;height:42%;color:var(--acc);animation:fl 4s ease-in-out infinite}
.dir-ico .ring{position:absolute;inset:10%;border:1.5px solid var(--acc);border-radius:50%;opacity:.5;animation:pulse 3.6s ease-out infinite}
.dir-ico .r2{animation-delay:1.8s}
@keyframes pulse{0%{transform:scale(.55);opacity:.7}100%{transform:scale(1.15);opacity:0}}@keyframes fl{50%{transform:translateY(-10px)}}
/* misc blocks */
.eyebrow{color:var(--acc);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;margin-bottom:.6rem}
.renim-teaser{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}@media(max-width:860px){.renim-teaser{grid-template-columns:1fr}}
.udy{display:flex;gap:2rem;align-items:center;flex-wrap:wrap;margin-top:2rem}.udy img{border-radius:12px;background:#fff;padding:6px}
.revs{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem;margin-top:2rem}
.stars{color:#f5b301;letter-spacing:.15em;font-size:1.2rem}.rev .rt{color:var(--mute);margin:.7rem 0}.rev figcaption{font-size:.9rem}
/* 404 */
.nf{min-height:100svh;display:grid;place-items:center;text-align:center;padding:7rem 0 4rem;position:relative}
.nf:before{content:"";position:absolute;inset:0;background:radial-gradient(50% 50% at 50% 30%,color-mix(in srgb,var(--acc) 20%,transparent),transparent 70%)}
.nf .wrap{position:relative}.nf h1{margin:.5rem auto 1rem;max-width:18ch;font-size:clamp(2rem,5vw,3.6rem)}
.nf-code{font:800 clamp(5rem,18vw,11rem)/1 var(--hd);background:linear-gradient(180deg,var(--acc),transparent 95%);-webkit-background-clip:text;background-clip:text;color:transparent}
.nf-art{margin-bottom:-1rem}.nf-art .sk{fill:var(--steel);opacity:.6}.nf-art .sk2{fill:var(--bg);stroke:var(--steel)}.nf-art .sk3{fill:var(--steel)}
.drip{fill:var(--acc);animation:drip 2s ease-in infinite}@keyframes drip{0%{transform:translateY(0);opacity:0}15%{opacity:1}80%{transform:translateY(38px);opacity:1}100%{transform:translateY(40px);opacity:0}}
/* chatbot */
.bot-fab{position:fixed;right:1.2rem;bottom:calc(1.2rem + env(safe-area-inset-bottom,0px));z-index:70;display:flex;align-items:center;gap:.5rem;padding:.8rem 1.2rem;border:0;border-radius:999px;background:var(--acc);color:var(--acc-fg);font:600 .95rem var(--bd);cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.3)}
.bot-fab svg{width:20px}.bot-fab.hide{display:none}
.bot-box{position:fixed;right:1.2rem;bottom:calc(1.2rem + env(safe-area-inset-bottom,0px));z-index:80;width:min(380px,calc(100vw - 2rem));height:min(560px,calc(100svh - 7rem));display:flex;flex-direction:column;background:var(--bg2);border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.4);overflow:hidden}
.bot-box[hidden]{display:none}
.bot-box header{display:flex;align-items:baseline;gap:.6rem;padding:.9rem 1.1rem;background:var(--acc);color:var(--acc-fg)}.bot-box header small{opacity:.8;flex:1}
.bot-x{background:none;border:0;color:inherit;font-size:1.6rem;line-height:1;cursor:pointer}
.bot-msgs{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.6rem}
.bm{max-width:86%;padding:.65rem .9rem;border-radius:14px;font-size:.92rem;line-height:1.5}
.bm.bot{background:var(--glass);border:1px solid var(--line);align-self:flex-start}.bm.me{background:var(--acc);color:var(--acc-fg);align-self:flex-end}.bm a{color:var(--acc);text-decoration:underline}.bm.me a{color:inherit}
.bot-chips{display:flex;gap:.4rem;flex-wrap:wrap;padding:0 1rem .6rem}.bot-chips button{padding:.35rem .8rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--fg);font:500 .8rem var(--bd);cursor:pointer}.bot-chips button:hover{border-color:var(--acc)}
.bot-form{display:flex;gap:.5rem;padding:.7rem;border-top:1px solid var(--line)}.bot-form input{flex:1;padding:.7rem .9rem}.bot-form button{width:44px;border:0;border-radius:12px;background:var(--acc);color:var(--acc-fg);cursor:pointer}
@media(max-width:520px){.bot-fab span{display:none}.bot-fab{padding:.9rem}}
