/*
Theme Name: Ninad Sawant Media
Theme URI: https://ninadsawantmedia.in
Author: Ninad Sawant Media
Description: Private brand media kit for Ninad Sawant, creator by passion and painter by heart. One-page theme with hero slideshow, story, reels, 44 brand partners, growth chart and collaboration form.
Version: 1.3
Requires at least: 6.0
Requires PHP: 7.4
License: All rights reserved
Text Domain: ninad-sawant-media
*/

/* Layout: a torn-paper collage zine. Ink-black poster sections alternate with newsprint sections; edges are ripped, photos are taped on, notes are hand-written in the margins. */
:root{
  --ink:#15100D; --ink-2:#2A221D; --paper:#F3EFEA; --paper-2:#E8E1D8; --card:#FFFFFF;
  --text:#15100D; --text-2:#5B4F47; --text-3:#8A7D74; --on-ink:#F6F1EC; --on-ink-2:#BFB3AA;
  --red:#CF331C; --red-ink:#E5533A; --gold:#F0A21B; --tape:rgba(240,214,150,.72); --line:#D9D0C6; --line-ink:#3A302A;
  --display:"Big Shoulders Display","Impact","Arial Narrow",sans-serif;
  --body:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --hand:"Caveat Brush","Segoe Print","Comic Sans MS",cursive;
  --deva:"Kalam","Noto Sans Devanagari",sans-serif;
  color-scheme: light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--text);font-family:var(--body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding-inline:20px}
