:root{
  --bg:#ffffff; --ink:#0a0a10; --text:#0a0a10; --muted:#4d4d62; --panel:#f3f3f8; --panel-2:#ffffff;
  --line:#12121c; --soft:rgba(10,10,16,.14);
  --pink:#ff2d95; --purple:#8b3dff; --green:#a6ff3d;
  --grad:linear-gradient(100deg,var(--pink),var(--purple));
  --grad-full:linear-gradient(100deg,var(--pink),var(--purple) 58%,var(--green));
  --radius:20px; --bw:2px;
}
/* black banner scope: flips the palette */
.dark{--text:#ffffff;--muted:#bdbdd3;--panel:#14141d;--panel-2:#1a1a26;--line:rgba(255,255,255,.4);--soft:rgba(255,255,255,.16);
  background:#07070b;color:var(--text)}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:112.5%}
body{font-family:'Poppins',sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.narrow{max-width:820px}
.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.dark .grad-text{background:var(--grad-full);-webkit-background-clip:text;background-clip:text}
.wave-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
main,.site-header,footer{position:relative;z-index:1}

/* HEADER (black banner) */
.site-header{position:sticky;top:0;z-index:100;background:#07070b;border-bottom:var(--bw) solid #000}
.nav{display:flex;align-items:center;justify-content:space-between;height:84px;gap:24px}
.brand img{height:48px;width:auto}
.nav-links{display:flex;align-items:center;gap:34px}
.nav-links > a,.has-sub > a{font-size:1rem;font-weight:600;color:#c9c9de;transition:color .2s;padding:8px 0;display:inline-block}
.nav-links > a:hover,.has-sub > a:hover,.nav-links a.active{color:#fff}
.has-sub{position:relative}
.has-sub > a::after{content:"+";margin-left:6px;color:var(--green);font-weight:700}
.sub{position:absolute;top:100%;left:-18px;min-width:270px;padding:12px;background:#0f0f16;border:var(--bw) solid rgba(255,255,255,.3);border-radius:16px;opacity:0;visibility:hidden;transform:translateY(6px);transition:all .2s;box-shadow:0 24px 60px rgba(0,0,0,.5)}
.has-sub:hover .sub,.has-sub:focus-within .sub{opacity:1;visibility:visible;transform:none}
.sub a{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;border-radius:10px;font-size:1rem;font-weight:500;color:#fff}
.sub a:hover{background:rgba(255,255,255,.08)}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:inherit;font-weight:700;font-size:1rem;padding:15px 34px;border-radius:50px;border:var(--bw) solid transparent;cursor:pointer;background:var(--grad);color:#fff;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(139,61,255,.4)}
.btn-ghost{background:transparent;border-color:currentColor;color:inherit}
.btn-ghost:hover{border-color:var(--pink);box-shadow:none}
.btn-sm{padding:11px 26px;font-size:.92rem}
.menu-toggle{display:none;background:none;border:var(--bw) solid rgba(255,255,255,.4);border-radius:10px;color:#fff;font-size:1.4rem;width:46px;height:46px;cursor:pointer}

/* TYPE */
.eyebrow{display:inline-block;font-size:.85rem;letter-spacing:2.4px;text-transform:uppercase;color:var(--purple);font-weight:700;margin-bottom:18px}
.dark .eyebrow{color:var(--green)}
h1{font-size:clamp(2.9rem,7.4vw,6rem);font-weight:800;line-height:1.02;letter-spacing:-2.5px}
h2{font-size:clamp(2.2rem,5vw,3.8rem);font-weight:800;line-height:1.08;letter-spacing:-1.4px}
h3{font-size:1.5rem;font-weight:700;line-height:1.25}
.lead{color:var(--muted);font-size:1.3rem;max-width:700px;margin-top:24px;line-height:1.6}
.muted{color:var(--muted)}

/* BANNERS: parallax wave layers */
.wavebg{position:absolute;left:0;right:0;bottom:-20%;height:140%;background:url('/assets/waves.svg') center bottom/cover no-repeat;pointer-events:none;will-change:transform}
.hero,.page-hero,.cta-band{position:relative;overflow:hidden}
.hero .wrap,.page-hero .wrap,.cta-band .wrap{position:relative;z-index:1}
.hero{padding:130px 0 80px;text-align:center}
.hero::after{content:"";position:absolute;top:-220px;right:-160px;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(139,61,255,.28),transparent 65%);pointer-events:none}
.hero h1{max-width:1000px;margin:0 auto}
.hero .lead,.page-hero .lead{margin-left:auto;margin-right:auto}
.hero-cta{display:flex;gap:16px;flex-wrap:wrap;margin-top:40px;justify-content:center}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:90px;border-top:var(--bw) solid var(--line)}
.stat{padding:30px 22px 6px;text-align:center}
.stat + .stat{border-left:var(--bw) solid var(--line)}
.stat b{display:block;font-size:1.3rem;font-weight:700}
.stat span{color:var(--muted);font-size:1rem}
.page-hero{padding:110px 0 80px;text-align:center}
.page-hero h1{font-size:clamp(2.7rem,6.4vw,5rem)}

/* SECTIONS */
section{padding:110px 0;position:relative}
.alt{background:rgba(243,243,248,.88);border-top:var(--bw) solid var(--soft);border-bottom:var(--bw) solid var(--soft)}
.sec-head{max-width:760px;margin-bottom:60px}
.sec-head p{color:var(--muted);margin-top:18px;font-size:1.2rem}
.center{text-align:center;margin-left:auto;margin-right:auto}

/* CARDS */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.card{position:relative;overflow:hidden;background:#fff;border:var(--bw) solid var(--line);border-radius:var(--radius);padding:40px 34px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.card::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--grad)}
.card:hover{transform:translateY(-6px);box-shadow:8px 8px 0 var(--ink)}
.card h3{margin-bottom:14px}
.card p{color:var(--muted);font-size:1.05rem;flex:1}
.card .more{margin-top:26px;font-weight:700;font-size:1.02rem}
.card .more span{color:var(--pink)}
.mk{width:54px;height:26px;margin-bottom:24px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 22' fill='none' stroke-width='3' stroke-linecap='round'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop stop-color='%23ff2d95'/%3E%3Cstop offset='1' stop-color='%238b3dff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath stroke='url(%23g)' d='M2 11 C 8 1, 14 1, 20 11 S 32 21, 44 11'/%3E%3C/svg%3E") no-repeat left center/contain}
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.ticks{list-style:none;display:grid;gap:20px;margin-top:8px}
.ticks li{display:flex;gap:16px;font-size:1.12rem}
.ticks li::before{content:"";flex:none;width:12px;height:12px;margin-top:10px;border-radius:50%;background:var(--grad)}
.feature-card{background:linear-gradient(150deg,rgba(255,45,149,.2),rgba(139,61,255,.22) 60%,rgba(166,255,61,.1)),#0c0c13;color:#fff;border:var(--bw) solid rgba(255,255,255,.4);border-radius:26px;padding:52px 46px}
.feature-card .tag{display:inline-block;font-size:.8rem;letter-spacing:2px;text-transform:uppercase;color:var(--green);font-weight:700;padding:7px 16px;border:var(--bw) solid rgba(255,255,255,.35);border-radius:40px;margin-bottom:24px}
.feature-card h3{font-size:2rem;margin-bottom:16px;color:#fff}
.feature-card p{color:#c6c6dc;font-size:1.1rem}

/* VIDEO */
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.vid{border:var(--bw) solid var(--line);border-radius:18px;overflow:hidden;background:#fff}
.vid .frame{position:relative;aspect-ratio:16/9;background:#000}
.vid .frame iframe,.vid .frame img{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}
.vid .cap{padding:20px 22px 22px}
.vid .cap span{font-size:.8rem;color:var(--purple);letter-spacing:1.4px;text-transform:uppercase;font-weight:700}
.vid .cap h4{font-size:1.15rem;font-weight:700;margin-top:4px}
a.vid{display:block;transition:transform .25s,box-shadow .25s}
a.vid:hover{transform:translateY(-6px);box-shadow:8px 8px 0 var(--ink)}
a.vid .frame::after{content:"\25B6";position:absolute;inset:0;margin:auto;width:66px;height:66px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(7,7,11,.78);border:var(--bw) solid rgba(255,255,255,.7);color:#fff;font-size:1.2rem;padding-left:4px}
.film{max-width:1000px;margin:0 auto;aspect-ratio:16/9;position:relative;border-radius:20px;overflow:hidden;border:var(--bw) solid var(--line);box-shadow:12px 12px 0 var(--ink)}
.film iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.tall{display:flex;flex-wrap:wrap;gap:24px;justify-content:center}
.tall .tt{width:290px;max-width:100%;aspect-ratio:9/16;border-radius:16px;overflow:hidden;border:var(--bw) solid var(--line);background:#000}
.tall .tt iframe{width:100%;height:100%;border:0;display:block}
.chips{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:56px;justify-content:center}
.chips a{font-size:1rem;font-weight:700;padding:11px 24px;border:var(--bw) solid var(--line);border-radius:40px;transition:all .2s}
.chips a:hover{background:var(--ink);color:#fff}
.work-block{padding:80px 0;border-top:var(--bw) solid var(--soft)}
.work-block:first-of-type{border-top:0;padding-top:20px}
.work-block .sec-head{margin-bottom:44px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gallery figure{border:var(--bw) solid var(--line);border-radius:16px;overflow:hidden;background:#000;aspect-ratio:3/4}
.gallery img{width:100%;height:100%;object-fit:cover}

/* PRICING */
.rates{display:grid;max-width:1040px;margin:0 auto;border:var(--bw) solid var(--line);border-radius:24px;overflow:hidden;background:#fff}
.rate{display:grid;grid-template-columns:100px 1fr 250px;gap:26px;align-items:center;padding:34px 38px;border-top:var(--bw) solid var(--soft);transition:background .2s}
.rate:first-child{border-top:0}
.rate:hover{background:#f6f2ff}
.rate-tag{font-size:.8rem;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:var(--purple)}
.rate-main h3{font-size:1.35rem;margin-bottom:6px}
.rate-main p{color:var(--muted);font-size:1.02rem}
.rate-amt{text-align:right;line-height:1.25}
.rate-amt span{display:block;font-size:.78rem;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);font-weight:600}
.rate-amt b{font-size:2.2rem;font-weight:800;letter-spacing:-.8px}
.rate-amt small{font-size:.95rem;color:var(--muted);margin-left:4px}
.rate-amt em{display:block;font-style:normal;font-size:.88rem;color:var(--muted);margin-top:4px}
.fine{text-align:center;color:var(--muted);font-size:.95rem;margin-top:28px}
.shape{display:grid;grid-template-columns:repeat(4,1fr);max-width:1100px;margin:0 auto;border:var(--bw) solid var(--line);border-radius:22px;overflow:hidden;background:#fff}
.shape > div{padding:34px 28px;border-left:var(--bw) solid var(--soft)}
.shape > div:first-child{border-left:0}
.shape h3{font-size:1.25rem;margin-bottom:10px}
.shape p{color:var(--muted);font-size:1rem}
.faq{border-bottom:var(--bw) solid var(--soft);padding:26px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:1.2rem;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--pink);font-size:1.6rem;line-height:1}
.faq[open] summary::after{content:"\2212"}
.faq p{color:var(--muted);margin-top:14px;font-size:1.08rem}

/* STEPS */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.step{border-top:var(--bw) solid var(--line);padding-top:24px}
.step b.dot{display:block;width:44px;height:5px;border-radius:5px;background:var(--grad);margin-bottom:6px}
.step h3{margin:14px 0 8px;font-size:1.3rem}
.step p{color:var(--muted);font-size:1.02rem}

/* REVIEWS */
.review{background:#fff;border:var(--bw) solid var(--line);border-radius:var(--radius);padding:36px 32px;display:flex;flex-direction:column}
.review .stars{color:#f5b800;letter-spacing:3px;margin-bottom:16px;font-size:1.2rem}
.review blockquote{font-size:1.05rem;flex:1;margin-bottom:20px}
.review cite{font-style:normal;font-weight:700;color:var(--purple)}

/* PRODUCT */
.product{display:grid;grid-template-columns:.7fr 1.3fr;gap:56px;align-items:center;background:#fff;border:var(--bw) solid var(--line);border-radius:26px;padding:42px}
.product img{border-radius:14px;border:var(--bw) solid var(--line)}
.product .price-tag{font-size:2rem;font-weight:800;margin-right:22px}

/* BLOG */
.post-card{background:#fff;border:var(--bw) solid var(--line);border-radius:var(--radius);padding:38px 34px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.post-card:hover{transform:translateY(-6px);box-shadow:8px 8px 0 var(--ink)}
.post-card .meta{font-size:.82rem;letter-spacing:1.6px;text-transform:uppercase;color:var(--purple);font-weight:700;margin-bottom:14px}
.post-card h3{font-size:1.5rem;margin-bottom:14px}
.post-card p{color:var(--muted);font-size:1.05rem;flex:1}
.post-card .more{margin-top:24px;font-weight:700}
.post-card .more span{color:var(--pink)}
.article{max-width:780px;margin:0 auto}
.article .meta{font-size:.88rem;letter-spacing:1.6px;text-transform:uppercase;color:var(--purple);font-weight:700;margin-bottom:16px}
.article h1{font-size:clamp(2.3rem,5vw,3.6rem);margin-bottom:38px}
.article h2{font-size:1.9rem;margin:48px 0 16px;letter-spacing:-.5px}
.article p{color:#33334a;font-size:1.2rem;margin-bottom:22px}
.article ul{margin:0 0 24px 24px;color:#33334a;font-size:1.2rem;display:grid;gap:10px}
.article .back{display:inline-block;margin-bottom:34px;color:var(--muted);font-weight:600}
.article .back:hover{color:var(--ink)}

/* FORM */
.cform{display:grid;gap:18px}
.cform .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cform label{font-size:.95rem;font-weight:700;display:block;margin-bottom:8px}
.cform input,.cform select,.cform textarea{width:100%;font-family:inherit;font-size:1.05rem;color:var(--ink);background:#fff;border:var(--bw) solid var(--line);border-radius:14px;padding:16px 18px;transition:border-color .2s}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:none;border-color:var(--pink)}
.cform textarea{min-height:170px;resize:vertical}
.cform button{justify-self:start;font-size:1.05rem}
.hp{position:absolute;left:-9999px}
.contact-card{background:#07070b;color:#fff;border-radius:var(--radius);padding:42px 36px}
.contact-card h3{margin-bottom:8px}
.contact-card p{color:#c6c6dc;margin-bottom:24px}
.contact-card a.line{display:block;font-weight:700;font-size:1.15rem;margin-bottom:10px}
.contact-card a.line:hover{color:var(--green)}

/* CTA BAND (black) */
.cta-band{text-align:center;padding:120px 0}
.cta-band h2{max-width:820px;margin:0 auto 18px}
.cta-band p{color:var(--muted);max-width:600px;margin:0 auto 38px;font-size:1.2rem}
.cta-band .hero-cta{margin-top:0}

/* FOOTER (black) */
footer{background:#07070b;color:#fff;padding:80px 0 36px;border-top:var(--bw) solid #000}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:48px}
.foot img.fl{height:52px;width:auto;margin-bottom:20px}
.foot p{color:#bdbdd3;font-size:1rem}
.foot h4{font-size:.85rem;letter-spacing:2px;text-transform:uppercase;color:var(--green);margin-bottom:18px;font-weight:700}
.foot ul{list-style:none;display:grid;gap:12px}
.foot ul a{color:#bdbdd3;font-size:1rem;transition:color .2s}
.foot ul a:hover{color:#fff}
.legal{margin-top:58px;padding-top:26px;border-top:var(--bw) solid rgba(255,255,255,.2);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:#bdbdd3;font-size:.92rem}

@media(max-width:960px){
  .grid-3,.vgrid,.gallery{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .split,.product{grid-template-columns:1fr;gap:38px}
  .foot{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
  .menu-toggle{display:block}
  .nav-links{display:none;position:absolute;top:84px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#07070b;border-bottom:var(--bw) solid #000;padding:8px 32px 24px}
  .nav-links.open{display:flex}
  .nav-links > a,.has-sub > a{padding:16px 0;border-bottom:var(--bw) solid rgba(255,255,255,.14);display:block}
  .has-sub > a::after{display:none}
  .sub{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:transparent;padding:0 0 0 14px}
  .sub a{padding:13px 0;border-bottom:var(--bw) solid rgba(255,255,255,.1);border-radius:0}
  .nav-links .btn{margin-top:20px;justify-content:center}
}
@media(max-width:760px){
  section{padding:76px 0}
  .hero{padding:84px 0 56px}
  .page-hero{padding:80px 0 56px}
  .stat-row{grid-template-columns:1fr;margin-top:56px}
  .stat + .stat{border-left:0;border-top:var(--bw) solid var(--line)}
  .grid-3,.grid-2,.vgrid,.steps,.gallery,.shape{grid-template-columns:1fr}
  .cform .row{grid-template-columns:1fr}
  .rate{grid-template-columns:1fr;gap:10px;padding:28px 24px}
  .rate-amt{text-align:left}
  .shape > div{border-left:0;border-top:var(--bw) solid var(--soft)}
  .shape > div:first-child{border-top:0}
  .foot{grid-template-columns:1fr}
  .wrap{padding:0 22px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* landscape key-art gallery */
.gallery figure{aspect-ratio:16/9}
.dark .gallery figure{border-color:rgba(255,255,255,.35)}
/* on-air / Sam Tripoli */
.person img{width:100%;border-radius:22px;border:var(--bw) solid rgba(255,255,255,.4);box-shadow:12px 12px 0 rgba(255,45,149,.55)}
.airtime{margin-top:28px;display:inline-block;padding:18px 24px;border:var(--bw) solid var(--green);border-radius:16px}
.airtime b{display:block;font-size:1.25rem;color:var(--green)}
.airtime span{color:var(--muted)}
.who{margin-top:70px;padding-top:50px;border-top:var(--bw) solid rgba(255,255,255,.25)}
.who h3{font-size:1.7rem;margin-bottom:14px}
.who > p{color:var(--muted);font-size:1.15rem;max-width:860px}
.pills{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.pills span{font-weight:700;font-size:1rem;padding:11px 22px;border:var(--bw) solid rgba(255,255,255,.4);border-radius:40px}
.pills span:first-child{background:var(--grad);border-color:transparent}
.reel{max-width:360px;width:100%;margin:0 auto;aspect-ratio:9/16;border-radius:20px;overflow:hidden;border:var(--bw) solid rgba(255,255,255,.4);background:#000}
.reel iframe{width:100%;height:100%;border:0;display:block}
.darkpanel{border-radius:26px;padding:50px 46px;border:var(--bw) solid rgba(255,255,255,.2)}
.darkpanel .person img{box-shadow:10px 10px 0 rgba(255,45,149,.55)}
@media(max-width:760px){.darkpanel{padding:34px 24px}}
/* waves live only inside black banners */
section.dark,footer.dark{position:relative;overflow:hidden}
section.dark > .wrap,footer.dark > .wrap{position:relative;z-index:1}
.wave-canvas{display:none}

/* ===== v3: service pages, pricing, contact ===== */
.svc-hero{position:relative;overflow:hidden;padding:110px 0 100px}
.svc-hero .wrap{position:relative;z-index:1}
.svc-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.svc-hero h1{font-size:clamp(2.6rem,5.4vw,4.6rem)}
.vframe{position:relative;padding:18px}
.vframe .film{aspect-ratio:16/9;border-radius:22px;overflow:hidden;border:3px solid #fff;box-shadow:16px 16px 0 var(--pink),-10px -10px 0 var(--purple);transform:rotate(-1.6deg);background:#000}
.vframe iframe{width:100%;height:100%;border:0;display:block}
.float{position:absolute;font-weight:700;font-size:.95rem;padding:10px 20px;border-radius:40px;background:#07070b;color:#fff;border:2px solid var(--green);box-shadow:0 10px 30px rgba(0,0,0,.4);animation:bob 5s ease-in-out infinite}
.f1{top:-6px;right:12px}.f2{bottom:-8px;left:6px;border-color:var(--pink);animation-delay:-2s}.f3{top:46%;left:-16px;border-color:var(--purple);animation-delay:-3.4s}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.phone{width:min(290px,70%);aspect-ratio:9/16;margin:0 auto;border-radius:36px;border:4px solid #fff;overflow:hidden;background:#000;box-shadow:14px 14px 0 var(--pink),-8px -8px 0 var(--purple)}
.browser{background:#fff;border-radius:18px;border:3px solid #fff;overflow:hidden;box-shadow:16px 16px 0 var(--purple),-10px -10px 0 var(--pink);transform:rotate(-1.4deg)}
.browser .bar{display:flex;align-items:center;gap:7px;padding:12px 16px;background:#14141d}
.browser .bar i{width:11px;height:11px;border-radius:50%;background:var(--pink)}
.browser .bar i:nth-child(2){background:var(--green)}.browser .bar i:nth-child(3){background:var(--purple)}
.browser .bar span{margin-left:12px;flex:1;background:#262636;color:#bdbdd3;font-size:.8rem;border-radius:20px;padding:5px 14px}
.pg{padding:18px;background:#fff}
.pg-hero{border-radius:14px;padding:26px 20px;background:linear-gradient(120deg,#07070b,#2a1055 60%,#ff2d95);display:grid;gap:10px}
.pg-hero b{height:16px;width:70%;background:#fff;border-radius:8px}
.pg-hero em{height:9px;width:48%;background:rgba(255,255,255,.55);border-radius:6px}
.pg-hero u{height:26px;width:90px;background:var(--green);border-radius:20px;margin-top:6px}
.pg-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
.pg-row s{height:64px;border-radius:12px;background:#f0eefc;border:2px solid #e2dcfb}
.mini-phone{position:absolute;right:-6px;bottom:-26px;width:130px;background:#fff;border-radius:22px;border:3px solid #fff;padding:10px;box-shadow:8px 8px 0 var(--green);transform:rotate(3deg)}
.mini-phone .pg-hero{padding:16px 12px}.mini-phone .pg-row{grid-template-columns:1fr 1fr}.mini-phone .pg-row s{height:40px}

.ticker{overflow:hidden;padding:20px 0;border-top:2px solid rgba(255,255,255,.18);border-bottom:2px solid rgba(255,255,255,.18);background:linear-gradient(90deg,#14061f,#07070b 50%,#14061f)}
.ticker-track{display:flex;align-items:center;gap:34px;width:max-content;animation:tick 40s linear infinite}
.ticker span{font-weight:800;font-size:1.5rem;white-space:nowrap;background:var(--grad-full);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.ticker i{width:12px;height:12px;border-radius:50%;background:var(--green);flex:none}
@keyframes tick{to{transform:translateX(-25%)}}

.fcard{background:#fff;border:var(--bw) solid var(--line);border-radius:22px;padding:34px 30px;transition:transform .25s,box-shadow .25s}
.fcard:hover{transform:translate(-4px,-6px);box-shadow:9px 9px 0 var(--ink)}
.fcard .ico{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;margin-bottom:22px;color:#fff;transform:rotate(-6deg);transition:transform .25s}
.fcard:hover .ico{transform:rotate(4deg) scale(1.08)}
.fcard .ico svg{width:30px;height:30px}
.fcard.pk .ico{background:var(--pink)}.fcard.pu .ico{background:var(--purple)}.fcard.gr .ico{background:var(--green);color:#07070b}
.fcard h3{margin-bottom:10px}.fcard p{color:var(--muted);font-size:1.05rem}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}

.statband{overflow:hidden;padding:90px 0}
.statband .wrap{position:relative;z-index:1}
.bigstats{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;text-align:center}
.bigstat b{display:block;font-size:clamp(2.6rem,5.2vw,4.4rem);font-weight:800;letter-spacing:-2px;line-height:1.05;background:var(--grad-full);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.bigstat span{display:block;margin-top:12px;color:#c9c9de;font-size:1.1rem;max-width:300px;margin-left:auto;margin-right:auto}

.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;position:relative}
.timeline::before{content:"";position:absolute;left:0;right:0;top:15px;height:5px;border-radius:5px;background:var(--grad-full)}
.tstep{position:relative;padding-top:50px}
.tstep .node{position:absolute;top:0;left:0;width:36px;height:36px;border-radius:50%;background:#fff;border:5px solid var(--purple);box-shadow:0 0 0 6px #fff}
.tstep:nth-child(2) .node{border-color:var(--pink)}.tstep:nth-child(3) .node{border-color:var(--green)}
.tstep h3{margin-bottom:8px;font-size:1.3rem}.tstep p{color:var(--muted);font-size:1.02rem}

.pricecall{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#07070b;color:#fff;border-radius:28px;padding:50px 56px;border:3px solid #fff;box-shadow:12px 12px 0 var(--pink)}
.pricecall .tag{display:inline-block;font-size:.8rem;letter-spacing:2px;text-transform:uppercase;color:var(--green);font-weight:700;padding:6px 16px;border:2px solid rgba(255,255,255,.35);border-radius:40px;margin-bottom:18px}
.pricecall h3{font-size:2rem;margin-bottom:10px}.pricecall p{color:#c6c6dc;font-size:1.1rem;max-width:620px}

/* pricing */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:stretch}
.plan{position:relative;background:#fff;border:var(--bw) solid var(--line);border-radius:26px;padding:44px 36px 40px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.plan:hover{transform:translateY(-8px);box-shadow:10px 10px 0 var(--ink)}
.plan.feat{background:#07070b;color:#fff;border-color:#fff;box-shadow:12px 12px 0 var(--pink);transform:translateY(-14px)}
.plan.feat:hover{transform:translateY(-22px);box-shadow:14px 14px 0 var(--purple)}
.plan .ribbon{position:absolute;top:-16px;left:50%;transform:translateX(-50%);background:var(--green);color:#07070b;font-weight:800;font-size:.8rem;letter-spacing:1.5px;text-transform:uppercase;padding:8px 20px;border-radius:30px;white-space:nowrap}
.ptag{font-size:.8rem;letter-spacing:2px;text-transform:uppercase;font-weight:800;color:var(--purple)}
.plan.feat .ptag{color:var(--green)}
.plan h3{font-size:1.6rem;margin:10px 0 18px}
.pprice b{font-size:3.6rem;font-weight:800;letter-spacing:-2px;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0 6px}
.plan.feat .pprice b{background:var(--grad-full);-webkit-background-clip:text;background-clip:text}
.pprice small{color:var(--muted);font-size:1rem;font-weight:600}
.plan.feat .pprice small,.plan.feat em{color:#bdbdd3}
.plan em{display:block;font-style:normal;color:var(--muted);font-size:.95rem;margin:8px 0 26px}
.plan ul{list-style:none;display:grid;gap:14px;margin-bottom:34px;flex:1}
.plan li{display:flex;gap:12px;align-items:flex-start;font-size:1.02rem}
.plan li svg{flex:none;width:22px;height:22px;padding:4px;border-radius:50%;background:var(--green);color:#07070b;margin-top:2px}
.plan .btn{justify-content:center}
.minis{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.mini{background:#fff;border:var(--bw) solid var(--line);border-radius:22px;padding:30px;display:flex;flex-direction:column;gap:10px;transition:transform .25s,box-shadow .25s}
.mini:hover{transform:translate(-3px,-5px);box-shadow:8px 8px 0 var(--purple)}
.mini p{color:var(--muted);flex:1}
.mini b{font-size:1.5rem;font-weight:800;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.mini em{display:block;font-style:normal;color:var(--muted);font-size:.9rem}
.bundle{display:flex;align-items:center;justify-content:space-between;gap:50px}
.bundle h2{max-width:720px}

/* contact */
.formwrap{background:#fff;border:3px solid var(--ink);border-radius:28px;padding:44px;box-shadow:12px 12px 0 var(--purple)}
.cform .opt{font-weight:500;color:var(--muted)}
.form-done{text-align:center;padding:50px 10px}
.form-done h3{font-size:2.2rem;margin-bottom:12px}.form-done p{color:var(--muted);margin-bottom:28px;font-size:1.15rem}
.form-err{color:#d00055;font-weight:600}
.cform button:disabled{opacity:.6;cursor:wait}

@media (max-width:980px){
  .svc-grid{grid-template-columns:1fr;gap:50px}
  .plans,.minis,.grid-4,.bigstats,.timeline{grid-template-columns:1fr}
  .plan.feat{transform:none}.plan.feat:hover{transform:translateY(-8px)}
  .timeline::before{left:17px;right:auto;top:0;bottom:0;width:5px;height:auto}
  .tstep{padding:0 0 10px 62px}
  .pricecall,.bundle{flex-direction:column;align-items:flex-start;padding:38px 30px}
  .formwrap{padding:28px 22px}
}
@media (prefers-reduced-motion:reduce){.float,.ticker-track{animation:none}}
[hidden]{display:none!important}

/* homepage big service boxes */
.mega{font-size:clamp(3rem,7vw,5.6rem);letter-spacing:-3px}
.bigsvc{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.svcbox{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:48px 40px 42px;min-height:470px;border-radius:30px;border:3px solid var(--ink);box-shadow:12px 12px 0 var(--ink);color:#fff;transition:transform .25s,box-shadow .25s}
.svcbox:hover{transform:translate(-6px,-8px);box-shadow:20px 20px 0 var(--ink)}
.svcbox::after{content:"";position:absolute;right:-90px;bottom:-90px;width:300px;height:300px;border-radius:50%;background:rgba(255,255,255,.16);pointer-events:none}
.svcbox.pk{background:linear-gradient(145deg,#ff2d95,#ff5fb1)}
.svcbox.pu{background:linear-gradient(145deg,#8b3dff,#b57bff)}
.svcbox.gr{background:linear-gradient(145deg,#a6ff3d,#d3ff7a);color:#07070b}
.sico{width:92px;height:92px;border-radius:26px;background:#07070b;color:#fff;display:grid;place-items:center;margin-bottom:34px;transform:rotate(-7deg);transition:transform .25s}
.svcbox:hover .sico{transform:rotate(5deg) scale(1.08)}
.sico svg{width:46px;height:46px}
.svcbox.gr .sico{color:var(--green)}
.svcbox h3{font-size:2.5rem;font-weight:800;line-height:1.08;letter-spacing:-1px;margin-bottom:18px}
.svcbox p{font-size:1.15rem;line-height:1.55;flex:1;opacity:.95}
.svcbox .go{margin-top:30px;font-weight:800;font-size:1.2rem;display:inline-flex;align-items:center;gap:10px;align-self:flex-start;background:#07070b;color:#fff;padding:14px 28px;border-radius:50px}
.svcbox .go b{color:var(--green);transition:transform .2s}
.svcbox:hover .go b{transform:translateX(6px)}
@media (max-width:980px){.bigsvc{grid-template-columns:1fr}.svcbox{min-height:0}}

/* social hero graphic */
.sphone{position:relative;width:min(300px,72%);margin:0 auto;border-radius:38px;border:4px solid #fff;background:#fff;padding:26px 14px 14px;box-shadow:14px 14px 0 var(--pink),-8px -8px 0 var(--purple);transform:rotate(-2deg)}
.sphone .notch{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:70px;height:8px;border-radius:8px;background:#07070b}
.sp-head{display:flex;align-items:center;gap:12px;margin:10px 4px 14px}
.sp-head .av{width:50px;height:50px;border-radius:50%;background:var(--grad-full);box-shadow:0 0 0 3px #fff,0 0 0 6px var(--purple);flex:none}
.sp-head b{display:block;height:11px;width:110px;border-radius:6px;background:#07070b;margin-bottom:8px}
.sp-head em{display:block;height:8px;width:72px;border-radius:6px;background:#c9c6df}
.sp-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 4px 14px}
.sp-stats i{height:34px;border-radius:12px;background:#f0eefc;border:2px solid #e2dcfb}
.sp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.sp-grid s{aspect-ratio:3/4;border-radius:10px;position:relative;display:block}
.sp-grid .t1{background:linear-gradient(160deg,#ff2d95,#8b3dff)}.sp-grid .t2{background:linear-gradient(160deg,#07070b,#3b1a78)}
.sp-grid .t3{background:linear-gradient(160deg,#a6ff3d,#2fd0a0)}.sp-grid .t4{background:linear-gradient(160deg,#8b3dff,#ff2d95)}
.sp-grid .t5{background:linear-gradient(160deg,#ff7ac0,#ffb347)}.sp-grid .t6{background:linear-gradient(160deg,#2a1055,#ff2d95)}
.sp-grid u{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:0;height:0;border-left:16px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.9;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}
.sp-nav{display:flex;justify-content:space-around;margin-top:14px;padding-top:12px;border-top:2px solid #eee}
.sp-nav i{width:22px;height:22px;border-radius:7px;background:#07070b}.sp-nav i:nth-child(2){background:var(--pink)}
.cal-card{position:absolute;right:-8px;bottom:36px;width:170px;background:#07070b;border:3px solid var(--green);border-radius:20px;padding:14px;transform:rotate(3deg);box-shadow:0 14px 34px rgba(0,0,0,.45);animation:bob 6s ease-in-out infinite}
.cal-top{margin-bottom:12px}.cal-top b{display:block;height:10px;width:80px;border-radius:6px;background:#fff;margin-bottom:7px}.cal-top em{display:block;height:7px;width:54px;border-radius:6px;background:#7c7c99}
.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.cal-days i{aspect-ratio:1;border-radius:6px;background:#262636}.cal-days i.on{background:var(--pink)}.cal-days i.on:nth-child(4){background:var(--purple)}.cal-days i.on:nth-child(6){background:var(--green)}
.heart{position:absolute;left:4px;top:30%;width:58px;height:58px;border-radius:50%;background:var(--pink);color:#fff;display:grid;place-items:center;font-size:1.6rem;border:3px solid #fff;animation:bob 4.5s ease-in-out infinite;animation-delay:-1s}
@media (prefers-reduced-motion:reduce){.cal-card,.heart{animation:none}}
.sec-head.center:has(.mega){max-width:1100px}.mega{white-space:nowrap}@media (max-width:760px){.mega{white-space:normal}}
