/* Art direction: Marathi entertainment agency → cinematic, premium, modern.
   Palette: dark neutral base with amber-magenta accents for stage-light energy.
   Typography: Cabinet Grotesk + Satoshi for strong headlines and clean readability.
   Density: balanced-spacious with editorial section rhythm. */
:root, [data-theme="light"] {
  --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
  --text-sm: clamp(0.875rem, 0.8rem + 0.35vw, 1rem);
  --text-base: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
  --text-lg: clamp(1.125rem, 1rem + 0.75vw, 1.5rem);
  --text-xl: clamp(1.5rem, 1.2rem + 1.25vw, 2.25rem);
  --text-2xl: clamp(2rem, 1.2rem + 2.5vw, 3.75rem);
  --text-3xl: clamp(2.8rem, 1rem + 4vw, 5rem);
  --text-hero: clamp(3.2rem, 0.75rem + 7vw, 7rem);
  --space-1: 0.25rem; --space-2: 0.5rem; --space-3: 0.75rem; --space-4: 1rem; --space-5: 1.25rem;
  --space-6: 1.5rem; --space-8: 2rem; --space-10: 2.5rem; --space-12: 3rem; --space-16: 4rem;
  --space-20: 5rem; --space-24: 6rem; --space-32: 8rem;
  --color-bg: #f4efe8; --color-surface: #fbf7f1; --color-surface-2: #ffffff; --color-surface-offset: #ece4d9;
  --color-surface-offset-2: #dfd5c8; --color-surface-dynamic: #d5cabd; --color-divider: #d7ccbf; --color-border: #cfc2b3;
  --color-text: #231c18; --color-text-muted: #695f58; --color-text-faint: #998e87; --color-text-inverse: #fff8f2;
  --color-primary: #8e2de2; --color-primary-hover: #7320ba; --color-primary-active: #57168f; --color-primary-highlight: #ebdcfa;
  --color-secondary: #ff8a00; --color-accent: #ff4d8d; --color-success: #437a22; --color-error: #a12c7b;
  --radius-sm: 0.375rem; --radius-md: 0.5rem; --radius-lg: 0.9rem; --radius-xl: 1.25rem; --radius-full: 9999px;
  --transition-interactive: 180ms cubic-bezier(0.16, 1, 0.3, 1);
  --shadow-sm: 0 1px 2px oklch(0.2 0.01 40 / 0.06); --shadow-md: 0 8px 24px oklch(0.2 0.01 40 / 0.1); --shadow-lg: 0 20px 60px oklch(0.2 0.01 40 / 0.16);
  --content-narrow: 640px; --content-default: 1040px; --content-wide: 1240px; --content-full: 100%;
  --font-display: 'Cabinet Grotesk', 'Inter', sans-serif; --font-body: 'Satoshi', 'Inter', sans-serif;
}
[data-theme="dark"] {
  --color-bg: #090b11; --color-surface: #10131b; --color-surface-2: #141925; --color-surface-offset: #181e2b;
  --color-surface-offset-2: #1d2433; --color-surface-dynamic: #262f43; --color-divider: #222a3b; --color-border: #2c3650;
  --color-text: #f3eee6; --color-text-muted: #b4ad9d; --color-text-faint: #7f7a72; --color-text-inverse: #0f1117;
  --color-primary: #b76cff; --color-primary-hover: #c88cff; --color-primary-active: #dbafff; --color-primary-highlight: #2a1f3e;
  --color-secondary: #ffb24c; --color-accent: #ff6aa6; --color-success: #78c84f; --color-error: #df70b5;
  --shadow-sm: 0 1px 2px oklch(0 0 0 / 0.25); --shadow-md: 0 8px 24px oklch(0 0 0 / 0.35); --shadow-lg: 0 20px 60px oklch(0 0 0 / 0.5);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    --color-bg: #090b11; --color-surface: #10131b; --color-surface-2: #141925; --color-surface-offset: #181e2b;
    --color-surface-offset-2: #1d2433; --color-surface-dynamic: #262f43; --color-divider: #222a3b; --color-border: #2c3650;
    --color-text: #f3eee6; --color-text-muted: #b4ad9d; --color-text-faint: #7f7a72; --color-text-inverse: #0f1117;
    --color-primary: #b76cff; --color-primary-hover: #c88cff; --color-primary-active: #dbafff; --color-primary-highlight: #2a1f3e;
    --color-secondary: #ffb24c; --color-accent: #ff6aa6;
  }
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:5rem}
body{min-height:100dvh;line-height:1.6;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:
  radial-gradient(circle at top right, color-mix(in oklab, var(--color-accent) 18%, transparent), transparent 28%),
  radial-gradient(circle at top left, color-mix(in oklab, var(--color-secondary) 18%, transparent), transparent 32%),
  var(--color-bg)}
