@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url('fonts/plus-jakarta-sans.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;src:url('fonts/space-grotesk.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --ink:#0A0612;--ink-2:#100A1C;--violet:#7C3AED;--violet-2:#A78BFA;--violet-dim:#3B1D6E;
  --paper:#F5F2FB;--mist:#A79BC2;--line:rgba(245,242,251,.10);--line-2:rgba(245,242,251,.18);
  --font-d:'Plus Jakarta Sans','Avenir Next','Segoe UI',system-ui,sans-serif;
  --font-m:'Space Grotesk','SF Mono',ui-monospace,monospace;
  --gutter:clamp(20px,4vw,72px);--ease:cubic-bezier(.62,.05,.01,.99);--ease-quint:cubic-bezier(.83,0,.17,1);
}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--ink);color:var(--paper);font-family:var(--font-d);font-weight:300;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--violet);color:#fff}
a{color:inherit;text-decoration:none}
ul{list-style:none}
img,video,svg{display:block;max-width:100%}
button{font-family:inherit;background:none;border:0;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--violet-2);outline-offset:3px;border-radius:4px}

/* header */
.header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:14px clamp(14px,3vw,28px);pointer-events:none}
.header__bar{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 auto;padding:8px 8px 8px 20px;border-radius:999px;
  background:rgba(16,10,28,.72);border:1px solid rgba(245,242,251,.09);
  backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);
  box-shadow:0 18px 50px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.06);max-width:680px}
.header__logo img{height:24px;width:auto}
.header__back{font-family:var(--font-m);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;
  border:1px solid var(--line-2);border-radius:100px;padding:11px 18px;display:inline-flex;align-items:center;gap:9px;white-space:nowrap;
  transition:background .35s,border-color .35s}
.header__back:hover{background:var(--violet);border-color:var(--violet)}

/* hero */
.chero{position:relative;padding:clamp(120px,18vh,190px) var(--gutter) clamp(50px,8vh,90px);border-bottom:1px solid var(--line);overflow:hidden}
.chero__glow{position:absolute;inset:-30% -10% auto;height:80%;background:radial-gradient(50% 60% at 70% 20%,rgba(124,58,237,.30),transparent 70%);pointer-events:none}
.chero__in{position:relative;z-index:1;max-width:1100px}
.chero__eyebrow{font-family:var(--font-m);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--violet-2);margin-bottom:22px}
.chero h1{font-size:clamp(44px,10vw,120px);font-weight:800;letter-spacing:-.045em;line-height:.98}
.chero__sub{margin-top:26px;max-width:56ch;color:var(--mist);font-size:clamp(16px,1.7vw,20px)}
.chero__meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.chero__meta span{font-family:var(--font-m);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--paper);
  border:1px solid var(--line-2);border-radius:100px;padding:9px 16px;background:rgba(255,255,255,.04)}

/* secoes */
.cs{padding:clamp(60px,9vh,120px) var(--gutter)}
.cs__head{margin-bottom:clamp(30px,5vh,56px);max-width:70ch}
.cs__kick{font-family:var(--font-m);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--mist);display:flex;align-items:center;gap:12px;margin-bottom:16px}
.cs__kick i{width:8px;height:8px;border-radius:2px;background:var(--violet)}
.cs h2{font-size:clamp(28px,4vw,52px);font-weight:700;letter-spacing:-.03em;line-height:1.08}
.cs h2 em{font-style:normal;color:var(--violet-2)}
.cs__p{color:var(--mist);font-size:clamp(15px,1.5vw,17.5px);max-width:62ch;margin-top:18px}

