/* ============================================================
   main.css — extracted from index.html
   Served with Cache-Control: public, max-age=604800
   Do not edit index.html's <style> block; edit this file.
   ============================================================ */

:root{--d:#2A225D;--n:#4A3B8C;--p:#6A56B1;--m:#C84FAA;--pk:#E595D0;--w:#fff;--g:rgba(200,79,170,0.46)}
*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}
html{scroll-snap-type:y mandatory;scroll-behavior:smooth}
body{font-family:'Outfit',Tahoma,sans-serif;background:linear-gradient(180deg,#2a225d 0%,#3b307b 48%,#5846a2 100%);color:var(--w);overflow-x:hidden;-webkit-font-smoothing:antialiased;cursor:none}
a,button{cursor:none}input{cursor:text}
/* Visually hidden but readable by screen readers and search engines */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* PARTICLES — canvas based, always visible */
#pCanvas{position:fixed;inset:0;z-index:2;pointer-events:none;opacity:0.9}
main,nav,footer,.thanks{position:relative;z-index:3}
nav,.thanks{z-index:100}

/* AURORA — animated living background that drifts behind translucent sections */
.aurora{position:fixed;inset:0;z-index:1;pointer-events:none;overflow:hidden;contain:strict}
.aurora i{position:absolute;display:block;border-radius:50%;filter:blur(90px);opacity:.5;mix-blend-mode:screen;will-change:transform}
.aurora i:nth-child(1){width:62vw;height:62vw;left:-14vw;top:-16vw;background:radial-gradient(circle at 50% 50%,#C84FAA,transparent 62%);animation:aur1 24s ease-in-out infinite alternate}
.aurora i:nth-child(2){width:54vw;height:54vw;right:-16vw;top:12vh;background:radial-gradient(circle at 50% 50%,#6A56B1,transparent 62%);animation:aur2 30s ease-in-out infinite alternate}
.aurora i:nth-child(3){width:48vw;height:48vw;left:22vw;bottom:-20vw;background:radial-gradient(circle at 50% 50%,#E595D0,transparent 62%);animation:aur3 34s ease-in-out infinite alternate}
@keyframes aur1{0%{transform:translate(0,0) scale(1)}100%{transform:translate(14vw,10vh) scale(1.25)}}
@keyframes aur2{0%{transform:translate(0,0) scale(1.05)}100%{transform:translate(-12vw,8vh) scale(1.3)}}
@keyframes aur3{0%{transform:translate(0,0) scale(1)}100%{transform:translate(8vw,-10vh) scale(1.2)}}
@media(prefers-reduced-motion:reduce){.aurora i{animation:none}}

/* CURSOR */
.cur{position:fixed;width:22px;height:22px;border-radius:50%;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);border:2px solid var(--w);transition:width .2s,height .2s,border-color .15s,background .15s}
.cur.x{width:52px;height:52px;border-color:var(--pk);background:rgba(201,76,172,0.12)}

/* NAV */
.nav{position:fixed;top:14px;left:50%;transform:translateX(-50%);width:calc(100% - 48px);max-width:840px;display:flex;align-items:center;justify-content:space-between;padding:4px 14px 4px 8px;z-index:100;border-radius:999px;background:rgba(69,56,133,0.34);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);border:1px solid rgba(229,149,208,0.26);box-shadow:0 8px 32px rgba(32,19,73,0.2);overflow:visible;transition:background .3s,box-shadow .3s,border-color .3s}
.nav::before{content:"";position:absolute;top:0;left:-40%;width:50%;height:100%;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,0.12) 50%,transparent 80%);transform:skewX(-18deg);transition:left .9s cubic-bezier(.2,.8,.2,1);pointer-events:none;opacity:0}
.nav:hover::before{left:130%;opacity:1}
.nav:hover{border-color:rgba(201,76,172,0.5);box-shadow:0 12px 40px rgba(0,0,0,0.4),0 0 40px rgba(201,76,172,0.2)}
.nl{display:flex;align-items:center;z-index:1}
.lm{width:15px;height:auto;filter:brightness(0) invert(1);transition:transform .3s,filter .3s}
.lm:hover{transform:rotate(-8deg) scale(1.2);filter:brightness(0) invert(1) drop-shadow(0 0 10px var(--pk))}
.nk{display:flex;gap:16px;list-style:none;margin-left:20px}
.nk a{color:rgba(255,255,255,0.7);text-decoration:none;font-weight:600;font-size:9.5px;letter-spacing:.16em;position:relative;padding-bottom:2px;transition:color .25s}
.nk a::after{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:0;background:linear-gradient(90deg,var(--m),var(--pk));transition:width .35s cubic-bezier(.2,.8,.2,1)}
.nk a:hover,.nk a.active{color:#fff}.nk a:hover::after,.nk a.active::after{width:100%}
.nav-dd{position:relative}
.nav-dd::after{content:"";position:absolute;left:-12px;right:-12px;top:100%;height:18px}
.nav-dd>a{display:inline-flex;align-items:center;gap:6px}
.nav-dd>a .caret{font-size:10px;opacity:.7;transition:transform .25s,opacity .25s}
.nav-dd:hover>a .caret,.nav-dd.open>a .caret{transform:translateY(1px);opacity:1}
.nav-drop{position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%) translateY(8px);min-width:220px;padding:10px;border-radius:18px;background:rgba(46,36,94,0.94);backdrop-filter:blur(20px);border:1px solid rgba(229,149,208,0.2);box-shadow:0 24px 60px rgba(0,0,0,0.28),0 0 26px rgba(201,76,172,0.14);display:grid;gap:4px;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:30}
.nav-dd:hover .nav-drop,.nav-dd:focus-within .nav-drop,.nav-dd.open .nav-drop{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav-drop a{font-size:10px;padding:10px 12px;border-radius:12px;letter-spacing:.14em;background:rgba(255,255,255,0.02)}
.nav-drop a:hover{background:linear-gradient(135deg,rgba(213,95,179,0.24),rgba(190,114,240,0.16));color:#fff}
.nr{display:flex;align-items:center;gap:10px;z-index:1}
.lg{font-weight:600;font-size:9.5px;color:rgba(255,255,255,0.6);text-decoration:none;padding:3px 7px;border-radius:999px;transition:background .3s,color .3s}.lg:hover{color:var(--pk);background:rgba(255,255,255,0.06)}.lg .sp{margin:0 3px;opacity:.4}
.li{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,255,255,0.2);transition:border-color .3s,background .3s,transform .3s}.li:hover{border-color:var(--pk);background:rgba(201,76,172,0.15);transform:scale(1.1)}.li svg{width:11px;height:11px;fill:rgba(255,255,255,0.7)}.li:hover svg{fill:var(--pk)}
.bl{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;text-decoration:none;font-size:9.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,rgba(213,95,179,0.78),rgba(190,114,240,0.7));border:1px solid rgba(255,255,255,0.18);box-shadow:0 10px 24px rgba(189,79,156,0.22);transition:transform .28s,box-shadow .28s,background .28s}.bl:hover{transform:translateY(-2px);background:linear-gradient(135deg,#d55fb3 0%,#f08fd7 55%,#d39bff 100%);box-shadow:0 14px 30px rgba(213,95,179,0.3)}
.hb{display:none;width:18px;height:13px;background:transparent;border:0;z-index:110;position:relative}
.hb span{position:absolute;left:0;right:0;height:1.5px;background:#fff;border-radius:2px;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .25s,top .35s}
.hb span:nth-child(1){top:0}.hb span:nth-child(2){top:5.5px}.hb span:nth-child(3){top:11px}
.hb.open span:nth-child(1){top:5.5px;transform:rotate(45deg)}.hb.open span:nth-child(2){opacity:0}.hb.open span:nth-child(3){top:5.5px;transform:rotate(-45deg)}
.mm{position:fixed;top:0;left:0;right:0;background:rgba(53,42,112,0.94);backdrop-filter:blur(24px);padding:76px 32px 40px;z-index:90;transform:translateY(-100%);transition:transform .45s cubic-bezier(.2,.8,.2,1)}.mm.open{transform:translateY(0)}
.mm ul{list-style:none;display:flex;flex-direction:column;gap:16px}.mm a{color:#fff;text-decoration:none;font-weight:700;font-size:16px;display:block;padding:7px 0;border-bottom:1px solid rgba(255,255,255,0.1)}
.mobile-subgroup{display:grid;gap:8px;padding:4px 0 0 14px}
.mobile-subgroup a{font-size:13px;font-weight:600;letter-spacing:.08em;color:rgba(255,255,255,0.82)}

/* HERO */
.hero{min-height:100vh;scroll-snap-align:start;scroll-snap-stop:always;position:relative;overflow:hidden;display:flex;align-items:center;padding:120px clamp(24px,6vw,100px) 80px;background:
radial-gradient(circle at 14% 22%,rgba(229,149,208,0.32),transparent 24%),
radial-gradient(circle at 82% 16%,rgba(185,148,255,0.24),transparent 26%),
radial-gradient(circle at 72% 72%,rgba(200,79,170,0.2),transparent 30%),
linear-gradient(135deg,#2b215f 0%,#3c2f7d 46%,#56459d 100%)}
.hw{display:none}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.72;filter:brightness(.9) contrast(1.03) saturate(.96)}
@keyframes wd{0%{transform:translate(0,0)}50%{transform:translate(-25px,-10px)}100%{transform:translate(12px,5px)}}
.hi{position:relative;z-index:3;width:100%;max-width:1220px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:42px;align-items:stretch}
.hero-copy{display:flex;flex-direction:column;align-items:flex-start}
.hero-side{position:relative;padding:28px;border-radius:34px;border:1px solid rgba(232,124,203,0.24);background:linear-gradient(145deg,rgba(255,255,255,0.14),rgba(200,79,170,0.18));backdrop-filter:blur(12px);box-shadow:0 24px 70px rgba(33,21,78,0.22),0 0 46px rgba(232,124,203,0.14);display:flex;flex-direction:column;justify-content:space-between;min-height:100%;height:100%}
.hero-side::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(125deg,rgba(255,255,255,0.3),rgba(232,124,203,0.42),rgba(167,130,255,0.22));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.7;pointer-events:none}
.hero-pulse{position:absolute;right:24px;top:20px;width:84px;height:84px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,0.35),rgba(232,124,203,0.18),transparent 70%);filter:blur(4px);animation:pulseOrb 4.8s ease-in-out infinite}
.hero-tagline{font-size:clamp(18px,1.6vw,24px);line-height:1.65;color:rgba(255,255,255,0.88);max-width:520px;margin-bottom:22px}
.hero-side-title{font-size:clamp(34px,4.4vw,60px);font-weight:900;line-height:1.04;letter-spacing:-.04em;margin-bottom:18px;padding-bottom:.08em;background:linear-gradient(135deg,#fff 18%,#ffd6f0 48%,#e87ccb 75%,#b688ff 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 24px rgba(232,124,203,0.14)}
.hero-side-note{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,0.62);margin-bottom:18px}
.hero-side-copy{font-size:clamp(16px,1.22vw,19px);line-height:1.85;color:rgba(255,255,255,0.82)}
.hero-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}
.hero-chip{padding:14px 16px;border-radius:18px;background:rgba(12,10,33,0.26);border:1px solid rgba(255,255,255,0.08);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--pk);box-shadow:inset 0 1px 0 rgba(255,255,255,0.06);transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,background .28s,border-color .28s,color .28s}
.hero-chip:hover{transform:translateY(-4px) scale(1.05);background:linear-gradient(135deg,rgba(213,95,179,0.24),rgba(211,155,255,0.2));border-color:rgba(255,241,249,0.5);color:#fff;box-shadow:0 18px 34px rgba(213,95,179,0.24),0 0 26px rgba(240,143,215,0.22)}
.ht{font-size:clamp(13px,1.1vw,16px);font-weight:600;letter-spacing:.22em;color:var(--pk);margin-bottom:16px;text-transform:uppercase;animation:ri .8s cubic-bezier(.2,.7,.2,1) .1s both}
.htt{font-size:clamp(72px,12vw,150px);font-weight:900;line-height:.94;letter-spacing:-.05em;margin-bottom:22px;padding-bottom:.08em;background:linear-gradient(135deg,#fff 18%,#fbe2ff 46%,var(--pk) 75%,#9d6bff 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:ri .8s cubic-bezier(.2,.7,.2,1) .2s both;text-align:left}
.hero-always{font-size:clamp(12px,1vw,14px);font-weight:800;letter-spacing:.34em;text-transform:uppercase;color:#ffd1ef;margin-bottom:20px;text-shadow:0 0 18px rgba(232,124,203,0.44)}
.hsub{font-size:clamp(17px,1.4vw,22px);font-weight:400;color:rgba(255,255,255,0.88);margin-bottom:32px;max-width:680px;line-height:1.8;animation:ri .8s cubic-bezier(.2,.7,.2,1) .35s both;background:rgba(255,255,255,0.12);padding:18px 24px;border-radius:24px;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,0.12);transition:transform .3s,box-shadow .3s}
.hsub:hover{transform:scale(1.02) translateY(-2px);box-shadow:0 0 30px rgba(201,76,172,0.25),0 20px 40px rgba(0,0,0,0.2)}
.hsub strong{color:var(--pk);font-weight:700}
.cr{display:flex;gap:16px;flex-wrap:wrap;animation:ri .8s cubic-bezier(.2,.7,.2,1) .5s both}
.hero-links{display:flex;gap:14px;flex-wrap:wrap}
.btn.hero-btn{min-width:190px;justify-content:center}
.btn{display:inline-flex;align-items:center;padding:14px 36px;font-family:inherit;font-weight:700;font-size:13px;letter-spacing:.12em;border:1px solid rgba(255,220,244,0.24);border-radius:999px;text-decoration:none;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,background .3s,border-color .3s;position:relative;overflow:hidden;background:linear-gradient(135deg,#bd4f9c 0%,#d767be 55%,#be72f0 100%);color:#fff;box-shadow:0 12px 30px rgba(189,79,156,0.3),0 0 28px rgba(215,103,190,0.16)}
.btn::before{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,0.4) 50%,transparent 80%);transform:skewX(-25deg);transition:left .7s cubic-bezier(.2,.8,.2,1)}.btn:hover::before{left:130%}
.bp,.bg{background:linear-gradient(135deg,#bd4f9c 0%,#d767be 55%,#be72f0 100%);color:#fff;border:1px solid rgba(255,220,244,0.24);box-shadow:0 12px 30px rgba(189,79,156,0.3),0 0 28px rgba(215,103,190,0.16)}
.bp:hover,.bg:hover,.btn:hover{background:linear-gradient(135deg,#d55fb3 0%,#f08fd7 55%,#d39bff 100%);border-color:rgba(255,241,249,0.74);transform:translateY(-4px) scale(1.03);box-shadow:0 18px 44px rgba(213,95,179,0.34),0 0 50px rgba(240,143,215,0.28)}
.btn:active{transform:translateY(-1px) scale(.99)}
@keyframes ri{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulseOrb{0%,100%{transform:scale(.92);opacity:.55}50%{transform:scale(1.16);opacity:.95}}

/* DIVIDER */
.sd{height:1px;width:100%;background:linear-gradient(90deg,transparent,var(--m),transparent);position:relative;overflow:visible}.sd::after{content:"";position:absolute;top:-4px;left:50%;transform:translateX(-50%);width:10px;height:10px;border-radius:50%;background:var(--m);box-shadow:0 0 16px var(--g),0 0 32px rgba(201,76,172,0.4);animation:dg 4s ease-in-out infinite}
main>.sd:first-of-type{display:none}
@keyframes dg{0%,100%{transform:translateX(-50%) scale(1)}50%{transform:translateX(-50%) scale(1.6)}}
.rv{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}.rv.in{opacity:1;transform:translateY(0)}.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}
section,.ww,.cw{scroll-margin-top:60px}
.sg{display:inline-block;background:linear-gradient(135deg,rgba(189,79,156,0.18),rgba(190,114,240,0.14));border:1px solid rgba(229,149,208,0.34);color:#ffe7f8;font-weight:700;font-size:12px;letter-spacing:.18em;line-height:1.2;padding:9px 20px 10px;border-radius:999px;margin-bottom:40px;transition:background .3s,color .3s,transform .3s,box-shadow .3s}.sg:hover{background:linear-gradient(135deg,#d55fb3,#f08fd7 70%,#d39bff);color:#fff;transform:translateY(-3px);box-shadow:0 8px 24px rgba(213,95,179,0.34)}

/* IMPACT */
.clients{min-height:100vh;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:80px 60px;background:linear-gradient(180deg,rgba(74,59,140,.72),rgba(106,86,177,.66));position:relative;overflow:hidden}
.clients::before{content:"";position:absolute;top:0;left:50%;width:80%;height:100%;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(201,76,172,0.12),transparent 70%);pointer-events:none}
.clt{font-size:clamp(34px,3.8vw,54px);font-weight:900;line-height:1.08;text-align:center;margin-bottom:12px;padding-bottom:.06em}
.cls{font-size:clamp(15px,1.2vw,19px);font-weight:400;color:rgba(255,255,255,0.65);text-align:center;margin-bottom:50px;max-width:680px;line-height:1.7;transition:transform .3s,text-shadow .3s}.cls:hover{transform:scale(1.02);text-shadow:0 0 15px rgba(201,76,172,0.25)}
.cg{width:100%;max-width:900px;margin:0 auto;position:relative;border-radius:20px;overflow:hidden}
.cg img{width:100%;height:auto;display:block;filter:brightness(1.4);transition:filter .4s}.cg:hover img{filter:brightness(1.6)}
.cg::after{content:"";position:absolute;inset:0;background:radial-gradient(circle 140px at var(--gx,50%) var(--gy,50%),rgba(201,76,172,0.4),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none;z-index:3}.cg:hover::after{opacity:1}

/* SERVICES */
.services{min-height:100vh;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:56px 80px 80px;position:relative;background:rgba(42,34,93,.64)}
.sr{position:relative;width:100%;max-width:900px;aspect-ratio:1000/640;margin:22px auto 0}
.ss{position:absolute;inset:0;width:100%;height:100%;z-index:1}
.ss .cf{fill:rgba(201,76,172,0.1);transition:fill .4s}.sr:hover .cf{fill:rgba(201,76,172,0.18)}
.ss .cn{stroke:var(--m);stroke-width:1;opacity:.6;fill:none;stroke-dasharray:400;stroke-dashoffset:400;transition:stroke-dashoffset 1.2s cubic-bezier(.2,.8,.2,1)}
.sr.in .cn{stroke-dashoffset:0}.sr.in .cn:nth-child(2){transition-delay:.1s}.sr.in .cn:nth-child(3){transition-delay:.2s}.sr.in .cn:nth-child(4){transition-delay:.3s}
.mw{position:absolute;left:30%;top:26%;width:40%;height:58%;z-index:2;display:flex;justify-content:center;align-items:flex-end;overflow:visible;pointer-events:none}
.mi{width:112%;height:auto;display:block;animation:fl 7s ease-in-out infinite;transform-origin:center bottom;filter:drop-shadow(0 10px 30px rgba(201,76,172,0.3));transition:filter .4s}
.sr:hover .mi{filter:drop-shadow(0 0 40px var(--g)) drop-shadow(0 0 80px rgba(201,76,172,0.4))}
.pl{position:absolute;background:linear-gradient(135deg,rgba(189,79,156,0.18),rgba(190,114,240,0.16));backdrop-filter:blur(8px);color:#ffe7f8;font-weight:700;font-size:clamp(14px,1.4vw,20px);letter-spacing:.1em;padding:14px 28px;border-radius:999px;border:1px solid rgba(229,149,208,0.28);z-index:3;transform:translate(-50%,-50%);transition:all .3s cubic-bezier(.2,.8,.2,1);white-space:nowrap}
.pl:hover{background:linear-gradient(135deg,#d55fb3,#f08fd7 70%,#d39bff);color:#fff;transform:translate(-50%,calc(-50% - 5px)) scale(1.08);box-shadow:0 14px 30px rgba(213,95,179,0.38),0 0 30px var(--g);border-color:transparent}
.pd{left:15%;top:31.25%}.pc{left:85%;top:31.25%}.pw{left:15%;top:68.75%}.po{left:85%;top:68.75%}

/* WHY */
.ww{min-height:100vh;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;justify-content:center;padding:80px;background:rgba(42,34,93,.64)}
.wy{display:grid;grid-template-columns:1.1fr 0.9fr;gap:50px;align-items:center;max-width:1200px;margin:0 auto;width:100%}
.wc{background:linear-gradient(135deg,rgba(201,76,172,0.12),rgba(74,61,143,0.2));border:1px solid rgba(201,76,172,0.2);border-radius:32px;padding:52px;position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.wc::before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 40%,rgba(255,255,255,0.08) 50%,transparent 60%);transform:translateX(-100%);transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}.wc:hover{transform:translateY(-8px);box-shadow:0 40px 80px rgba(0,0,0,0.3),0 0 50px rgba(201,76,172,0.2)}.wc:hover::before{transform:translateX(50%)}
.wc h3{font-size:clamp(42px,4.5vw,64px);font-weight:900;line-height:1.06;margin-bottom:24px;padding-bottom:.08em;background:linear-gradient(135deg,#fff,var(--pk));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.wc .kk{font-weight:700;font-size:clamp(18px,1.45vw,24px);color:var(--pk);margin-bottom:18px;line-height:1.55;transition:transform .3s,text-shadow .3s}.wc .kk:hover{transform:translateX(6px);text-shadow:0 0 15px rgba(201,76,172,0.25)}
.wc .bd{font-size:clamp(14px,1.1vw,16px);line-height:1.85;color:rgba(255,255,255,0.8)}.wc .bd p+p{margin-top:12px}
.wc .bd p{transition:transform .3s,text-shadow .3s}.wc .bd p:hover{transform:translateX(4px);text-shadow:0 0 12px rgba(201,76,172,0.2)}
.wv{display:flex;justify-content:center;position:relative;}.wv::before{content:"";position:absolute;width:60%;height:60%;border-radius:50%;background:radial-gradient(circle,var(--g),transparent 60%);filter:blur(60px);opacity:.4}
.gt{width:100%;max-width:260px;height:auto;animation:fl 8s ease-in-out infinite;filter:drop-shadow(0 20px 50px rgba(201,76,172,0.3));transition:transform .5s,filter .5s;position:relative;z-index:1}.gt:hover{transform:scale(1.06) rotate(2deg);filter:drop-shadow(0 25px 60px var(--g))}
@keyframes fl{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}

/* CONTACT */
.cw{min-height:100vh;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;justify-content:center;padding:0;background:rgba(42,34,93,.6);position:relative}
.ct{position:relative;width:100%;min-height:100vh;display:flex;align-items:stretch;padding:80px clamp(24px,6vw,100px)}
.gor{position:absolute;left:0;bottom:0;width:clamp(360px,48vw,720px);height:auto;z-index:1;pointer-events:none;}
.fc{background:linear-gradient(135deg,rgba(255,255,255,0.07),rgba(201,76,172,0.1));backdrop-filter:blur(16px);border:1px solid rgba(201,76,172,0.25);border-radius:32px;padding:44px 48px;max-width:520px;margin-left:auto;margin-right:0;width:100%;position:relative;z-index:2;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}.fc:hover{transform:translateY(-6px);box-shadow:0 40px 80px rgba(0,0,0,0.4),0 0 40px rgba(201,76,172,0.2)}
.fc h2{font-size:clamp(22px,2vw,30px);font-weight:800;text-align:center;margin-bottom:10px;line-height:1.28;padding-bottom:.08em;background:linear-gradient(135deg,#fff,var(--pk));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.fc .ci{font-size:clamp(13px,1vw,15px);color:rgba(255,255,255,0.6);text-align:center;margin-bottom:24px;line-height:1.6;transition:transform .3s,text-shadow .3s}.fc .ci:hover{transform:scale(1.02);text-shadow:0 0 12px rgba(201,76,172,0.2)}
.fc form{display:flex;flex-direction:column;gap:18px}
.fd{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:14px}
.fd label{font-size:13px;font-weight:500;color:rgba(255,255,255,0.6);transition:color .25s,transform .25s}.fd:focus-within label{color:var(--pk);transform:translateX(4px)}
.fd input{background:transparent;border:0;border-bottom:2px solid rgba(255,255,255,0.2);font-family:inherit;font-size:14px;color:#fff;padding:5px 2px 7px;outline:none;width:100%;transition:border-color .25s,box-shadow .25s,transform .25s}.fd input:hover{border-bottom-color:rgba(232,124,203,0.45);transform:translateY(-1px)}.fd input:focus{border-bottom-color:var(--m);box-shadow:0 4px 0 -2px var(--g)}
.fc .sub{margin-top:0;align-self:auto;padding:12px 32px;font-size:12px}
.fbr{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;align-items:center;margin-top:12px}
.fbr .btn,.fbr .game-btn{min-width:182px}
.game-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 32px;border-radius:999px;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,rgba(255,255,255,0.08),rgba(200,79,170,0.12));border:1px solid rgba(255,220,244,0.24);box-shadow:none;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,background .3s,border-color .3s}
.game-btn:hover{background:linear-gradient(135deg,#d55fb3 0%,#f08fd7 55%,#d39bff 100%);border-color:rgba(255,241,249,0.74);transform:translateY(-4px) scale(1.03);box-shadow:0 18px 44px rgba(213,95,179,0.34),0 0 50px rgba(240,143,215,0.28)}

/* THANKS */
.thanks{position:fixed;inset:0;background:rgba(30,23,70,0.88);backdrop-filter:blur(14px);display:flex;justify-content:center;align-items:center;z-index:1000;opacity:0;pointer-events:none;transition:opacity .4s;padding:24px}.thanks.show{opacity:1;pointer-events:auto}
.tc{background:linear-gradient(135deg,var(--d),var(--n));border:1px solid rgba(201,76,172,0.3);border-radius:32px;padding:56px 48px;max-width:520px;width:100%;text-align:center;box-shadow:0 50px 100px rgba(0,0,0,0.5),0 0 60px var(--g);transform:scale(.9) translateY(20px);transition:transform .5s cubic-bezier(.2,.8,.2,1)}.thanks.show .tc{transform:scale(1) translateY(0)}
.tk{width:84px;height:84px;border-radius:50%;background:linear-gradient(135deg,var(--m),var(--pk));display:flex;justify-content:center;align-items:center;margin:0 auto 22px;animation:pp .6s cubic-bezier(.34,1.56,.64,1) .1s both;box-shadow:0 12px 30px rgba(201,76,172,0.5)}.tk svg{width:42px;height:42px;stroke:#fff;stroke-width:3.5;fill:none;stroke-linecap:round;stroke-linejoin:round}.tk svg path{stroke-dasharray:40;stroke-dashoffset:40;animation:dr .5s cubic-bezier(.2,.8,.2,1) .35s forwards}
.tc h3{font-size:28px;font-weight:800;margin-bottom:12px;color:var(--pk)}.tc p{font-size:15px;line-height:1.7;color:rgba(255,255,255,0.7);margin-bottom:26px}
@keyframes pp{0%{transform:scale(0)}80%{transform:scale(1.15)}100%{transform:scale(1)}}@keyframes dr{to{stroke-dashoffset:0}}

/* FOOTER */
footer{scroll-snap-align:end;background:linear-gradient(135deg,#0D0A1F,var(--d));padding:40px 80px 24px;position:relative;overflow:hidden}
footer::before{content:"";position:absolute;top:-50%;left:-10%;width:60%;height:200%;background:linear-gradient(90deg,transparent,rgba(201,76,172,0.12),transparent);transform:rotate(15deg);filter:blur(40px);animation:fb 10s ease-in-out infinite}@keyframes fb{0%,100%{transform:rotate(15deg) translateX(0)}50%{transform:rotate(20deg) translateX(60px)}}
.fi{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;z-index:1;position:relative}
.fb{display:flex;align-items:center;gap:10px}.fb img{width:22px;height:auto;filter:brightness(0) invert(1);opacity:.9}.fb span{font-weight:700;font-size:13px;letter-spacing:.08em}
.fk{display:flex;gap:18px;justify-content:center;list-style:none}.fk a{color:rgba(255,255,255,0.7);text-decoration:none;font-size:10px;font-weight:700;letter-spacing:.12em;transition:color .25s}.fk a:hover{color:var(--pk)}
.fm{font-size:10px;opacity:.6;text-align:right;letter-spacing:.04em;line-height:1.8}
.fm a{color:inherit;text-decoration:none}
.factions{display:flex;gap:10px;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin-top:14px}
.fbtn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;text-decoration:none;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,rgba(189,79,156,0.22),rgba(190,114,240,0.18));border:1px solid rgba(255,255,255,0.14);box-shadow:0 10px 24px rgba(0,0,0,0.16),0 0 24px rgba(215,103,190,0.12);transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,background .28s,border-color .28s,color .28s}
.fbtn svg{width:13px;height:13px;fill:currentColor}
.fbtn:hover{transform:translateY(-3px);background:linear-gradient(135deg,#d55fb3 0%,#f08fd7 55%,#d39bff 100%);border-color:rgba(255,241,249,0.52);box-shadow:0 16px 34px rgba(213,95,179,0.26),0 0 34px rgba(240,143,215,0.18)}
.fbt{max-width:1200px;margin:18px auto 0;padding-top:14px;border-top:1px solid rgba(255,255,255,0.08);font-size:10px;opacity:.5;text-align:center;z-index:1;position:relative}

@media(max-width:1024px){.nav{padding:4px 12px 4px 6px;width:calc(100% - 24px);top:10px;max-width:none}.nk,.nr .lg,.nr .li,.nr .bl{display:none}.hb{display:block}}
@media(max-width:860px){
  html{scroll-snap-type:y proximity}
  .hero{padding:96px 24px 60px}.hi{grid-template-columns:1fr;gap:26px}.hero-side{padding:24px}.hero-list{grid-template-columns:1fr 1fr}.htt{font-size:clamp(52px,16vw,90px)}
  .clients{padding:60px 20px;min-height:auto}.services{padding:60px 24px;min-height:auto}
  .ww{padding:40px 24px;min-height:auto}.wy{grid-template-columns:1fr;gap:24px}.wc{padding:36px 24px}.gt{max-width:180px}
  .cw{min-height:auto}.ct{min-height:0;padding:60px 24px;flex-direction:column}
  .gor{position:relative;left:-20px;width:100%;max-width:380px;margin-top:20px;bottom:auto;order:2}
  .fc{margin:0 auto;padding:32px 22px;order:1}.fd{grid-template-columns:62px 1fr;gap:8px}.fbr{justify-content:stretch}.fbr .btn,.fbr .game-btn{width:100%}
  footer{padding:28px 24px 18px}.fi{grid-template-columns:1fr;text-align:center;gap:14px;justify-items:center}.fm{text-align:center}.factions{justify-content:center}
  .cur{display:none}body,.btn,a,button{cursor:auto}
}
@media(max-width:520px){
  .sr{aspect-ratio:auto;height:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:340px}
  .ss{display:none}.mw{position:relative;left:auto;top:auto;width:100%;height:auto;grid-column:1/-1;order:-1;justify-content:center;margin-bottom:8px}
  .mw::before{content:"";position:absolute;background:rgba(201,76,172,0.1);border-radius:50%;width:65%;aspect-ratio:1/1;left:50%;top:0;transform:translateX(-50%);z-index:-1}
  .mi{width:55%}.pl{position:static;transform:none;text-align:center;font-size:13px;padding:10px 20px}.pl:hover{transform:translateY(-3px) scale(1.03)}
  .fk{flex-wrap:wrap;gap:10px}
}

  .val-card:hover{transform:translateY(-8px);box-shadow:0 30px 60px rgba(0,0,0,0.3),0 0 40px rgba(201,76,172,0.2)}
  @media(max-width:860px){[style*="grid-template-columns:1fr 1fr 1fr"]{grid-template-columns:1fr !important}}

.shine-title{position:relative;display:inline-block;overflow:hidden;isolation:isolate;padding:.02em .08em .12em 0}
.shine-title::after{content:"";position:absolute;top:0;bottom:0;left:-32%;width:24%;background:linear-gradient(120deg,transparent,rgba(255,255,255,0.48),transparent);transform:skewX(-18deg);filter:blur(8px);opacity:.85;animation:titleShine 5.6s ease-in-out infinite;pointer-events:none;mix-blend-mode:screen}
@keyframes titleShine{0%,70%,100%{left:-45%}85%{left:125%}}

.interactive-card{position:relative;transform-style:preserve-3d;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s,background .35s}
.interactive-card::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,0.08),transparent 38%,rgba(232,124,203,0.12));opacity:0;transition:opacity .35s;pointer-events:none}
.interactive-card:hover{transform:translateY(-10px) scale(1.01);box-shadow:0 28px 70px rgba(0,0,0,0.34),0 0 45px rgba(201,76,172,0.22)}
.interactive-card:hover::before{opacity:1}

.impact{gap:24px}
#impact{display:none!important}
.impact-grid,.service-grid,.values-grid{width:min(1100px,100%);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:10px}
.service-grid{margin-top:-18px}
.impact-panel,.service-card,.val-card{background:linear-gradient(135deg,rgba(255,255,255,0.05),rgba(201,76,172,0.1));border:1px solid rgba(201,76,172,0.2);border-radius:28px;padding:28px;backdrop-filter:blur(10px)}
.impact-panel h3,.service-card h3,.val-card h3{font-size:clamp(20px,1.8vw,28px);line-height:1.16;margin-bottom:12px;padding-bottom:.05em}
.impact-panel p,.service-card p,.val-card p,.values-intro,.services-intro{font-size:clamp(14px,1.1vw,16px);line-height:1.8;color:rgba(255,255,255,0.78)}
.service-card-link{text-decoration:none;color:inherit;display:block}
.service-card-link article{height:100%}
.services-intro,.values-intro{max-width:720px;text-align:center;margin:0 auto 34px}
.value-icon{font-size:32px;margin-bottom:16px;color:var(--pk)}
.values-art{position:relative;width:min(780px,100%);height:220px;margin:0 auto 30px;border-radius:34px;overflow:hidden;border:1px solid rgba(201,76,172,0.18);background:
radial-gradient(circle at 20% 30%,rgba(232,124,203,0.28),transparent 28%),
radial-gradient(circle at 72% 32%,rgba(167,130,255,0.22),transparent 30%),
radial-gradient(circle at 48% 72%,rgba(255,255,255,0.08),transparent 24%),
linear-gradient(135deg,rgba(255,255,255,0.04),rgba(201,76,172,0.08),rgba(74,61,143,0.18));
box-shadow:0 24px 70px rgba(0,0,0,0.28),0 0 40px rgba(201,76,172,0.18)}
.values-art::before,.values-art::after{content:"";position:absolute;inset:auto}
.values-art::before{width:220px;height:220px;right:-40px;top:-70px;border-radius:50%;border:1px solid rgba(255,255,255,0.14);opacity:.8}
.values-art::after{left:70px;bottom:46px;width:62%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent)}
.values-art .orb{position:absolute;border-radius:50%;filter:blur(.3px)}
.values-art .orb.a{width:86px;height:86px;left:12%;top:28%;background:linear-gradient(135deg,rgba(255,255,255,0.4),rgba(232,124,203,0.85))}
.values-art .orb.b{width:22px;height:22px;left:42%;top:48%;background:rgba(255,255,255,0.85);box-shadow:0 0 24px rgba(255,255,255,0.35)}
.values-art .orb.c{width:130px;height:130px;right:18%;bottom:22%;background:linear-gradient(135deg,rgba(167,130,255,0.8),rgba(201,76,172,0.26))}
.values-art .line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(232,124,203,0.75),transparent);opacity:.9}
.values-art .line.a{top:56px;left:18%;width:30%}
.values-art .line.b{bottom:62px;right:12%;width:24%}

.sr{margin-bottom:30px}
.pl{cursor:none}
.service-card{min-height:220px}
.cg{box-shadow:0 20px 80px rgba(0,0,0,0.26),0 0 50px rgba(201,76,172,0.14)}

.wc,.fc,.contact-copy{box-shadow:0 25px 65px rgba(0,0,0,0.28),0 0 35px rgba(201,76,172,0.14)}
.contact-copy{width:min(430px,100%);max-width:430px;height:430px;aspect-ratio:1/1;min-height:430px;margin-top:0;padding:28px;border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,0.06),rgba(201,76,172,0.12));border:1px solid rgba(201,76,172,0.2);backdrop-filter:blur(16px);position:relative;z-index:2;display:flex;flex-direction:column;justify-content:flex-start;align-self:flex-start;overflow:visible}
.contact-copy h3{font-size:clamp(24px,2.5vw,36px);line-height:1.1;margin-bottom:14px;padding-bottom:.06em}
.contact-copy p{font-size:clamp(16px,1.02vw,18px);line-height:1.65;color:rgba(255,255,255,0.78)}
.contact-eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--pk);margin-bottom:14px;display:inline-block;overflow:visible;text-shadow:0 0 12px rgba(232,124,203,0.18)}
.ct{justify-content:space-between;align-items:stretch;gap:32px;padding-top:132px}
.fc{max-width:560px;box-shadow:0 30px 90px rgba(0,0,0,0.38),0 0 52px rgba(201,76,172,0.26),0 0 120px rgba(232,124,203,0.12)}
.fc::after{content:"";position:absolute;inset:-18px;border-radius:42px;background:radial-gradient(circle at center,rgba(232,124,203,0.22),transparent 62%);filter:blur(24px);z-index:-1;pointer-events:none}
.fc h2{text-shadow:0 0 18px rgba(232,124,203,0.22),0 0 36px rgba(201,76,172,0.14)}
.fd-full{grid-template-columns:72px 1fr;align-items:start}
.fd-full textarea{min-height:140px;resize:vertical;background:transparent;border:0;border-bottom:2px solid rgba(255,255,255,0.2);font-family:inherit;font-size:14px;color:#fff;padding:7px 2px 10px;outline:none;width:100%;transition:border-color .25s,box-shadow .25s,transform .25s}
.fd-full textarea:hover{border-bottom-color:rgba(232,124,203,0.45);transform:translateY(-1px)}
.fd-full textarea:focus{border-bottom-color:var(--m);box-shadow:0 4px 0 -2px var(--g)}
.fd-stack{grid-template-columns:72px 1fr;align-items:start}
.services-select{display:flex;flex-wrap:wrap;gap:10px;padding-top:2px}
.service-choice{position:relative;display:inline-flex}
.service-choice input{position:absolute;opacity:0;pointer-events:none}
.service-choice span{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;border:1px solid rgba(201,76,172,0.28);background:rgba(255,255,255,0.04);color:rgba(255,255,255,0.76);font-size:12px;font-weight:700;letter-spacing:.08em;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s,color .25s}
.service-choice span:hover{transform:translateY(-2px);border-color:rgba(232,124,203,0.5);box-shadow:0 12px 24px rgba(201,76,172,0.18)}
.service-choice input:checked+span{background:linear-gradient(135deg,rgba(189,79,156,0.9),rgba(215,103,190,0.92),rgba(190,114,240,0.88));border-color:transparent;color:#fff;box-shadow:0 12px 28px rgba(189,79,156,0.28),0 0 24px rgba(215,103,190,0.16)}
.quiz{margin-top:10px;padding:18px 18px 16px;border-radius:22px;border:1px solid rgba(201,76,172,0.2);background:linear-gradient(135deg,rgba(255,255,255,0.04),rgba(201,76,172,0.1))}
.quiz h4{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--pk);margin-bottom:8px}
.quiz p{font-size:13px;line-height:1.7;color:rgba(255,255,255,0.72);margin-bottom:14px}
.quiz-options{display:flex;flex-wrap:wrap;gap:10px}
.qo{appearance:none;border:1px solid rgba(255,255,255,0.16);background:rgba(255,255,255,0.04);color:#fff;border-radius:999px;padding:10px 16px;font:inherit;font-size:12px;font-weight:700;letter-spacing:.08em;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s}
.qo:hover,.qo.active{transform:translateY(-2px);border-color:rgba(240,143,215,0.62);background:linear-gradient(135deg,rgba(189,79,156,0.86),rgba(215,103,190,0.9),rgba(190,114,240,0.84));box-shadow:0 12px 24px rgba(189,79,156,0.24),0 0 30px rgba(240,143,215,0.12)}
.qr{margin-top:12px;min-height:20px;font-size:12px;letter-spacing:.04em;color:rgba(255,255,255,0.66)}
.qr.success{color:#86ffb3;text-shadow:0 0 18px rgba(134,255,179,0.42)}

.hero::before,.services::before,.ww::before,.cw::before{content:"";position:absolute;inset:auto auto 10% -8%;width:38vw;height:38vw;border-radius:50%;background:radial-gradient(circle,rgba(201,76,172,0.22),transparent 68%);filter:blur(30px);pointer-events:none}
.hero::after,.services::after,.ww::after,.cw::after{content:"";position:absolute;top:8%;right:-8%;width:28vw;height:28vw;border-radius:50%;background:radial-gradient(circle,rgba(138,122,255,0.18),transparent 70%);filter:blur(34px);pointer-events:none}

@media(max-width:860px){
  .impact-grid,.service-grid,.values-grid{grid-template-columns:1fr}
  .values-art{height:170px;margin-bottom:22px}
  .contact-copy{max-width:none;width:100%;order:1;margin-top:0}
  .fc{order:2}
  .gor{order:3}
  .fd-full{grid-template-columns:62px 1fr}
  .fd-stack{grid-template-columns:62px 1fr}
}