img,picture,video,canvas,svg{display:block;max-width:100%;height:auto} input,button,textarea,select{font:inherit;color:inherit}
h1,h2,h3,h4,h5,h6{text-wrap:balance;line-height:1.08} p,li,figcaption{text-wrap:pretty;max-width:72ch}
a,button,[role="button"],input,textarea,select{transition:color var(--transition-interactive),background var(--transition-interactive),border-color var(--transition-interactive),box-shadow var(--transition-interactive),transform var(--transition-interactive)}
:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}
::selection{background:color-mix(in oklab, var(--color-primary) 35%, transparent);color:var(--color-text)}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
.skip-link{position:absolute;left:var(--space-4);top:var(--space-4);transform:translateY(-180%);background:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-3) var(--space-4);border-radius:var(--radius-full);z-index:1000;text-decoration:none}
.skip-link:focus{transform:translateY(0)}
.container{width:min(calc(100% - 2rem),var(--content-wide));margin-inline:auto}
.page[data-page="home"] .container{width:100%;padding-inline:clamp(1rem,3vw,3rem)}
.narrow{width:min(calc(100% - 2rem),var(--content-default));margin-inline:auto}
.section{padding-block:clamp(var(--space-12),7vw,var(--space-24));position:relative}
.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);background:color-mix(in oklab, var(--color-surface-2) 70%, transparent);border:1px solid color-mix(in oklab, var(--color-text) 10%, transparent)}
.eyebrow::before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:linear-gradient(135deg,var(--color-secondary),var(--color-accent))}
.site-header{position:sticky;top:0;z-index:40;background:color-mix(in oklab, var(--color-bg) 80%, transparent);backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in oklab, var(--color-text) 10%, transparent)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:4.5rem}
.brand{display:flex;align-items:center;gap:var(--space-3);text-decoration:none;color:var(--color-text)}
.brand-mark{width:2.6rem;height:2.6rem;padding:.45rem;border-radius:.8rem;background:linear-gradient(135deg,color-mix(in oklab,var(--color-primary) 65%, #0000),color-mix(in oklab,var(--color-secondary) 65%, #0000));box-shadow:var(--shadow-md)}
.brand-name{font-family:var(--font-display);font-weight:800;letter-spacing:.02em;font-size:var(--text-sm)}
.brand-sub{font-size:var(--text-xs);color:var(--color-text-muted)}
.nav-toggle,.theme-toggle{display:inline-grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:var(--radius-full);border:1px solid color-mix(in oklab, var(--color-text) 12%, transparent);background:color-mix(in oklab, var(--color-surface-2) 70%, transparent)}
.header-actions{display:flex;align-items:center;gap:var(--space-2)}
.nav-panel{position:absolute;top:calc(100% + .5rem);left:1rem;right:1rem;padding:var(--space-4);border-radius:var(--radius-xl);background:color-mix(in oklab, var(--color-surface) 88%, transparent);backdrop-filter:blur(18px);border:1px solid color-mix(in oklab, var(--color-text) 10%, transparent);box-shadow:var(--shadow-lg);display:none}
.nav-panel.open{display:grid;gap:var(--space-2)}
.nav-link{display:block;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);text-decoration:none;color:var(--color-text-muted);font-size:var(--text-sm)}
.nav-link:hover,.nav-link.active{background:color-mix(in oklab, var(--color-primary) 12%, var(--color-surface-2));color:var(--color-text)}
.desktop-nav{display:none;align-items:center;gap:var(--space-2)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:2.9rem;padding:0 var(--space-5);border-radius:var(--radius-full);text-decoration:none;border:1px solid transparent;font-size:var(--text-sm);font-weight:700}
.btn-primary{background:linear-gradient(135deg,var(--color-primary),color-mix(in oklab,var(--color-accent) 70%, var(--color-primary)));color:var(--color-text-inverse);box-shadow:var(--shadow-md)}
.btn-secondary{background:color-mix(in oklab, var(--color-surface-2) 84%, transparent);border-color:color-mix(in oklab, var(--color-text) 12%, transparent);color:var(--color-text)}
.btn:hover{transform:translateY(-1px)}
main{display:block}
.page{display:none}
.page.active{display:block}
.hero{padding-top:clamp(var(--space-10),7vw,var(--space-20))}
.hero-container{width:100%;padding-inline:clamp(1rem,3vw,3rem)}
.hero-grid,.about-grid,.story-grid,.feature-grid{display:grid;gap:var(--space-8)}
.hero-copy h1{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,5.5rem);max-width:none;letter-spacing:-.04em}
.hero-copy p{margin-top:var(--space-5);font-size:var(--text-lg);color:var(--color-text-muted)}
.hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}
.hero-aside{display:grid;gap:var(--space-4)}
.glass-card,.metric,.service-card,.industry-card,.campaign-card,.testimonial-card,.client-group,.portfolio-card,.contact-card{background:color-mix(in oklab, var(--color-surface) 78%, transparent);border:1px solid color-mix(in oklab, var(--color-text) 10%, transparent);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);backdrop-filter:blur(14px)}
.glass-card{padding:var(--space-6)}
.hero-visual{position:relative;overflow:hidden;min-height:24rem;background:
  linear-gradient(160deg, color-mix(in oklab,var(--color-primary) 28%, transparent), transparent 42%),
  linear-gradient(220deg, color-mix(in oklab,var(--color-secondary) 24%, transparent), transparent 35%),
  color-mix(in oklab, var(--color-surface-2) 80%, transparent)}
