:root{--ink:#09172b;--ink-soft:#44526a;--muted:#687794;--line:#e4e8f0;--tint:#f8fafc;--paper:#fff;--dark:#07172a;--red:#e11d2e;--red-deep:#c80d20;--red-light:#ff7d88;--red-tint:#fde5e7;--r-sm:10px;--r-md:16px;--r-pill:999px;--sh-card:0 1px 2px #1212120d, 0 8px 20px #1212120d;--sh-hover:0 2px 4px #1212120f, 0 16px 34px #1212121a;--sh-dark:0 18px 40px #12121238;--gutter:22px;--container:1280px;--header-h:76px;--font:"Archivo", "Segoe UI", system-ui, sans-serif;--font-display:var(--font);--ease:cubic-bezier(.2, .7, .3, 1);--t:.22s var(--ease)}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}body{font-family:var(--font);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;font-size:1rem;line-height:1.65;overflow-x:hidden}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}ul,ol{padding:0;list-style:none}b,strong{font-weight:700}:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:4px}::selection{background:var(--ink);color:var(--paper)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);text-wrap:balance;font-weight:800;line-height:1.1}h1{font-size:clamp(2.15rem,5.2vw,3.5rem);line-height:1.06}h2{font-size:clamp(1.6rem,3.4vw,2.35rem)}h3{letter-spacing:-.01em;font-size:clamp(1.08rem,1.7vw,1.28rem);font-weight:700}h4{font-size:1rem;font-weight:700}p{text-wrap:pretty}.label{color:var(--muted);font-size:.8rem;font-weight:600}.note{color:var(--muted);font-size:.84rem}.lead{color:var(--ink-soft);max-width:62ch;font-size:clamp(1.02rem,1.3vw,1.12rem);line-height:1.7}.num{font-variant-numeric:tabular-nums}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.sec--tight{padding-block:clamp(34px,4vw,54px)}.sec--tint{background:var(--tint)}.sec--dark{background:var(--dark);color:#ffffffc7}.sec--dark h2,.sec--dark h3,.sec--dark h4{color:var(--paper)}.sec__head{text-align:center;margin-inline:auto;gap:12px;max-width:660px;margin-bottom:clamp(28px,3.6vw,48px);display:grid}.sec__head--left{text-align:left;max-width:720px;margin-inline:0}.sec__head p{color:var(--ink-soft)}.sec--dark .sec__head p{color:#ffffffb3}.grid{gap:clamp(16px,2vw,24px);display:grid}.grid--2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid--duo{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid--4{grid-template-columns:repeat(auto-fit,minmax(232px,1fr))}.stack>*+*{margin-top:16px}.cluster{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-card);height:100%;transition:transform var(--t), box-shadow var(--t), border-color var(--t);flex-direction:column;display:flex;position:relative;overflow:hidden}.card:hover{box-shadow:var(--sh-hover);border-color:#dcdcd7;transform:translateY(-8px)}.card:hover .shot img{transform:scale(1.06)}.fade{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(40px)scale(.98)}.fade.is-visible{opacity:1;transform:translateY(0)scale(1)}@media (prefers-reduced-motion:reduce){.fade{opacity:1;transform:none}}.card__body{flex-direction:column;flex:1;gap:12px;padding:clamp(18px,2.2vw,26px);display:flex}.card__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:14px;display:flex}.btn{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--paper);color:var(--ink);transition:transform var(--t), background-color var(--t), color var(--t), border-color var(--t), box-shadow var(--t);justify-content:center;align-items:center;gap:9px;padding:.78rem 1.3rem;font-size:.92rem;font-weight:600;line-height:1.1;display:inline-flex}.btn:hover{border-color:var(--ink);transform:translateY(-2px)}.btn--primary{background:var(--red-deep);border-color:var(--red-deep);color:#fff;box-shadow:0 10px 22px #cf10203d}.btn--accent{color:#fff;background:#e11d2e;border-color:#e11d2e;box-shadow:0 12px 25px #d30d1f4d}.btn--accent:hover{color:#fff;background:#ff4a5b;border-color:#ff4a5b}.btn--primary:hover{color:#fff;background:#b40d1c;border-color:#b40d1c}.btn--dark{color:var(--paper);background:#07172a;border-color:#07172a}.btn--dark:hover{background:#122b49;border-color:#122b49}.btn--light{color:#fff;background:#ffffff1a;border-color:#ffffff47}.btn--light:hover{color:#fff;background:#ffffff2e;border-color:#ffffff80}.btn--lg{padding:.95rem 1.6rem;font-size:.98rem}.btn--block{width:100%}.btn[disabled]{opacity:.55;pointer-events:none}.link{color:var(--red-deep);transition:gap var(--t), color var(--t);align-items:center;gap:7px;font-size:.9rem;font-weight:600;display:inline-flex}.link:hover{color:var(--ink);gap:12px}.badge{border-radius:var(--r-pill);background:var(--red-tint);width:48px;height:48px;color:var(--red-deep);flex:none;place-items:center;display:inline-grid}.badge--dark{color:#fff;background:#ffffff1a}.chip{border-radius:var(--r-pill);border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);align-self:flex-start;align-items:center;gap:7px;padding:5px 11px;font-size:.78rem;font-weight:600;display:inline-flex}.chip--red{background:var(--red-tint);color:var(--red-deep);border-color:#f8ccd1}.chip--dark{background:var(--dark);border-color:var(--dark);color:var(--paper)}.tick-list{gap:12px;display:grid}.tick-list li{color:var(--ink-soft);grid-template-columns:20px 1fr;align-items:start;gap:12px;font-size:.96rem;display:grid}.tick-list svg{color:var(--red);margin-top:4px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.site-header{z-index:90;color:#fff;position:absolute;inset:0 0 auto}.site-header .container{max-width:1444px}.header-inner{min-height:var(--header-h);justify-content:space-between;align-items:center;gap:26px;display:flex}.brand{flex:none;align-items:center;gap:10px;display:inline-flex}.brand__mark{flex:none;width:37px;height:37px}.brand__text{flex-direction:column;gap:3px;display:flex}.brand__name{color:var(--ink);letter-spacing:-.025em;font-size:1.16rem;font-weight:800;line-height:1}.brand__name span{color:var(--red)}.brand__sub{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.59rem;font-weight:700;line-height:1.15}.site-header .brand__sub{color:#ffffff9e}.nav__list{align-items:center;gap:clamp(18px,2.6vw,38px);display:flex}.nav__link{color:#ffffffe0;transition:color var(--t);padding-block:8px;font-size:.82rem;font-weight:700;display:inline-block;position:relative}.nav__link:after{content:"";transform-origin:0;border-radius:var(--r-pill);background:var(--red);height:2px;transition:transform var(--t);position:absolute;bottom:2px;left:0;right:0;transform:scaleX(0)}.nav__link:hover,.nav__link.is-active{color:#fff}.nav__link:hover:after,.nav__link.is-active:after{transform:scaleX(1)}.header__actions{align-items:center;gap:12px;display:flex}.header__cta{border-radius:var(--r-pill);color:#fff;transition:transform var(--t), background var(--t), box-shadow var(--t);background:#ee3142;align-items:center;gap:8px;padding:.82rem 1.16rem;font-size:.76rem;font-weight:800;display:inline-flex;box-shadow:0 10px 25px #d30d1f47}.header__cta:hover{background:#ff5060;transform:translateY(-2px);box-shadow:0 14px 29px #d30d1f61}.nav-toggle{color:#fff;width:42px;height:42px;transition:border-color var(--t), background var(--t);border:1px solid #ffffff38;border-radius:50%;place-items:center;display:none}.nav-toggle:hover{border-color:var(--red);background:#e11d2e4d}.drawer{z-index:120;pointer-events:none;position:fixed;inset:0}.drawer.is-open{pointer-events:auto}.drawer__overlay{opacity:0;transition:opacity var(--t);background:#010b15ad;position:absolute;inset:0}.drawer.is-open .drawer__overlay{opacity:1}.drawer__panel{width:min(355px,90vw);transition:transform .3s var(--ease);background:#fff;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(102%);box-shadow:-24px 0 70px #0000003d}.drawer.is-open .drawer__panel{transform:none}.drawer__head{border-bottom:1px solid #e6e9ef;justify-content:space-between;align-items:center;gap:15px;padding:18px 20px;display:flex}.drawer__close{color:#0a1b31;border:1px solid #dfe4ec;border-radius:50%;place-items:center;width:37px;height:37px;display:grid}.drawer__nav{gap:4px;padding:16px 14px;display:grid}.drawer__link{color:#192940;border-radius:9px;justify-content:space-between;align-items:center;gap:16px;padding:13px 14px;font-size:.98rem;font-weight:700;display:flex}.drawer__link:hover,.drawer__link.is-active{color:#be0d20;background:#fde5e7}.drawer__foot{border-top:1px solid #e6e9ef;gap:12px;margin-top:auto;padding:18px 20px 27px;display:grid}.drawer__contact{color:#667491;align-items:center;gap:8px;font-size:.84rem;display:flex}.drawer__contact svg{color:#d20d20}.preloader{z-index:9999;background:#061726;place-content:center;justify-items:center;gap:17px;transition:opacity .7s,visibility .7s;display:grid;position:fixed;inset:0}.preloader.is-hidden{opacity:0;visibility:hidden}.preloader__mark{opacity:0;animation:.75s forwards preMark;transform:scale(.84)}.preloader__text{color:#ffffffd1;letter-spacing:.08em;text-transform:uppercase;opacity:0;font-size:.86rem;font-weight:700;animation:.6s .2s forwards preText}.preloader__bar{border-radius:var(--r-pill);background:#ffffff2e;width:176px;height:3px;overflow:hidden}.preloader__bar span{border-radius:inherit;background:var(--red);width:0;height:100%;animation:.94s ease-out forwards preBar;display:block}@keyframes preMark{to{opacity:1;transform:none}}@keyframes preText{to{opacity:1}}@keyframes preBar{to{width:100%}}.site-footer{color:#ffffffb8;background:radial-gradient(circle at 100% 100%,#e11d2e38,#0000 27%),#051727;overflow:hidden}.footer__top{grid-template-columns:1.55fr .78fr 1fr;gap:clamp(28px,5vw,76px);padding-block:clamp(45px,5.5vw,72px) clamp(28px,3.5vw,44px);display:grid}.footer__brand{align-content:start;gap:16px;max-width:350px;display:grid}.footer__brand .brand__name{color:#fff}.footer__brand .brand__sub{color:#ffffff85}.footer__desc{color:#ffffffab;font-size:.9rem;line-height:1.55}.footer__title{color:#fff;letter-spacing:.04em;margin-bottom:14px;font-size:.8rem;font-weight:800}.footer__links{gap:5px;display:grid}.footer__link{color:#ffffffb3;transition:color var(--t), transform var(--t);font-size:.89rem;line-height:1.55}.footer__link:hover{color:#fff;transform:translate(4px)}.footer__socials{flex-wrap:wrap;gap:8px;display:flex}.social-btn{color:#fff;width:36px;height:36px;transition:background var(--t), border-color var(--t), transform var(--t);border:1px solid #ffffff3d;border-radius:50%;place-items:center;display:grid}.social-btn:hover{border-color:var(--red);background:var(--red);transform:translateY(-2px)}.footer__bottom{color:#ffffff80;border-top:1px solid #ffffff26;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;padding-block:17px 24px;font-size:.79rem;display:flex}.footer__bottom-links{flex-wrap:wrap;gap:17px;display:flex}.footer__bottom-links a:hover{color:#fff}.fab{z-index:80;color:#052916;width:54px;height:54px;transition:transform var(--t), box-shadow var(--t);background:#25d366;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:21px;right:22px;box-shadow:0 15px 29px #159f4659}.fab:hover{transform:scale(1.07);box-shadow:0 19px 37px #159f4680}.fab__label{border-radius:var(--r-pill);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--t), transform var(--t);background:#07172a;padding:6px 10px;font-size:.74rem;font-weight:700;position:absolute;right:calc(100% + 10px);transform:translate(5px)}.fab:hover .fab__label{opacity:1;transform:none}.to-top{z-index:80;color:#fff;opacity:0;pointer-events:none;width:41px;height:41px;transition:opacity var(--t), transform var(--t), background var(--t);background:#07172a;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:84px;right:26px;transform:translateY(70px);box-shadow:0 9px 21px #010b153d}.to-top.is-visible{opacity:1;pointer-events:auto;transform:none}.to-top:hover{background:var(--red)}@media (width<=900px){.nav,.header__cta{display:none}.nav-toggle{display:grid}.footer__top{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1/-1}}@media (width<=640px){:root{--header-h:68px;--gutter:19px}.brand__mark{width:34px;height:34px}.brand__name{font-size:1.05rem}.footer__top{grid-template-columns:1fr}.footer__brand{grid-column:auto}.footer__bottom{flex-direction:column;align-items:flex-start}.fab{width:51px;height:51px;bottom:15px;right:15px}.to-top{bottom:77px;right:20px}}.hero--studio{min-height:660px;padding-block:calc(var(--header-h) + clamp(42px, 5vw, 82px)) clamp(48px, 6vw, 80px);color:#fff;isolation:isolate;background:radial-gradient(42% 70% at 82% 58%,#e11d2e4d,#0000 70%),radial-gradient(42% 90% at 14% 14%,#407ea23d,#0000 72%),linear-gradient(112deg,#041421 0%,#071d2d 52%,#061420 100%);align-items:center;display:grid;position:relative;overflow:hidden}.hero--studio:before{content:"";z-index:-1;pointer-events:none;opacity:.48;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:54px 54px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 74%);mask-image:linear-gradient(90deg,#000,#0000 74%)}.hero__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(36px,3vw,50px);display:grid}.hero--studio .container{max-width:1200px}.hero__copy{place-items:start;gap:20px;max-width:640px;display:grid}.eyebrow{color:#bd1a29;letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:10px;font-size:.7rem;font-weight:800;line-height:1.2;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:21px;height:2px}.eyebrow--light{color:#ff8790}.hero__copy h1{color:#fff;letter-spacing:-.04em;max-width:640px;font-size:clamp(2.3rem,2.9vw,2.55rem);font-weight:800;line-height:1.06}.hero__copy .lead{color:#ffffffd1;max-width:43ch;font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.55}.hero-device{align-self:stretch;place-items:center;min-height:330px;display:grid;position:relative}.hero-device img{z-index:2;filter:drop-shadow(0 28px 24px #00000085);width:min(100%,735px);position:relative;transform:translate(2%,4%)rotate(-1.8deg)}.hero-device__glow{z-index:1;filter:blur(28px);opacity:.72;background:#e11d2e;border-radius:50%;width:74%;height:17%;position:absolute;bottom:8%;left:15%}.hero-device__tag{z-index:3;border-radius:var(--r-pill);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#ffffffeb;letter-spacing:.06em;text-transform:uppercase;background:#041421b8;border:1px solid #ffffff42;padding:5px 9px;font-size:.64rem;font-weight:700;position:absolute;bottom:3%;right:9%}.sec{padding-block:clamp(42px,4vw,58px)}.section-heading{text-align:center;justify-items:center;gap:9px;width:min(100%,800px);margin:0 auto clamp(28px,3.5vw,44px);display:grid}.section-heading .eyebrow{color:#000;letter-spacing:-.04em;text-transform:none;font-size:clamp(2.5rem,4vw,3rem);font-weight:800;line-height:1.1}.section-heading .eyebrow:before{display:none}.section-heading h2{color:#09172b;letter-spacing:-.015em;text-wrap:balance;width:100%;max-width:26ch;font-size:clamp(1.2rem,1.7vw,1.45rem);line-height:1.35}.section-heading>p:last-child:not(.eyebrow){color:#09172b;width:100%;max-width:650px;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.5}.section-heading--compact{margin-bottom:28px}.services-section{background:radial-gradient(at 12% 8%,#e11d2e0e,#0000 34%),linear-gradient(140deg,#fff 0%,#fff8f9 48%,#f4f8ff 100%);position:relative}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.service-card{min-width:0;min-height:236px;transition:transform var(--t), border-color var(--t), box-shadow var(--t);background:linear-gradient(145deg,#fffffffa,#fffafaf0);border:1px solid #e4e8f0;border-radius:12px;align-content:start;justify-items:start;gap:14px;padding:clamp(24px,3vw,34px);display:grid;box-shadow:0 12px 34px #0b1d3309}.service-card:hover{border-color:#f5b2b8;transform:translateY(-6px);box-shadow:0 18px 34px #75151f1c}.service-card__icon{color:#d20d20;background:#fde7e9;border-radius:10px;place-items:center;width:52px;height:52px;display:grid}.service-card h3{color:#09172b;font-size:1.22rem;line-height:1.15}.service-card p{color:#687794;font-size:.95rem;line-height:1.55}.portfolio-section{background:radial-gradient(at 92% 12%,#3f7dc714,#0000 34%),linear-gradient(155deg,#f4f8ff 0%,#fff 78%)}.portfolio-section>.container{max-width:1280px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.portfolio-card{min-width:0;color:inherit;cursor:pointer;transition:transform var(--t), box-shadow var(--t);background:#fff;border:1px solid #e4e8f0;border-radius:13px;text-decoration:none;display:block;overflow:hidden;box-shadow:0 14px 34px #0b1d330e}.portfolio-card:hover{transform:translateY(-6px);box-shadow:0 21px 38px #0b1d331f}.portfolio-preview{aspect-ratio:16/9;object-fit:cover;object-position:top center;width:100%}.portfolio-card__bottom{justify-content:space-between;align-items:center;gap:16px;min-height:74px;padding:15px 18px;display:flex}.portfolio-card__bottom p{color:#15233b;font-size:.9rem;font-weight:700;line-height:1.25}.portfolio-card__link{border-radius:var(--r-pill);color:#bd0d1d;transition:background var(--t), color var(--t), transform var(--t);background:#fde1e4;flex:none;align-items:center;gap:7px;padding:.66rem .92rem;font-size:.75rem;font-weight:800;display:inline-flex}.portfolio-card__link:hover{color:#fff;background:#d61022;transform:translateY(-2px)}.clients-section{background:radial-gradient(at 8% 86%,#e11d2e0d,#0000 32%),linear-gradient(135deg,#fff 0%,#f7f9ff 58%,#fff5f6 100%)}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,4vw,48px);width:min(100%,700px);margin-inline:auto;display:grid}.client-card{place-items:center;min-width:0;min-height:150px;display:grid}.client-card img{object-fit:contain;filter:none;opacity:1;width:100%;max-width:250px;max-height:110px;transition:transform var(--t)}.client-card:hover img{transform:scale(1.04)}.cta-section{background:#fff;padding-top:22px}.cta-band{color:#08172a;background:linear-gradient(108deg,#ffd5d9 0%,#ff7883 48%,#e51e31 100%);border-radius:14px;justify-content:space-between;align-items:center;gap:26px;padding:clamp(26px,4vw,44px) clamp(24px,4vw,52px);display:flex;position:relative;overflow:hidden}.cta-band:after{content:"";aspect-ratio:1;border:1px solid #ffffff47;border-radius:32% 68% 63% 37%/44% 37% 63% 56%;width:42%;position:absolute;bottom:-170%;right:-9%;transform:rotate(28deg)}.cta-band>div{z-index:1;gap:8px;max-width:690px;display:grid;position:relative}.cta-band .eyebrow{color:#08172abf}.cta-band h2{color:#07162a;letter-spacing:-.05em;font-size:clamp(1.75rem,3vw,2.7rem);line-height:1.03}.cta-band p:last-child{color:#08172ad4;font-size:.96rem}.cta-band .btn{z-index:1;white-space:nowrap;flex:none;position:relative}@media (width<=900px){.hero--studio{min-height:auto}.hero__inner{grid-template-columns:1fr}.hero__copy{max-width:660px;transform:translateY(22px)}.hero__copy h1{max-width:20ch}.hero-device{width:min(100%,700px);min-height:260px;margin-inline:auto}.hero-device img{transform:translateY(2%)rotate(-1.2deg)}.service-grid{grid-template-columns:repeat(3,1fr)}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.hero--studio{padding-block:calc(var(--header-h) + 44px) 42px}.hero__copy{gap:17px;transform:none}.hero__copy h1{max-width:15ch;font-size:clamp(2.45rem,10vw,3.35rem)}.hero-device{min-height:190px}.hero-device__tag{display:none}.section-heading .eyebrow{font-size:clamp(2.2rem,9vw,2.6rem)}.section-heading h2{font-size:1.2rem}.service-grid,.portfolio-grid{grid-template-columns:1fr}.service-card{min-height:auto}.client-card{min-height:112px}.cta-band{flex-direction:column;align-items:start}.cta-band .btn{width:100%}}@media (width<=420px){.preview-topbar span:not(.preview-brand):not(.preview-topbar__button){display:none}.portfolio-card__bottom{flex-direction:column;align-items:flex-start}}