.mono{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.hand{font-family:var(--hand)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}

/* nav */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--ink);color:var(--on-ink);border-bottom:1px solid var(--line-ink)}
.nav .wrap{display:flex;align-items:center;gap:24px;height:62px}
.brand{font-family:var(--display);font-weight:900;font-size:22px;letter-spacing:.02em;text-decoration:none;white-space:nowrap}
.brand span{color:var(--red-ink)}
.nav ul{display:flex;gap:22px;list-style:none;margin:0 0 0 auto;padding:0}
.nav ul a{text-decoration:none;font-size:14px;font-weight:500;color:var(--on-ink-2)}
.nav ul a:hover{color:var(--on-ink)}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 22px;border-radius:3px;font-weight:700;font-size:15px;text-decoration:none;border:0;cursor:pointer;font-family:var(--body)}
.btn-red{background:var(--red);color:#fff}
.btn-red:hover{background:#B42814}
.btn-ghost{border:1.5px solid currentColor;background:transparent;color:inherit}
.nav .btn{min-height:38px;padding:0 16px;font-size:13px;white-space:nowrap}

/* torn edges */
.torn-b{clip-path:polygon(0 0,100% 0,100% calc(100% - 22px),97% calc(100% - 8px),93% calc(100% - 26px),88% calc(100% - 6px),82% calc(100% - 20px),76% calc(100% - 4px),70% calc(100% - 24px),63% calc(100% - 9px),57% calc(100% - 28px),50% calc(100% - 7px),43% calc(100% - 21px),36% calc(100% - 3px),29% calc(100% - 25px),22% calc(100% - 8px),15% calc(100% - 22px),8% calc(100% - 5px),3% calc(100% - 19px),0 calc(100% - 6px))}
.torn-t{clip-path:polygon(0 6px,4% 20px,9% 4px,16% 24px,23% 7px,31% 22px,38% 2px,45% 19px,52% 6px,60% 27px,67% 8px,74% 23px,81% 3px,87% 21px,93% 6px,100% 18px,100% 100%,0 100%)}

/* hero */
.hero{background:var(--ink);color:var(--on-ink);padding:56px 0 110px;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:40px;align-items:center}
.kit{color:var(--gold)}
.hero h1{font-family:var(--display);font-weight:900;text-transform:uppercase;font-size:clamp(72px,10.5vw,150px);line-height:.82;letter-spacing:-.01em;margin:18px 0 0}
.hero h1 .r{color:var(--red-ink)}
.sig{font-family:var(--deva);font-weight:700;color:var(--gold);font-size:clamp(28px,3.6vw,44px);transform:rotate(-4deg);display:inline-block;margin:6px 0 0 6px}
.motto{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:clamp(26px,2.8vw,36px);line-height:1;letter-spacing:.02em;margin:22px 0 0}
.motto span{color:var(--red-ink)}
.hero p.lede{font-size:clamp(18px,1.6vw,21px);color:var(--on-ink-2);max-width:34ch;margin:16px 0 30px}
.hero p.lede b{color:var(--on-ink);font-weight:600}
.cta{display:flex;flex-wrap:wrap;gap:12px}
.collage{position:relative;height:540px}
.pol{position:absolute;background:#fff;padding:10px 10px 34px;box-shadow:0 18px 40px rgba(0,0,0,.45);transition:transform .35s ease}
.pol img{width:100%;height:100%;object-fit:cover}
.pol::before{content:"";position:absolute;top:-12px;left:50%;width:86px;height:26px;background:var(--tape);transform:translateX(-50%) rotate(-3deg)}
.pol figcaption{position:absolute;left:12px;bottom:6px;font-family:var(--hand);color:var(--ink);font-size:19px}
.pol.a{width:62%;height:74%;left:4%;top:4%;transform:rotate(-5deg);z-index:2}
.pol.b{width:50%;height:56%;right:0;top:0;transform:rotate(6deg)}
.pol.c{width:46%;height:50%;right:6%;bottom:0;transform:rotate(-2deg);z-index:3}
.collage:hover .pol.a{transform:rotate(-3deg) translateY(-6px)}
.note{position:absolute;font-family:var(--hand);color:var(--gold);font-size:24px;line-height:1.05;z-index:4}
.note svg{display:block}

/* ticker */
.tickwrap{overflow:hidden;margin-top:-34px;padding:10px 0;position:relative;z-index:5}
.ticker{background:var(--red);color:#fff;overflow:hidden;white-space:nowrap;border-block:2px solid var(--ink);transform:rotate(-1.2deg);width:104%;margin-left:-2%}
.ticker .run{display:inline-block;padding:12px 0;font-family:var(--display);font-weight:800;font-size:26px;letter-spacing:.06em;animation:run 32s linear infinite}
.ticker .run span{margin:0 22px}
@keyframes run{to{transform:translateX(-50%)}}

/* stats */
.stats{padding:72px 0 40px}
.statgrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.stat{padding:22px 18px 20px;border-left:1px solid var(--line)}
.stat:first-child{border-left:0;padding-left:0}
.stat .n{font-family:var(--display);font-weight:900;font-size:clamp(40px,4.6vw,60px);line-height:.95;font-variant-numeric:tabular-nums}
.stat .n.r{color:var(--red)}
.stat .l{font-size:14px;color:var(--text-2);margin-top:8px;line-height:1.35}
.src{color:var(--text-3);margin-top:12px}

/* section heads */
section{scroll-margin-top:70px}
.head{display:flex;flex-direction:column;gap:12px;margin-bottom:36px;max-width:760px}
.head .mono{color:var(--red)}
.head h2{font-family:var(--display);font-weight:900;text-transform:uppercase;font-size:clamp(44px,6vw,84px);line-height:.88;margin:0;text-wrap:balance}
.head p{color:var(--text-2);margin:4px 0 0;max-width:60ch}
.dark .head p{color:var(--on-ink-2)}
.dark .head .mono{color:var(--gold)}

/* why */
.why{padding:56px 0 96px}
.whygrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.why .card{background:var(--card);padding:26px 22px 24px;border-radius:2px;box-shadow:0 1px 0 var(--line),0 10px 24px rgba(21,16,13,.06);position:relative}
.why .card:nth-child(2){transform:rotate(.8deg)}
.why .card:nth-child(3){transform:rotate(-.6deg)}
.why .big{font-family:var(--display);font-weight:900;font-size:58px;line-height:.9;color:var(--red)}
.why h3{font-size:19px;line-height:1.25;margin:14px 0 8px}
.why p{font-size:15px;color:var(--text-2);margin:0}

/* reels */
.reels{background:var(--ink);color:var(--on-ink);padding:110px 0 120px}
.strip{position:relative;padding:22px 0;background:#0B0806}
.strip::before,.strip::after{content:"";position:absolute;left:0;right:0;height:12px;background-image:radial-gradient(circle at 10px 6px,#3d342e 0 4px,transparent 4.5px);background-size:24px 12px}
.strip::before{top:4px}.strip::after{bottom:4px}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 20px 10px;scrollbar-width:thin}
.reel{scroll-snap-align:start;position:relative;border-radius:4px;overflow:hidden;background:#222;aspect-ratio:9/16}
.reel img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.reel:hover img{transform:scale(1.04)}
.reel .ov{position:absolute;inset:auto 0 0 0;padding:44px 14px 14px;background:linear-gradient(to top,rgba(0,0,0,.88),rgba(0,0,0,0))}
.reel .v{font-family:var(--display);font-weight:900;font-size:40px;line-height:.9;color:#fff}
.reel .v small{font-size:18px;font-weight:800;color:var(--gold);margin-left:4px}
.reel .t{font-size:14px;color:#E8DED6;margin-top:4px}
.reel .d{color:#A89A90;margin-top:6px;font-size:11px}
.reel .badge{position:absolute;top:10px;left:10px;background:var(--red);color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.1em;padding:4px 8px;border-radius:2px}
.railnote{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:22px;color:var(--on-ink-2);font-size:14px}

/* growth */
.growth{padding:110px 0 90px}
.growgrid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:center}
.chartbox{background:var(--card);padding:22px 18px 12px;border-radius:2px;box-shadow:0 1px 0 var(--line),0 12px 28px rgba(21,16,13,.07);position:relative}
.chartbox svg{width:100%;height:auto;display:block}
.chartbox svg text{font-family:var(--mono);font-size:11px;fill:var(--text-3)}
.chartbox svg .lb{fill:var(--text);font-size:12px;font-weight:500}
.miles{display:grid;gap:16px;margin-top:26px}
.mile{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:baseline;border-top:1px solid var(--line);padding-top:12px}
.mile .y{font-family:var(--mono);font-size:13px;color:var(--text-3)}
.mile b{font-family:var(--display);font-size:26px;font-weight:900;color:var(--red);margin-right:6px}

/* lenses */
.lens{padding:96px 0;overflow:hidden}
.lens.alt{background:var(--paper-2)}
.lensgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:52px;align-items:center}
.lens.flip .lensgrid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.lens.flip .copy{order:2}
.copy .mono{color:var(--red)}
.copy h2{font-family:var(--display);font-weight:900;text-transform:uppercase;font-size:clamp(46px,5.4vw,78px);overflow-wrap:break-word;line-height:.86;margin:12px 0 18px}
.copy p{color:var(--text-2);margin:0 0 14px;max-width:46ch}
.copy .handle{font-family:var(--mono);font-size:13px;color:var(--text);text-decoration:none;border-bottom:2px solid var(--red);padding-bottom:2px}
.mosaic{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:92px;gap:10px}
.mosaic figure{margin:0;overflow:hidden;border-radius:2px;background:#ddd;position:relative}
.mosaic img{width:100%;height:100%;object-fit:cover}
.mosaic figcaption{position:absolute;left:0;bottom:0;right:0;padding:18px 10px 8px;font-size:12px;color:#fff;background:linear-gradient(to top,rgba(0,0,0,.7),transparent)}
.s2x3{grid-column:span 2;grid-row:span 3}.s3x3{grid-column:span 3;grid-row:span 3}.s2x2{grid-column:span 2;grid-row:span 2}.s3x2{grid-column:span 3;grid-row:span 2}.s4x3{grid-column:span 4;grid-row:span 3}.s4x2{grid-column:span 4;grid-row:span 2}.s2x4{grid-column:span 2;grid-row:span 4}
.art .mosaic figure{background:#fff;box-shadow:0 8px 20px rgba(21,16,13,.12)}
.art .mosaic figure:nth-child(odd){transform:rotate(-1deg)}
.art .mosaic figure:nth-child(3n){transform:rotate(1.2deg)}

/* audience */
.aud{background:var(--ink);color:var(--on-ink);padding:120px 0 120px}
.audgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line-ink);border:1px solid var(--line-ink)}
.audgrid>div{background:var(--ink);padding:26px 22px}
.audgrid .n{font-family:var(--display);font-weight:900;font-size:clamp(42px,4.6vw,58px);line-height:.95;font-variant-numeric:tabular-nums}
.audgrid .n.g{color:var(--gold)}
.audgrid .l{color:var(--on-ink-2);font-size:14px;margin-top:8px}
.hours{margin-top:28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
.panel{border:1px solid var(--line-ink);padding:22px}
.bars{display:grid;gap:9px;margin-top:14px}
.bar{display:grid;grid-template-columns:44px minmax(0,1fr) 64px;gap:10px;align-items:center;font-family:var(--mono);font-size:12px;color:var(--on-ink-2)}
.bar i{display:block;height:10px;border-radius:0 3px 3px 0;background:var(--gold)}
.bar i.lo{background:#6B5D53}
.fill{border:1.5px dashed #6B5D53;color:var(--on-ink-2);padding:16px;margin-top:14px;font-size:14px}
.fill b{color:var(--gold);font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.08em}

/* collab */
.collab{padding:110px 0 80px}
.menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.item{background:var(--card);padding:24px 22px;border-top:4px solid var(--ink);display:flex;flex-direction:column;gap:10px}
.item h3{font-family:var(--display);font-weight:800;font-size:30px;line-height:1;text-transform:uppercase;margin:0}
.item p{color:var(--text-2);font-size:15px;margin:0;flex-grow:1}
.item .rate{color:var(--text-3)}
.item.hot{border-top-color:var(--red)}
.brands{padding:100px 0 20px}
.bgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 40px}
.bcat .mono{color:var(--red);margin-bottom:12px}
.bwall{display:flex;flex-wrap:wrap;gap:10px}
.bcat:nth-child(3){grid-row:span 2}
.past{margin-top:44px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.chip{border:1.5px solid var(--ink);padding:8px 14px;border-radius:40px;font-weight:600;font-size:14px}
.chip.ph{border-style:dashed;color:var(--text-3);border-color:var(--text-3);font-weight:500}

/* contact */
.contact{background:var(--red);color:#fff;padding:110px 0 90px}
.contact .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.contact h2{font-family:var(--display);font-weight:900;text-transform:uppercase;font-size:clamp(54px,7vw,104px);line-height:.85;margin:0 0 20px}
.contact p{max-width:40ch;color:#FFE9E3}
.lines{display:grid;gap:14px;margin-top:28px}
.line{display:flex;flex-wrap:wrap;align-items:center;gap:12px;border-top:1px solid rgba(255,255,255,.35);padding-top:14px}
.line .mono{color:#FFD9CF;width:110px}
.line .val{font-size:19px;font-weight:600;user-select:all}
.copy-btn{background:rgba(0,0,0,.18);color:#fff;border:0;border-radius:3px;padding:6px 10px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;cursor:pointer;min-height:32px}
form{background:var(--paper);color:var(--text);padding:28px;border-radius:2px;display:grid;gap:14px;box-shadow:0 20px 40px rgba(0,0,0,.25)}
label{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);display:grid;gap:6px}
input,select,textarea{width:100%;min-width:0;font:inherit;font-family:var(--body);font-size:16px;padding:12px;border:1.5px solid var(--line);border-radius:2px;background:#fff;color:var(--text);text-transform:none;letter-spacing:0}
textarea{min-height:110px;resize:vertical}
.row2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
.formnote{font-size:13px;color:var(--text-3);margin:0}
#sent{font-weight:600;color:var(--red);margin:0}
footer{background:var(--ink);color:var(--on-ink-2);padding:34px 0 40px;font-size:13px}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}

@media (max-width:980px){
  .hero .wrap,.growgrid,.lensgrid,.lens.flip .lensgrid,.contact .wrap{grid-template-columns:minmax(0,1fr)}
  .lens.flip .copy{order:0}
  .collage{height:440px;max-width:520px}
  .statgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stat{border-left:0;border-top:1px solid var(--line);padding-left:0}
  .stat:first-child{grid-column:1/-1;border-top:0}
  .whygrid,.menu{grid-template-columns:repeat(2,minmax(0,1fr))}
  .audgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hours{grid-template-columns:minmax(0,1fr)}
  .nav ul{display:none}
  .nav .btn{margin-left:auto}
}
@media (max-width:760px){.bgrid{grid-template-columns:minmax(0,1fr)}.bcat:nth-child(3){grid-row:auto}}
@media (max-width:560px){
  body{font-size:16px}
  .brand{font-size:18px}
  .nav .wrap{gap:12px}
  .whygrid,.menu,.audgrid,.row2{grid-template-columns:minmax(0,1fr)}
  .collage{height:380px}
  .mosaic{grid-auto-rows:64px}
  .rail{grid-auto-columns:minmax(200px,72%)}
  .why .card:nth-child(n){transform:none}
}
@media (prefers-reduced-motion:reduce){
  .ticker .run{animation:none}
  .pol,.reel img{transition:none}
  html{scroll-behavior:auto}
}

/* hero with background photo */
.hero.photo{padding:0;min-height:clamp(620px,90vh,880px);display:flex;align-items:center}
.hero-bg{position:absolute;top:0;bottom:0;right:0;left:36%;z-index:0}
.hero-bg{overflow:hidden}
.hero-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.1);transition:opacity 1.8s ease;will-change:opacity,transform}
.hero-bg img.on{opacity:1;animation:kb 9s ease-out forwards}
@keyframes kb{from{transform:scale(1.12)}to{transform:scale(1)}}
.dots{position:absolute;z-index:2;left:50%;bottom:58px;display:flex;gap:8px;transform:translateX(-50%)}
.dots i{display:block;width:26px;height:3px;border-radius:2px;background:rgba(246,241,236,.3);overflow:hidden;position:relative}
.dots i.on::after{content:"";position:absolute;inset:0;background:var(--gold);animation:bar 6s linear forwards;transform-origin:left}
@keyframes bar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,rgba(21,16,13,.55) 26%,rgba(21,16,13,0) 55%),linear-gradient(0deg,rgba(21,16,13,.85) 0%,rgba(21,16,13,0) 35%)}
.hero.photo .wrap{position:relative;z-index:1;display:block;width:100%;padding-block:90px 120px}
.hero.photo .inner{max-width:600px}
.hero-tag{position:absolute;right:20px;bottom:66px;color:var(--on-ink-2)}
/* story */
.story{padding:110px 0 30px}
.storygrid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:56px;align-items:center}
.storycopy .mono{color:var(--red)}
.storycopy h2{font-family:var(--display);font-weight:900;text-transform:uppercase;font-size:clamp(46px,5.6vw,80px);line-height:.88;margin:12px 0 22px;text-wrap:balance}
.storycopy p{color:var(--text-2);margin:0 0 14px;max-width:56ch}
.story .collage .pol figcaption{color:var(--ink)}
.story .pol.a{width:56%;height:72%;left:0;top:6%}
.story .pol.b{width:44%;height:58%;right:0;left:auto;top:0;z-index:1}
.story .pol.c{width:44%;height:50%;right:10%;bottom:0;z-index:3}
.tl{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:0;border-left:2px solid var(--red)}
.tl li{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;padding:9px 0 9px 18px;position:relative;font-size:15px}
.tl li::before{content:"";position:absolute;left:-7px;top:15px;width:12px;height:12px;border-radius:50%;background:var(--paper);border:2px solid var(--red)}
.tl .y{font-family:var(--mono);font-size:13px;color:var(--red);padding-top:2px}
/* brand logo wall */
.lwall{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:18px 12px}
.logo{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-size:12.5px;line-height:1.25;color:var(--text-2)}
.logo img,.logo .ini{width:72px;height:72px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--line),0 6px 14px rgba(21,16,13,.08);object-fit:cover}
.logo .ini{display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:900;font-size:30px;color:var(--text-3);box-shadow:inset 0 0 0 1.5px var(--text-3)}
.bgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
.bcat:nth-child(3){grid-row:auto}
@media (max-width:980px){
 .hero-bg{left:0;bottom:auto;height:640px}
 .hero-bg img{max-width:none!important;width:150%!important;left:-25%!important;object-position:center 66%!important}
 .hero.photo .wrap{padding-block:500px 110px!important}
 .hero-bg::after{background:linear-gradient(0deg,var(--ink) 0%,rgba(21,16,13,.25) 40%,rgba(21,16,13,0) 70%)}
 .hero.photo{align-items:flex-end}
 .hero.photo .wrap{padding-block:260px 110px}
 .hero-tag{position:static;margin-top:22px}
 .storygrid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){.bgrid{grid-template-columns:minmax(0,1fr)}}

/* motion */
.nav{transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.nav.hide{transform:translateY(-100%)}
.rv{opacity:0;transform:translateY(34px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.rv.in.why-card{transition-property:opacity,transform}
.btn{transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,.18)}
.logo img{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.logo:hover img{transform:scale(1.08) rotate(-3deg)}
.mosaic figure img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.mosaic figure:hover img{transform:scale(1.05)}
.item{transition:transform .35s ease,box-shadow .35s ease}
.item:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(21,16,13,.1)}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.hero-bg img.on{animation:none;transform:none}.dots{display:none}.nav{transition:none}}

/* artistic headings */
.hero h1 em,.head h2 em,.copy h2 em,.storycopy h2 em{font-style:italic;font-weight:700}
.hero h1 em{color:var(--on-ink)}
/* glowing numbers */
.n.glow,.big.glow,.v.glow,.glow{background:linear-gradient(180deg,#FFD98A 0%,#F0A21B 45%,#E5533A 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;filter:drop-shadow(0 0 10px rgba(240,162,27,.55)) drop-shadow(0 0 26px rgba(229,83,58,.35));animation:glowpulse 3.6s ease-in-out infinite}
.light .glow,.stats .glow,.why .glow,.growth .glow{background:linear-gradient(180deg,#F0A21B 0%,#E5533A 55%,#B42814 100%);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 8px rgba(240,162,27,.5)) drop-shadow(0 0 22px rgba(207,51,28,.28))}
@keyframes glowpulse{0%,100%{filter:drop-shadow(0 0 8px rgba(240,162,27,.45)) drop-shadow(0 0 20px rgba(229,83,58,.25))}50%{filter:drop-shadow(0 0 14px rgba(240,162,27,.75)) drop-shadow(0 0 36px rgba(229,83,58,.45))}}
@media (prefers-reduced-motion:reduce){.glow{animation:none}}
.livebadge{display:inline-flex;align-items:center;gap:8px;margin-top:12px;color:var(--text-3)}
.livebadge i{width:8px;height:8px;border-radius:50%;background:#2FB563;box-shadow:0 0 0 0 rgba(47,181,99,.6);animation:live 2s infinite}
@keyframes live{70%{box-shadow:0 0 0 8px rgba(47,181,99,0)}100%{box-shadow:0 0 0 0 rgba(47,181,99,0)}}