.visual-stage{position:absolute;inset:0;padding:var(--space-6);display:grid;gap:var(--space-4);grid-template-columns:1.25fr .85fr}
.screen{border-radius:var(--radius-lg);background:linear-gradient(180deg,color-mix(in oklab,var(--color-surface-offset) 72%, transparent),color-mix(in oklab,var(--color-surface-2) 72%, transparent));border:1px solid color-mix(in oklab, var(--color-text) 10%, transparent);padding:var(--space-4)}
.screen.tall{grid-row:span 2}.screen .bar{height:.55rem;border-radius:999px;background:color-mix(in oklab,var(--color-primary) 30%, var(--color-surface-dynamic));margin-bottom:var(--space-3)}
.screen .bar:nth-child(2){width:75%;background:color-mix(in oklab,var(--color-secondary) 32%, var(--color-surface-dynamic))}.screen .bar:nth-child(3){width:50%}.poster-stack{display:grid;gap:var(--space-3);align-self:end}
.mini-poster{aspect-ratio:4/5;border-radius:var(--radius-lg);background:linear-gradient(180deg,color-mix(in oklab,var(--color-accent) 22%, transparent),transparent),linear-gradient(135deg,var(--color-surface-offset),var(--color-surface-2));border:1px solid color-mix(in oklab, var(--color-text) 10%, transparent);position:relative;overflow:hidden}
.mini-poster::after{content:"PROMO";position:absolute;inset:auto var(--space-3) var(--space-3) var(--space-3);font-size:var(--text-xs);letter-spacing:.18em;color:var(--color-text-muted)}
.highlight-strip,.stats-grid,.services-grid,.industries-grid,.campaigns-grid,.testimonials-grid,.client-grid,.portfolio-grid{display:grid;gap:var(--space-4)}
.highlight-strip{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:var(--space-8)}
.highlight-item{padding:var(--space-4);border-radius:var(--radius-lg);background:color-mix(in oklab, var(--color-surface-2) 74%, transparent);border:1px solid color-mix(in oklab, var(--color-text) 8%, transparent)}
.highlight-item strong{display:block;font-size:var(--text-sm);margin-bottom:var(--space-2)}
.section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:var(--space-4);margin-bottom:var(--space-8)}
.section-head h2{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:-.03em;max-width:13ch}
.section-head p{color:var(--color-text-muted)}
.services-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.service-card,.industry-card,.campaign-card,.testimonial-card,.metric,.client-group,.portfolio-card,.contact-card{padding:var(--space-5)}
.service-icon,.industry-icon{width:3rem;height:3rem;border-radius:.9rem;display:grid;place-items:center;background:color-mix(in oklab,var(--color-primary) 14%, var(--color-surface-2));margin-bottom:var(--space-4);color:var(--color-secondary)}
.service-card h3,.industry-card h3,.campaign-card h3,.portfolio-card h3,.client-group h3,.contact-card h3{font-size:var(--text-lg);margin-bottom:var(--space-2)}
.service-card ul,.industry-card ul,.contact-list,.results-list{list-style:none;display:grid;gap:var(--space-2);margin-top:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm)}
.service-card li::before,.industry-card li::before,.results-list li::before{content:"↗";color:var(--color-secondary);margin-right:.45rem}
.campaigns-grid,.testimonials-grid,.stats-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.client-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.industries-grid{grid-template-columns:repeat(1, 1fr)}
@media (min-width: 600px){.industries-grid{grid-template-columns:repeat(2, 1fr)}}
@media (min-width: 1024px){.industries-grid{grid-template-columns:repeat(4, 1fr)}}
.industry-card{min-height:13rem;display:flex;flex-direction:column;justify-content:space-between}
.campaign-card .label,.portfolio-card .label{display:inline-flex;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-muted);margin-bottom:var(--space-3)}
.metric strong{display:block;font-family:var(--font-display);font-size:var(--text-3xl);line-height:1;margin-bottom:var(--space-2)}
.testimonial-card blockquote{font-size:var(--text-lg);max-width:28ch}
.testimonial-card footer{margin-top:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm)}
.cta-band{padding:var(--space-8);border-radius:calc(var(--radius-xl) + .3rem);background:linear-gradient(135deg,color-mix(in oklab,var(--color-primary) 35%, var(--color-surface)),color-mix(in oklab,var(--color-secondary) 22%, var(--color-surface)));border:1px solid color-mix(in oklab,var(--color-text) 8%, transparent);display:grid;gap:var(--space-4);align-items:center}
.cta-band h2{font-family:var(--font-display);font-size:var(--text-2xl);max-width:12ch}
.story-grid{grid-template-columns:1.1fr .9fr}.story-panel{padding:var(--space-6);border-radius:var(--radius-xl);background:color-mix(in oklab,var(--color-surface-2) 80%, transparent);border:1px solid color-mix(in oklab, var(--color-text) 10%, transparent)}
.pillars{display:grid;gap:var(--space-4)}
.pillar{padding:var(--space-4);border-radius:var(--radius-lg);background:color-mix(in oklab,var(--color-surface-offset) 60%, transparent)}
.project-list{list-style:none;display:grid;gap:.55rem;margin-top:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm)}
.project-list.columns{grid-template-columns:repeat(2,minmax(0,1fr))}
.project-list li{padding:.55rem .7rem;border-radius:var(--radius-sm);background:color-mix(in oklab,var(--color-surface-2) 62%, transparent);border:1px solid color-mix(in oklab,var(--color-text) 7%, transparent)}
.logo-wall{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:var(--space-4)}
.logo-tile{min-height:5rem;border-radius:var(--radius-lg);display:grid;place-items:center;background:color-mix(in oklab,var(--color-surface-2) 70%, transparent);border:1px solid color-mix(in oklab, var(--color-text) 8%, transparent);color:var(--color-text-muted);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:var(--text-xs)}
.logo-image{min-height:9rem;padding:var(--space-5);background:#fff}
.logo-image img{width:100%;height:6rem;object-fit:contain}
.campaign-card p,.industry-card p,.portfolio-card p,.client-group p{color:var(--color-text-muted)}
.contact-card{display:grid;gap:var(--space-4)}
.contact-list a{color:inherit;text-decoration:none}
.site-footer{padding:var(--space-10) 0 var(--space-8);border-top:1px solid color-mix(in oklab,var(--color-text) 10%, transparent)}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-6)}
.footer-column h3{font-size:var(--text-sm);margin-bottom:.75rem}
.footer-column a{color:var(--color-text-muted);text-decoration:none;font-size:var(--text-sm);margin-bottom:var(--space-2);display:block}
.page-anchor{position:absolute;top:-5rem}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.reveal.visible{opacity:1;transform:none}
.mobile-cta{display:none}
@media (min-width: 860px){
  .nav-toggle{display:none}.desktop-nav{display:flex}.nav-panel{display:none!important}
  .hero-grid{grid-template-columns:1.08fr .92fr;align-items:center}
  .about-grid{grid-template-columns:1fr 1fr}.feature-grid{grid-template-columns:1.15fr .85fr}
  .footer-grid{grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(140px,1fr));align-items:start}
}
@media (max-width: 859px){
  .story-grid{grid-template-columns:1fr}
  .portfolio-grid{grid-template-columns:1fr}
  .project-list.columns{grid-template-columns:1fr}
  .client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mobile-cta{display:inline-flex}
}
@media (max-width: 520px){
  .client-grid{grid-template-columns:1fr}
}
