/* Raghav Communication — shared theme. Palette from the logo: black + cyan → blue → violet. Vintage: grain, double rules, serif + typewriter type, paper tickets. */
:root{--ink:#07070d;--panel:#10101c;--paper:#efe4cb;--text:#ece8dc;--muted:#a29fb0;--line:rgba(236,232,220,.14);--cyan:#35d4ff;--blue:#4a7dff;--violet:#9b5cff;--grad:linear-gradient(120deg,#35d4ff,#4a7dff 45%,#9b5cff);--serif:Fraunces,Georgia,serif;--mono:'Courier Prime','Courier New',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--text);font-family:Inter,system-ui,sans-serif;line-height:1.65;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.07;mix-blend-mode:screen;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .7 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
a{color:inherit;text-decoration:none}
.site-nav{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(7,7,13,.9);backdrop-filter:blur(14px);border-bottom:3px double var(--line)}
.nav-container{width:min(calc(100% - 40px),1180px);margin:auto}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px}
.logo{display:flex;align-items:center;gap:12px;font:600 1.1rem var(--serif);letter-spacing:-.01em;color:var(--text)}.logo img{height:34px;width:34px;border-radius:8px;object-fit:cover}
.nav-links{display:flex;gap:26px}.nav-links a{font:700 .76rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);transition:color .2s}.nav-links a:hover{color:var(--cyan)}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:999px;border:1.5px solid rgba(236,232,220,.45);font:700 .8rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text);background:transparent;cursor:pointer;transition:transform .25s,border-color .25s,color .25s,filter .25s}
.btn:hover{transform:translateY(-3px);border-color:var(--cyan);color:var(--cyan)}.btn.solid{background:var(--grad);color:#07070d;border-color:transparent}.btn.solid:hover{color:#07070d;filter:brightness(1.12)}
.label{font:700 .74rem var(--mono);text-transform:uppercase;letter-spacing:.16em;color:var(--cyan)}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.in-view{opacity:1;transform:none}
.cta-stage{--p:0;position:relative;overflow:hidden;isolation:isolate;margin-top:96px;padding:clamp(88px,13vw,170px) 20px;background:radial-gradient(ellipse at 50% 120%,rgba(155,92,255,.3),transparent 60%),radial-gradient(ellipse at 15% 0%,rgba(53,212,255,.1),transparent 45%),var(--ink);border-top:3px double var(--line);text-align:center}
.cta-stage canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;touch-action:pan-y}
.cta-copy{max-width:820px;margin:auto;opacity:calc(.25 + .75*var(--p));transform:translateY(calc((1 - var(--p))*40px));pointer-events:none}.cta-copy a{pointer-events:auto}
.cta-copy h2{font:600 clamp(2.4rem,6vw,4.8rem)/1 var(--serif);letter-spacing:-.03em;margin:16px 0 22px;color:var(--text);border:0;padding:0}.cta-copy h2 em{font-style:italic;font-weight:500;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.cta-copy p{max-width:520px;margin:0 auto 26px;color:var(--muted)}.cta-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.cta-hint{margin-top:34px;font:700 .7rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#6e6b80}
.site-footer{background:var(--ink);border-top:3px double var(--line);color:var(--muted);padding:34px 20px 52px;font:.85rem Inter,system-ui,sans-serif}
.site-footer .in{width:min(100%,1180px);margin:auto;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.site-footer a:hover{color:var(--cyan)}.site-footer .flinks{display:flex;flex-wrap:wrap;gap:10px 22px;font:700 .74rem var(--mono);text-transform:uppercase;letter-spacing:.08em}
@media(max-width:760px){.nav-links{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cta-stage{--p:1!important}.reveal{opacity:1;transform:none}*{transition-duration:.01ms!important}}
.site-footer .emo{display:inline-block;margin-top:8px;letter-spacing:.12em;opacity:.85}
