:root{--cream:#f5f2ec;--cream-deep:#ede8df;--white:#fff;--navy:#2a3269;--navy-soft:#6a6f94;--purple:#a47cf3;--purple-soft:#c4aef8;--blue:#8cb8f5;--blue-soft:#b9d4f8;--yellow:#f7c55c;--yellow-soft:#fbdb9b;--cyan:#2fb5cc;--violet:#9b4de0;--r:28px;--maxw:1240px;--hh:120px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:clip}body{background:var(--cream);color:var(--navy);font-family:Manrope,system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.65;overflow-x:clip}#root{overflow:clip}.page{padding-top:var(--hh)}.scroll-sentinel{width:1px;height:var(--hh);pointer-events:none;position:absolute;top:0;left:0}.wrap{max-width:var(--maxw);z-index:2;margin:0 auto;padding:0 28px;position:relative}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.blob{pointer-events:none;z-index:0;aspect-ratio:1;will-change:transform;animation:26s ease-in-out infinite drift;position:absolute}.blob svg{width:100%;height:auto;display:block}@keyframes drift{0%,to{transform:rotate(0)scale(1)}33%{transform:rotate(7deg)scale(1.05)}66%{transform:rotate(-5deg)scale(.97)}}@media (prefers-reduced-motion:reduce){.blob{animation:none}}header{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f5f2ecb8;border-bottom:1px solid #2a326912;transition:background .35s,border-color .35s,-webkit-backdrop-filter .35s,backdrop-filter .35s;position:fixed;top:0;left:0;right:0}header.is-transparent{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom-color:#0000}header.is-transparent:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#120e2c80,#120e2c00);position:absolute;inset:0}header.is-transparent .nav__links a{color:#ffffffd1}header.is-transparent .nav__links a:hover,header.is-transparent .nav__links a.is-active{color:#fff}header.is-transparent .nav__links a:after,header.is-transparent .burger span{background:#fff}header.is-transparent .burger:hover{background:#ffffff24}.nav{align-items:center;gap:32px;max-width:none;margin:0;padding:14px clamp(20px,3.2vw,52px);display:flex}.nav__logo img{width:200px;height:90px;transition:transform .3s cubic-bezier(.34,1.4,.64,1)}.nav__logo:hover img{transform:scale(1.05)}.nav__menu{align-items:center;gap:32px;margin-left:auto;display:flex}.nav__links{gap:30px;font-size:15px;font-weight:600;display:flex}.nav__links a{color:var(--navy-soft);padding:4px 0;transition:color .2s;position:relative}.nav__links a:after{content:"";background:var(--purple);border-radius:2px;width:0;height:2.5px;transition:width .28s cubic-bezier(.4,0,.2,1);position:absolute;bottom:0;left:0}.nav__links a:hover{color:var(--navy)}.nav__links a:hover:after,.nav__links a.is-active:after{width:100%}.nav__links a.is-active{color:var(--navy)}.btn{letter-spacing:.01em;cursor:pointer;border:0;border-radius:100px;justify-content:center;align-items:center;gap:9px;padding:13px 26px;font-size:15px;font-weight:700;transition:transform .22s cubic-bezier(.34,1.4,.64,1),box-shadow .22s,background .22s;display:inline-flex}.btn--primary{background:var(--purple);color:#fff;box-shadow:0 6px 18px -6px #a47cf3bf}.btn--primary:hover{background:#9568f0;transform:translateY(-2px);box-shadow:0 12px 26px -8px #a47cf3d9}.btn--ghost{color:var(--navy);background:0 0;border:2px solid #2a326929}.btn--ghost:hover{border-color:var(--purple);color:var(--purple);transform:translateY(-2px)}.nav__cta{flex-shrink:0}.burger{cursor:pointer;background:0 0;border:0;border-radius:12px;flex-shrink:0;margin-left:auto;padding:9px;display:none}.burger:hover{background:#2a32690f}.burger span{background:var(--navy);border-radius:2px;width:26px;height:2.5px;margin:6px 0;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .2s;display:block}.burger[aria-expanded=true] span:first-child{transform:translateY(8.5px)rotate(45deg)}.burger[aria-expanded=true] span:nth-child(2){opacity:0}.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-8.5px)rotate(-45deg)}.hero{padding:0;position:relative;overflow:hidden}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--violet);background:#a47cf321;border-radius:100px;align-items:center;gap:9px;margin-bottom:26px;padding:8px 18px;font-size:12.5px;font-weight:700;display:inline-flex}.eyebrow i{background:var(--violet);border-radius:50%;width:7px;height:7px;display:block}.hero__reel{--reel-w:100vw;--reel-r:0px;--reel-h:100vh;width:var(--reel-w);max-width:none;margin:0 calc(50% - var(--reel-w) / 2);border-radius:var(--reel-r);height:var(--reel-h);background:#0d0a09;position:relative;overflow:hidden}.hero__reel:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 90px 30px #f5f2ec24}.hero__reel video{object-fit:cover;visibility:hidden;width:100%;height:100%;display:block;position:absolute;inset:0}.hero__reel video.is-active{visibility:visible}.reel__badge{z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.04em;background:#ffffffe6;border-radius:100px;align-items:center;gap:9px;padding:9px 17px;font-size:13px;font-weight:700;display:flex;position:absolute;bottom:clamp(20px,3.5vw,40px);left:clamp(20px,4vw,56px)}.reel__badge i{background:#e0453c;border-radius:50%;width:8px;height:8px;animation:1.8s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}section{padding:100px 0;position:relative}.sec-head{max-width:660px;margin-bottom:56px}.sec-head.center{text-align:center;margin-left:auto;margin-right:auto}h2{letter-spacing:-.025em;margin-bottom:18px;font-size:clamp(32px,4.4vw,52px);font-weight:800;line-height:1.1}.sec-head p{color:var(--navy-soft);font-size:18px}.intro__text{text-align:center;max-width:760px;margin:0 auto}.intro__text p{color:var(--navy-soft);margin-bottom:22px;font-size:18px}.intro__text p:last-child{margin-bottom:0}.intro__closing{background:linear-gradient(100deg,var(--cyan),var(--violet));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-top:34px;font-size:19px;font-weight:700}.about__blob{opacity:.55;width:clamp(230px,37vw,580px);animation-duration:26s;animation-delay:-11s;bottom:-170px;left:min(-140px,-20vw)}.about{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:70px;display:grid}.about__text p{color:var(--navy-soft);margin-bottom:18px}.about__text p strong{color:var(--navy);font-weight:700}.about__quote{background:var(--white);border-left:4px solid var(--yellow);border-radius:20px;margin-top:30px;padding:22px 26px;font-size:17px;font-weight:600;line-height:1.55;box-shadow:0 12px 30px -18px #2a32694d}.about__quote span{color:var(--violet);display:block}.about__grid{justify-self:end;gap:16px;width:min(550px,100%);min-width:0;display:grid}.about__grid figure{border-radius:22px;overflow:hidden;box-shadow:0 20px 44px -26px #2a326980}.about__grid img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.7,.3,1)}.about__grid figure:hover img{transform:scale(1.06)}.stats{flex-wrap:wrap;gap:38px;margin-top:34px;display:flex}.stat b{letter-spacing:-.03em;background:linear-gradient(100deg,var(--cyan),var(--violet));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:38px;font-weight:800;line-height:1;display:block}.stat span{color:var(--navy-soft);font-size:13.5px;font-weight:600}.projects__blob{opacity:.6;width:clamp(215px,35vw,540px);animation-duration:25s;animation-delay:-4s;top:min(-100px,-13vw);right:min(-110px,-15vw)}.grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.card{background:var(--white);aspect-ratio:3/4;border-radius:22px;transition:transform .34s cubic-bezier(.34,1.2,.64,1),box-shadow .34s;position:relative;overflow:hidden;box-shadow:0 16px 40px -26px #2a32698c}.card:hover{transform:translateY(-7px);box-shadow:0 30px 56px -26px #2a326999}.card img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.3,1)}.card:hover img{transform:scale(1.08)}.card__meta{color:#fff;opacity:0;background:linear-gradient(#0000,#141032db);padding:44px 20px 18px;transition:all .34s;position:absolute;inset:auto 0 0;transform:translateY(8px)}.card:hover .card__meta{opacity:1;transform:none}.card__meta b{font-size:17px;font-weight:700;display:block}.card__meta span{opacity:.75;font-size:13px}.services__blob{opacity:.6;width:clamp(180px,29vw,440px);animation-delay:-14s;top:40px;left:min(-115px,-16vw)}.services__blob-2{opacity:.5;width:clamp(210px,34vw,520px);animation-duration:29s;animation-delay:-6s;bottom:min(-120px,-15vw);right:min(-110px,-15vw)}.contact__blob-3{opacity:.5;width:clamp(190px,31vw,470px);animation-duration:24s;animation-delay:-21s;top:min(-90px,-11vw);left:min(-105px,-14vw)}.svc{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.svc__item{background:var(--white);border:1px solid #2a32690d;border-radius:24px;padding:34px 30px 36px;transition:transform .3s cubic-bezier(.34,1.2,.64,1),box-shadow .3s;box-shadow:0 16px 40px -30px #2a326980}.svc__item:hover{transform:translateY(-6px);box-shadow:0 26px 50px -28px #2a32698c}.svc__ico{border-radius:17px;place-items:center;width:56px;height:56px;margin-bottom:22px;display:grid}.svc__ico svg{width:27px;height:27px}.svc__item:nth-child(6n+1) .svc__ico{color:var(--violet);background:#a47cf329}.svc__item:nth-child(6n+2) .svc__ico{color:#3e7fd1;background:#8cb8f533}.svc__item:nth-child(6n+3) .svc__ico{color:#c08a16;background:#f7c55c3d}.svc__item:nth-child(6n+4) .svc__ico{color:var(--cyan);background:#2fb5cc29}.svc__item:nth-child(6n+5) .svc__ico{color:var(--violet);background:#9b4de024}.svc__item:nth-child(6n) .svc__ico{color:#3e7fd1;background:#8cb8f533}.svc__item h3{letter-spacing:-.01em;margin-bottom:10px;font-size:20px;font-weight:800}.svc__item p{color:var(--navy-soft);font-size:15.5px;line-height:1.6}.svc__outro{text-align:center;max-width:720px;color:var(--navy-soft);margin:56px auto 0;font-size:17px}.svc__outro a{color:var(--violet);border-bottom:1.5px solid #9b4de04d;font-weight:700;transition:border-color .22s,color .22s}.svc__outro a:hover{color:var(--cyan);border-bottom-color:var(--cyan)}#about{z-index:1}#projects{z-index:0}.contact__blob-1{opacity:.75;width:clamp(250px,42vw,660px);animation-duration:28s;animation-delay:-9s;bottom:min(-130px,-16vw);right:min(-120px,-16vw)}.contact__blob-2{opacity:.55;width:clamp(185px,28vw,420px);animation-delay:-18s;bottom:-130px;left:min(-95px,-13vw)}.contact__box{background:var(--white);border-radius:34px;grid-template-columns:1fr 1.15fr;gap:0;display:grid;overflow:hidden;box-shadow:0 40px 90px -50px #2a32698c}.contact__aside{color:#fff;background:linear-gradient(155deg,#3a3f7a 0%,#5b4a9e 55%,#8a5bc4 100%);flex-direction:column;padding:48px 44px;display:flex}.contact__aside h3{letter-spacing:-.02em;margin-bottom:14px;font-size:30px;font-weight:800;line-height:1.15}.contact__aside>p{opacity:.8;margin-bottom:34px;font-size:16px}.cinfo{align-items:flex-start;gap:14px;margin-bottom:20px;display:flex}.cinfo__ico{background:#ffffff24;border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.cinfo__ico svg{width:20px;height:20px}.cinfo b{letter-spacing:.12em;text-transform:uppercase;opacity:.6;font-size:12px;font-weight:700;display:block}.cinfo a,.cinfo span{font-size:16px;font-weight:600}.cinfo a:hover{text-decoration:underline}.socials{gap:10px;margin-top:auto;padding-top:30px;display:flex}.socials a{background:#ffffff24;border-radius:13px;place-items:center;width:42px;height:42px;transition:all .25s;display:grid}.socials a:hover{background:#fff;transform:translateY(-3px)}.socials img{filter:brightness(0)invert();width:19px;height:19px;transition:all .25s}.socials a:hover img{filter:none}form{gap:18px;padding:48px 44px;display:grid}.field{gap:7px;display:grid}.row{grid-template-columns:1fr 1fr;gap:18px;display:grid}label{letter-spacing:.03em;color:var(--navy-soft);font-size:13px;font-weight:700}input,textarea{color:var(--navy);background:var(--cream);border:2px solid #2a32691a;border-radius:14px;outline:none;width:100%;padding:13px 16px;font-family:inherit;font-size:16px;transition:all .22s}input:focus,textarea:focus{border-color:var(--purple);background:#fff;box-shadow:0 0 0 4px #a47cf326}textarea{resize:vertical;min-height:118px}footer{background:var(--cream);border-top:1px solid #2a326917;padding:52px 0}.foot{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.foot img{width:auto;height:clamp(70px,8vw,104px)}.foot p{color:var(--navy-soft);margin-left:auto;font-size:14px}.project{padding-top:56px}.backlink{letter-spacing:.02em;color:var(--navy-soft);align-items:center;gap:7px;margin-bottom:30px;font-size:14px;font-weight:700;transition:color .22s,gap .22s;display:inline-flex}.backlink svg{width:17px;height:17px}.backlink:hover{color:var(--violet);gap:11px}.project__layout{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);align-items:start;gap:clamp(32px,4vw,60px);display:grid}.project__media{background:var(--cream-deep);border-radius:26px;overflow:hidden;box-shadow:0 34px 70px -44px #2a326999}.project__media img{width:100%;height:auto;display:block}.project__text p{color:var(--navy-soft);margin-bottom:20px;font-size:17.5px}.project__video{aspect-ratio:16/9;background:#0d0a09;border-radius:20px;margin-top:28px;overflow:hidden;box-shadow:0 24px 54px -32px #2a3269a6}.project__video iframe{border:0;width:100%;height:100%;display:block}.project__facts{background:var(--white);border:1px solid #2a32690d;border-radius:24px;margin-top:30px;padding:26px 30px;box-shadow:0 18px 44px -30px #2a326980}.fact{border-bottom:1px solid #2a326914;padding:15px 0}.fact:first-child{padding-top:0}.fact:last-child{border-bottom:0;padding-bottom:0}.fact b{letter-spacing:.14em;text-transform:uppercase;color:var(--navy-soft);margin-bottom:4px;font-size:11.5px;font-weight:700;display:block}.fact span{font-size:16px;font-weight:600}.pager__btn{z-index:40;background:var(--white);width:54px;height:54px;color:var(--navy);border-radius:50%;place-items:center;transition:transform .26s cubic-bezier(.34,1.4,.64,1),background .26s,color .26s;display:grid;position:fixed;top:50%;transform:translateY(-50%);box-shadow:0 16px 36px -18px #2a326999}.pager__btn svg{width:23px;height:23px}.pager__btn--prev{left:clamp(14px,2vw,30px)}.pager__btn--next{right:clamp(14px,2vw,30px)}.pager__btn:hover{background:var(--purple);color:#fff;transform:translateY(-50%)scale(1.09)}.pager{border-top:1px solid #2a32691a;justify-content:space-between;gap:24px;margin-top:80px;padding-top:32px;display:flex}.pager__link{color:var(--navy);align-items:center;gap:14px;transition:color .22s;display:flex}.pager__link svg{width:22px;height:22px;color:var(--navy-soft);flex-shrink:0;transition:color .22s}.pager__link span{flex-direction:column;font-size:17px;font-weight:700;line-height:1.35;display:flex}.pager__link b{letter-spacing:.14em;text-transform:uppercase;color:var(--navy-soft);font-size:11.5px;font-weight:700}.pager__link--next{text-align:right}.pager__link:hover,.pager__link:hover svg{color:var(--violet)}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1);transform:translateY(26px)}.reveal.in{opacity:1;transform:none}@media (width<=980px){.about{grid-template-columns:minmax(0,1fr);gap:44px}.about__grid{justify-self:start}.grid,.svc{grid-template-columns:repeat(2,1fr)}.contact__box{grid-template-columns:1fr}.project__layout{grid-template-columns:1fr;gap:34px}.burger{display:block}.nav__menu{top:var(--hh);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;pointer-events:none;background:#f5f2ecf7;border-bottom:1px solid #2a326917;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:10px 28px 26px;transition:opacity .26s,transform .3s cubic-bezier(.2,.7,.3,1);position:fixed;left:0;right:0;transform:translateY(-14px);box-shadow:0 24px 44px -30px #2a326980}header.is-open .nav__menu{opacity:1;pointer-events:auto;transform:none}.nav__links{flex-direction:column;gap:0;font-size:19px}.nav__links a{color:var(--navy);border-bottom:1px solid #2a326914;padding:16px 2px}.nav__links a:after{display:none}.nav__links a.is-active{color:var(--violet)}.nav__cta{align-self:flex-start;margin-top:20px;padding:14px 30px;font-size:16px}}@media (width<=600px){section{padding:70px 0}.hero__reel{--reel-h:78vh}:root{--hh:78px}.nav{padding:11px 20px}.nav__logo img{width:auto;height:54px}.grid,.svc,.row{grid-template-columns:1fr}.contact__aside,form{padding:34px 26px}.pager__btn{display:none}.pager{flex-direction:column;gap:26px}.pager__link--next{text-align:left;flex-direction:row-reverse;justify-content:flex-end}.wrap{padding:0 20px}}