/* media */
.media{position:relative;border-radius:20px;overflow:hidden;background:var(--ink-2);border:1px solid var(--line)}
.media img,.media video{width:100%;height:auto;display:block}
.vwrap{position:relative;cursor:pointer;background:#000}
.vwrap img{width:100%;height:auto;display:block;transition:transform .8s var(--ease),opacity .4s}
.vwrap:hover img{transform:scale(1.03);opacity:.82}
.vwrap__play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;pointer-events:none}
.vwrap__btn{width:74px;height:74px;border-radius:50%;background:rgba(245,242,251,.94);display:flex;align-items:center;justify-content:center;
  box-shadow:0 20px 50px rgba(0,0,0,.5);transition:transform .4s var(--ease),background .3s}
.vwrap:hover .vwrap__btn{transform:scale(1.1);background:var(--violet)}
.vwrap__btn svg{width:24px;height:24px;margin-left:4px;fill:var(--ink);transition:fill .3s}
.vwrap:hover .vwrap__btn svg{fill:#fff}
.vwrap__cap{font-family:var(--font-m);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.8);text-align:center;padding:0 20px}
.vwrap iframe,.vwrap video{width:100%;aspect-ratio:16/9;display:block;border:0}
.vwrap.is-vert iframe,.vwrap.is-vert video{aspect-ratio:9/16;max-height:82vh;margin:0 auto;width:auto}

/* metricas */
.mgrid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.mcell{padding:clamp(22px,3.2vw,40px);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.mcell b{display:block;font-size:clamp(30px,4.6vw,60px);font-weight:800;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.mcell i{font-style:normal;display:inline-block;margin-top:10px;font-family:var(--font-m);font-size:12px;color:#4ADE80}
.mcell span{display:block;margin-top:10px;font-family:var(--font-m);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mist)}
@media(min-width:820px){.mgrid{grid-template-columns:repeat(4,1fr)}}

/* galeria */
.gal{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:700px){.gal{grid-template-columns:1fr 1fr;gap:20px}}
.gal--wide{grid-template-columns:1fr}
.gal figure{border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--ink-2)}
.gal img{width:100%;height:auto;display:block;transition:transform .7s var(--ease)}
.gal figure:hover img{transform:scale(1.02)}

/* proximo case */
.nextc{border-top:1px solid var(--line);padding:clamp(60px,10vh,130px) var(--gutter);text-align:center;position:relative;overflow:hidden}
.nextc__glow{position:absolute;inset:-20%;background:radial-gradient(45% 55% at 50% 60%,rgba(124,58,237,.28),transparent 70%);pointer-events:none}
.nextc__k{position:relative;font-family:var(--font-m);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mist);margin-bottom:18px}
.nextc h2{position:relative;font-size:clamp(36px,7vw,88px);font-weight:800;letter-spacing:-.04em;line-height:1;transition:color .4s}
.nextc a:hover h2{color:var(--violet-2)}
.btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:12px;font-family:var(--font-m);font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:17px 30px;border-radius:100px;margin-top:34px}
.btn--solid{background:var(--paper);color:var(--ink);font-weight:600}
.btn--solid:hover{background:var(--violet);color:#fff}

/* footer */
.footer{border-top:1px solid var(--line);padding:clamp(50px,8vh,90px) var(--gutter) 30px}
.footer__grid{display:grid;grid-template-columns:1fr;gap:36px;margin-bottom:54px}
.footer__brand img{height:52px;width:auto}
.footer__brand p{color:var(--mist);font-size:14px;max-width:30ch;margin-top:16px}
.footer h4{font-family:var(--font-m);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mist);margin-bottom:18px;font-weight:500}
.footer ul li{margin-bottom:12px;font-size:14.5px}
.footer ul a{opacity:.8;transition:opacity .3s,color .3s}
.footer ul a:hover{opacity:1;color:var(--violet-2)}
.footer__base{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:26px;border-top:1px solid var(--line);font-family:var(--font-m);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mist)}
@media(min-width:560px){.footer__grid{grid-template-columns:1fr 1fr}}
@media(min-width:900px){.footer__grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}}

.rv{opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.rv{opacity:1!important;transform:none!important}}
