/* ============================================================
   AUSTRAL — peça-conceito ALNAIR (base modelada de referência)
   Tokens medidos na captura; escala normalizada base-8.
   ============================================================ */
@font-face{font-family:'Inter Display';src:url('../fonts/InterDisplay-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Inter Display';src:url('../fonts/InterDisplay-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Inter Display';src:url('../fonts/InterDisplay-ExtraBold.woff2') format('woff2');font-weight:800;font-display:swap}
@font-face{font-family:'Inter';src:url('../fonts/Inter-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Inter';src:url('../fonts/Inter-Medium.woff2') format('woff2');font-weight:500;font-display:swap}

:root{
  /* cor (papel nomeado) */
  --bg:#040404;            /* fundo base */
  --surface:#131313;       /* card elevado */
  --surface-2:#1a1a1a;     /* card alternativo */
  --band:#191919;          /* faixa grafite */
  --txt:#ffffff;           /* primário */
  --txt-2:#9a9a9a;         /* secundário (AA sobre bg) */
  --txt-3:#7a7a7a;         /* display decorativo grande */
  --txt-4:#b7b7b7;         /* sobre superfícies claras */
  --ink:#474747;           /* corpo sobre branco */
  --line:rgba(255,255,255,.12);
  --line-2:rgba(255,255,255,.26);
  --glass:rgba(255,255,255,.32);
  --green:#2df494;         /* acento pontual */
  --green-deep:#1b4332;    /* chip recomendado */
  /* tipo — escala modular razão 1,333 arredondada: 12 > 16 > 21 > 28 > 38 (display: 48/120/300 = saltos compostos da referência) */
  --f-disp:'Inter Display',Inter,system-ui,sans-serif;
  --f-body:'Inter',system-ui,sans-serif;
  --f-clash:var(--f-disp); /* detalhe de premiação: mesmo sistema, peso 800 */
  --h1:clamp(76px,20.8vw,300px);
  --h2:clamp(52px,8.33vw,120px);
  --h3:clamp(24px,2.64vw,38px);
  --h5:clamp(22px,1.95vw,28px);
  /* ritmo */
  --pad:clamp(20px,6.95vw,100px);
  --gap:32px;
  --r-card:20px;--r-media:16px;--r-big:40px;--r-pill:100px;
  --ease:cubic-bezier(.22,1,.36,1); /* "zen": saída expo suavizada, assinatura da casa */
  --dur:.7s;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}
html{overflow-x:clip}
body{background:var(--bg);color:var(--txt);font-family:var(--f-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:clip}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
ul{list-style:none}
sup{font-size:.42em;vertical-align:super}
hr{border:0;border-top:1px solid var(--line)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
::selection{background:var(--green);color:#040404}

/* estado pré-reveal: só com JS vivo (html.anim) — opacity 0 pleno (regra da casa: axe pula o nó) */
html.anim [data-reveal],html.anim [data-hero]{opacity:0}
html.anim [data-hero="zoom"]{opacity:1}
html.anim [data-hero="tab"]{opacity:1}

/* tipografia utilitária */
.h3{font-family:var(--f-disp);font-weight:600;font-size:var(--h3);line-height:1.21;letter-spacing:-.02em}
.h5{font-family:var(--f-disp);font-weight:600;font-size:var(--h5);line-height:1.14;letter-spacing:-.01em}
.h2-giant{font-family:var(--f-disp);font-weight:600;font-size:var(--h2);line-height:1;letter-spacing:-.04em}
.clash{font-family:var(--f-clash);font-weight:800;letter-spacing:.04em}
.card-r20{border-radius:var(--r-card)}
.card-r16{border-radius:var(--r-media)}
.card-r40{border-radius:var(--r-big)}
.dim{color:var(--txt-2)}

/* chips "• Rótulo" */
.chip{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border:1px solid var(--line-2);border-radius:var(--r-pill);font-size:14px;line-height:1;color:var(--txt)}
.chip .dot{width:6px;height:6px;border-radius:50%;background:var(--txt)}

/* pills CTA — inversão + texto deslizante (hover medido: #040404 ↔ #fff) */
.pill{display:inline-flex;align-items:center;gap:10px;padding:8px 8px 8px 22px;border-radius:var(--r-pill);font-weight:500;font-size:16px;line-height:1;transition:background .45s var(--ease),color .45s var(--ease),border-color .45s var(--ease)}
.pill-light{background:#fff;color:#040404;border:1px solid #fff}
.pill-light:hover{background:transparent;color:#fff}
.pill-ghost{background:transparent;color:#fff;border:1px solid var(--line-2)}
.pill-ghost:hover{background:#fff;color:#040404}
.pill-txt{position:relative;overflow:hidden;display:block;height:1em}
.pill-txt span{display:block;transition:transform .45s var(--ease)}
.pill-txt span:last-child{position:absolute;top:100%;left:0}
.pill:hover .pill-txt span{transform:translateY(-100%)}
.pill-chip{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#040404;color:#fff;transition:background .45s var(--ease),color .45s var(--ease),transform .45s var(--ease)}
.pill-chip svg{width:14px;height:14px}
.pill-light:hover .pill-chip{background:#fff;color:#040404;transform:rotate(45deg)}
.pill-ghost .pill-chip{background:#fff;color:#040404}
.pill-ghost:hover .pill-chip{background:#040404;color:#fff;transform:rotate(45deg)}
.center-pill{margin:56px auto 0;display:inline-flex}

/* botão circular de seta */
.circle-btn{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1px solid var(--line-2);color:#fff;transition:background .4s var(--ease),color .4s var(--ease),transform .4s var(--ease)}
.circle-btn svg{width:16px;height:16px}
.circle-btn:hover{background:#fff;color:#040404;transform:rotate(45deg)}
.rev-nav .circle-btn:hover{transform:none}

/* link sublinhado */
.ul-link{display:inline-flex;align-items:center;gap:8px;font-weight:500;border-bottom:1px solid var(--line-2);padding-bottom:6px;transition:border-color .3s var(--ease)}
.ul-link:hover{border-color:#fff}
.ul-link svg{width:13px;height:13px}

/* seções */
.sect{padding:120px var(--pad);max-width:1440px;margin-inline:auto}
.sect-head{margin-bottom:64px}
.head-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:24px;flex-wrap:wrap}
.head-aside{max-width:320px;color:var(--txt-2);font-size:14px;line-height:1.5}
.center-head{text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px;margin-bottom:64px}

/* ============ NAV ============ */
.nav{position:absolute;inset:0 0 auto 0;z-index:50;display:flex;align-items:flex-start;justify-content:space-between;padding:24px calc(var(--pad)/2 + 16px) 0;pointer-events:none}
.nav>*{pointer-events:auto}
.nav-left{display:flex;align-items:center;gap:14px;margin-top:12px}
.menu-pill{display:inline-flex;align-items:center;gap:10px;background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:12px;padding:12px 18px;color:#fff;font-weight:500;font-size:16px}
.menu-ico{display:grid;gap:3.5px;width:18px;background:#0a0a0a;border-radius:6px;padding:7px 4px}
.menu-ico i{height:2px;background:#fff;border-radius:2px;display:block}
.nav-sep{color:rgba(255,255,255,.5)}
.nav-loc{font-size:16px;color:#fff}
.nav-logo{position:absolute;left:50%;transform:translateX(-50%);top:0;display:flex;align-items:center;gap:8px;background:#040404;padding:16px 44px 18px;clip-path:polygon(0 0,100% 0,calc(100% - 26px) 100%,26px 100%)}
.logo-mark{width:22px;height:22px}
.logo-word{font-family:var(--f-disp);font-weight:800;font-size:24px;letter-spacing:-.02em}
.nav-right{margin-top:12px}

/* menu overlay */
.menu-overlay{position:fixed;inset:0;z-index:90;background:rgba(4,4,4,.94);backdrop-filter:blur(14px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;opacity:0;visibility:hidden;transition:opacity .5s var(--ease),visibility .5s}
.menu-overlay.open{opacity:1;visibility:visible}
.menu-overlay a{font-family:var(--f-disp);font-weight:600;font-size:clamp(32px,5vw,56px);letter-spacing:-.02em;color:var(--txt-2);transition:color .3s}
.menu-overlay a:hover{color:#fff}
.menu-overlay .menu-cta{color:#fff;border-bottom:1px solid var(--line-2)}

/* ============ HERO ============ */
.hero{position:relative;margin:16px;height:min(94vh,880px);min-height:640px;border-radius:var(--r-big);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;padding:120px 84px 48px;isolation:isolate}
.hero-art{position:absolute;inset:0;z-index:-1;background:#08131c;overflow:hidden}
.ha{position:absolute;border-radius:50%;filter:blur(70px)}
.ha-1{width:70%;height:60%;left:8%;top:30%;background:radial-gradient(closest-side,rgba(235,120,60,.55),rgba(190,70,40,.25) 55%,transparent);transform:rotate(-18deg)}
.ha-2{width:55%;height:45%;right:-5%;top:-10%;background:radial-gradient(closest-side,rgba(90,160,215,.5),rgba(40,90,150,.22) 60%,transparent)}
.ha-3{width:45%;height:40%;right:14%;bottom:6%;background:radial-gradient(closest-side,rgba(120,190,235,.34),transparent 70%)}
.ha-4{width:36%;height:30%;left:30%;bottom:-8%;background:radial-gradient(closest-side,rgba(240,170,110,.4),transparent 70%)}
.grain{position:absolute;inset:0;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .05 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,4,4,.55),rgba(4,4,4,.05) 45%,rgba(4,4,4,.25))}
.hero-lines{position:absolute;inset:0;pointer-events:none}
.hero-lines i{position:absolute;top:0;bottom:0;width:1px;background:rgba(255,255,255,.09)}
.hero-lines i:nth-child(1){left:27.5%}.hero-lines i:nth-child(2){left:50%}.hero-lines i:nth-child(3){left:73%}
.plus{position:absolute;color:rgba(255,255,255,.55);font-weight:400;font-size:18px}
.p1{left:26.6%;top:56%}.p2{left:49.2%;top:56%}.p3{left:72.2%;top:56%}
.hero-title{font-family:var(--f-disp);font-weight:600;font-size:var(--h1);line-height:.94;letter-spacing:-.06em;margin-top:clamp(8px,2vh,32px)}
.hero-title span span{display:inline-block}
.hero-sub{margin-top:clamp(20px,4vh,48px)}
.hero-foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:32px}
.hero-clients{max-width:300px}
.clients-row{display:flex;align-items:center;gap:16px;margin-top:4px}
.avatars{display:flex;padding:6px;border:1px solid var(--line-2);border-radius:var(--r-pill);width:max-content;background:rgba(4,4,4,.25);backdrop-filter:blur(6px)}
.avatars span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font-size:12px;font-weight:500;color:#fff;border:2px solid #040404}
.avatars span:nth-child(1){background:linear-gradient(135deg,#3d5a4c,#1b4332)}
.avatars span:nth-child(2){background:linear-gradient(135deg,#4a5568,#2d3748);margin-left:-10px}
.avatars span:nth-child(3){background:linear-gradient(135deg,#6b5b45,#4a3f2f);margin-left:-10px}
.clients-num{display:flex;align-items:baseline;gap:10px}
.clients-num small{color:var(--txt-4);font-size:14px}
.clients-copy{margin:14px 0 22px;font-size:16px;line-height:1.5;color:#fff}
.hero-social{display:flex;gap:10px}
.soc{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid var(--line-2);color:#fff;background:rgba(4,4,4,.2);backdrop-filter:blur(6px);transition:background .35s var(--ease),color .35s var(--ease)}
.soc svg{width:15px;height:15px}
.soc:hover{background:#fff;color:#040404}
.award-card{background:#0a0a0a;border-radius:var(--r-card);padding:28px 30px 22px;min-width:min(400px,100%);color:#fff}
.award-top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.laurel{width:26px;height:44px;color:#fff}
.laurel.flip{transform:scaleX(-1)}
.award-mid{text-align:center}
.stars{letter-spacing:6px;font-size:13px;margin-bottom:8px}
.award-kicker{font-family:var(--f-disp);font-weight:600;font-size:15px;letter-spacing:.14em;margin-bottom:2px}
.award-title{font-size:clamp(22px,1.66vw,26px);letter-spacing:.02em}
.award-div{margin:18px 0 14px;border-color:rgba(255,255,255,.14)}
.award-foot{display:flex;justify-content:space-between;color:var(--txt-2);font-size:14px}

/* ============ MANIFESTO ============ */
.manifesto{padding-top:140px}
.mani-grid{position:relative;display:grid;grid-template-columns:minmax(280px,500px) 1fr;gap:clamp(40px,7vw,100px);align-items:start}
.mani-media{overflow:hidden;aspect-ratio:500/290;background:var(--surface)}
.mani-media .art{width:100%;height:116%;margin-top:-8%}
.mani-txt{max-width:1000px}
.globe{width:28px;height:28px;color:#fff;margin-bottom:18px}
.statement{font-family:var(--f-disp);font-weight:600;font-size:clamp(30px,3.9vw,56px);line-height:1.16;letter-spacing:-.02em;text-align:left}
.mani-sup{margin:32px 0 40px;max-width:400px;color:var(--txt-2)}
.mani-mark{position:absolute;right:0;bottom:96px;width:clamp(120px,15vw,210px);color:rgba(255,255,255,.2);pointer-events:none}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;border-top:1px solid var(--line);margin-top:96px;padding-top:64px}
.stat strong{font-family:var(--f-disp);font-weight:600;font-size:clamp(64px,8.33vw,120px);line-height:1;letter-spacing:-.04em}
.stat small{display:block;margin-top:16px;color:var(--txt-4);font-size:16px;line-height:1.4}
.stat:nth-child(2){text-align:center}
.stat:nth-child(3){text-align:right}

/* ============ MÉTODO ============ */
.met-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;align-items:start}
.met-card{background:var(--surface);border-radius:var(--r-card);padding:40px 36px 28px;display:flex;flex-direction:column;min-height:560px}
.push-1{margin-top:64px}.push-2{margin-top:128px}
.met-ico{width:56px;height:56px;color:#fff}
.met-card h3{font-family:var(--f-disp);font-weight:600;font-size:var(--h3);line-height:1.21;letter-spacing:-.02em;margin-top:auto}
.met-card p{color:var(--txt-2);margin:14px 0 28px;line-height:1.55}
.met-card footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px}
.met-time{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:#fff}
.met-time svg{width:14px;height:14px}
.met-tag{font-size:14px;letter-spacing:.1em;color:var(--txt-2)}

/* divisor degrau */
.divider{padding:48px var(--pad) 0}
.divider svg{display:block;width:100%;height:60px}

/* ============ RECONHECIMENTO ============ */
.recon-quote{max-width:720px;font-size:21px;line-height:1.6;color:var(--txt-2)}
.cert-marquee{overflow:hidden;margin:32px calc(var(--pad)*-1) 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.cert-track{display:flex;width:max-content;animation:certs 42s linear infinite}
@keyframes certs{to{transform:translateX(-50%)}}
.cert-set{display:flex;gap:24px;padding-right:24px}
.cert{width:232px;flex:none;text-align:center}
.cert .cert-art{opacity:.55;transition:opacity .4s var(--ease)}
.cert:hover .cert-art{opacity:1}
.cert-art{height:200px;border:1px solid var(--line);border-radius:var(--r-media);display:grid;place-items:center;padding:18px;background:var(--surface);filter:grayscale(1)}
.cert:hover .cert-art{filter:grayscale(0)}
.cert-serif{font-family:Georgia,serif;font-size:19px;letter-spacing:.06em;color:#d9d4c8}
.cert-art em{display:block;font-family:Georgia,serif;font-style:italic;color:var(--txt-2);font-size:14px;margin-top:10px}
.ca-1,.ca-1b{background:linear-gradient(160deg,#20201d,#101010)}
.cert-brand{font-family:var(--f-disp);font-weight:600;font-size:15px;letter-spacing:.06em;line-height:1.5;color:#dfe6df}
.ca-2{background:linear-gradient(150deg,#0e2018,#0a0a0a)}
.ca-2b{background:linear-gradient(160deg,#191a26,#0a0a0a)}
.cert-art i{display:block;font-style:normal;font-size:11px;letter-spacing:.18em;color:var(--txt-2);margin-top:12px}
.cert-glow{font-family:var(--f-disp);font-weight:600;font-size:17px;line-height:1.45;background:linear-gradient(120deg,#9dd6c0,#4a72b8);-webkit-background-clip:text;background-clip:text;color:transparent}
.ca-3{background:#0b0d14}
.cert-seal{color:#69a97e}.cert-seal svg{width:72px;height:72px}
.ca-4{background:#101210}
.cert figcaption{margin-top:18px}
.cert figcaption b{display:block;font-family:var(--f-disp);font-weight:600;font-size:17px;letter-spacing:.02em}
.cert figcaption small{color:var(--txt-2);font-size:14px}

/* serviços 01/02/03 */
.serv{padding-top:160px}
.serv-center{text-align:center}
.ghost-wrap{position:relative;display:inline-block;width:100%}
.ghost{position:absolute;left:50%;top:50%;transform:translate(-50%,-58%);font-family:var(--f-disp);font-weight:600;font-size:clamp(160px,26vw,372px);line-height:1;letter-spacing:-.05em;background:linear-gradient(180deg,#242424 0%,rgba(10,10,10,0) 90%);-webkit-background-clip:text;background-clip:text;color:transparent;pointer-events:none;user-select:none;z-index:0}
.gw-left .ghost{left:16%;transform:translate(-30%,-58%)}
.ghost-wrap .h2-giant{position:relative;z-index:1}
.ghost-word{font-size:clamp(140px,24vw,340px)}
.serv-sub{max-width:480px;margin:24px auto 64px;color:var(--txt-2);line-height:1.6}
.serv-left{text-align:left}
.serv-row{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin:24px 0 48px;flex-wrap:wrap}
.serv-aside{max-width:420px;color:var(--txt-2);font-size:21px;line-height:1.5}

/* 01 identidade */
.ident-grid{display:grid;grid-template-columns:minmax(0,2.9fr) repeat(3,minmax(0,.72fr));gap:24px;align-items:stretch;text-align:left}
.ident-main{position:relative;overflow:hidden;min-height:560px;padding:40px;display:flex;flex-direction:column;background:var(--surface)}
.ident-main .art{position:absolute;inset:-6% 0;z-index:0}
.ident-main h3{position:relative;z-index:1;font-family:var(--f-disp);font-weight:600;font-size:var(--h3);line-height:1.21;letter-spacing:-.02em}
.ident-main p{position:relative;z-index:1;margin-top:auto;max-width:340px;font-family:var(--f-disp);font-weight:600;font-size:24px;line-height:1.3;letter-spacing:-.01em}
.ident-thin{position:relative;overflow:hidden;min-height:560px;display:flex;align-items:flex-end;justify-content:center;padding:32px 16px;background:var(--surface-2)}
.ident-thin .art{position:absolute;inset:0;opacity:.85}
.ident-thin h3{position:relative;z-index:1;font-family:var(--f-disp);font-weight:600;font-size:var(--h5);line-height:1.2;letter-spacing:-.01em;text-align:center;margin-bottom:56%}

/* 02 marketing acordeão */
.mkt-acc{border-top:1px solid var(--line)}
.mkt-item{border-bottom:1px solid var(--line)}
.mkt-item summary{display:flex;align-items:center;gap:28px;list-style:none;cursor:pointer;padding:36px 0}
.mkt-item summary::-webkit-details-marker{display:none}
.mkt-num{color:var(--txt-2);font-size:16px}
.mkt-item h3{font-family:var(--f-disp);font-weight:600;font-size:clamp(22px,2.2vw,32px);letter-spacing:-.02em}
.mkt-meta{margin-left:auto;color:var(--txt-2);font-size:16px}
.acc-btn{position:relative;width:52px;height:52px;flex:none;border:1px solid var(--line-2);border-radius:50%}
.acc-btn::before,.acc-btn::after{content:"";position:absolute;left:50%;top:50%;background:#fff;transition:transform .4s var(--ease)}
.acc-btn::before{width:16px;height:1.6px;transform:translate(-50%,-50%)}
.acc-btn::after{width:1.6px;height:16px;transform:translate(-50%,-50%)}
details[open] .acc-btn::after{transform:translate(-50%,-50%) scaleY(0)}
.mkt-body{overflow:hidden}
.mkt-inner{display:grid;grid-template-columns:minmax(260px,560px) 1fr;gap:48px;padding:8px 0 48px 60px}
.mkt-media{overflow:hidden;aspect-ratio:560/380;background:var(--surface)}
.mkt-media .art{width:100%;height:114%;margin-top:-7%}
.mkt-inner p{color:var(--txt-2);font-size:21px;line-height:1.6;max-width:460px}

/* 03 interação */
.int-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;text-align:left}
.int-card{border:1px solid var(--line);border-radius:var(--r-card);padding:40px 36px;min-height:330px;display:flex;flex-direction:column}
.int-hot{background:var(--surface)}
.int-head{display:flex;align-items:center;gap:18px;margin-bottom:28px}
.int-ico{width:44px;height:44px;color:#fff;flex:none}
.int-card h3{font-family:var(--f-disp);font-weight:600;font-size:var(--h5);letter-spacing:-.01em}
.int-card ul{display:grid;gap:10px;color:var(--txt-2)}
.int-card ul li::before{content:"• ";color:var(--txt-2)}
.int-card footer{margin-top:auto;padding-top:28px;display:flex;align-items:center;gap:16px;color:var(--txt-2);font-size:14px}
.int-card footer b{font-weight:500;color:var(--txt-4);letter-spacing:.08em;border-left:1px solid var(--line);padding-left:16px}
.dots{display:flex;gap:8px;justify-content:center;margin-top:48px;background:rgba(255,255,255,.06);width:max-content;margin-inline:auto;padding:10px 14px;border-radius:var(--r-pill)}
.dots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.3)}
.dots .on{background:#fff}

/* ============ PORTFÓLIO ============ */
.works-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.work-card{border:1px solid var(--line);border-radius:var(--r-card);padding:32px 32px 40px;transition:border-color .4s var(--ease)}
.work-card:hover{border-color:var(--line-2)}
.tags{display:flex;align-items:center;gap:12px;margin-bottom:56px}
.tags span{border:1px solid var(--line-2);border-radius:var(--r-pill);padding:8px 16px;font-size:14px;color:var(--txt-4)}
.tags i{width:5px;height:5px;border-radius:50%;background:var(--txt-2)}
.work-media{overflow:hidden;aspect-ratio:4/2.6;background:var(--surface)}
.work-media img{width:100%;height:114%;object-fit:cover;margin-top:-7%}
.work-row{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:36px}
.work-card h3{font-family:var(--f-disp);font-weight:600;font-size:var(--h3);line-height:1.21;letter-spacing:-.02em}
.work-card>p{color:var(--txt-2);margin-top:14px;max-width:420px}

/* ============ PRÊMIOS ============ */
.prize .head-row{margin-top:24px}
.prize-aside{max-width:380px;display:grid;gap:24px;color:var(--txt-2)}
.prize-stage{position:relative;margin-top:48px;min-height:560px;display:grid;place-items:center}
.prize-stage .ghost-word{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.polaroids{position:relative;z-index:1;width:min(560px,80%)}
.pol{border-radius:24px;background:#101010;border:1px solid var(--line)}
.pol-back{position:absolute;inset:0;transform:rotate(5deg) translateX(4%);background:#0c0c0c}
.pol-front{position:relative;transform:rotate(-3deg);padding:24px;transition:transform .5s var(--ease)}
.polaroids:hover .pol-front{transform:rotate(0)}
.pol-front .art{height:300px;border-radius:14px}
.pol-front figcaption{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:22px 6px 4px}
.pol-front b{font-size:22px;letter-spacing:.02em}
.pol-front span{color:var(--txt-2);font-size:15px;grid-column:1}
.pol-front em{grid-row:1/3;grid-column:2;align-self:center;font-style:normal;color:var(--txt-2)}
.prize-line{text-align:center;color:var(--txt-2);font-size:21px;margin:48px 0 64px}
.prize-line b{color:#fff;font-weight:400}
.mentions{border-top:1px solid var(--line);padding-top:56px;text-align:center;display:grid;gap:16px}
.mentions p{font-family:var(--f-disp);font-weight:600;font-size:clamp(26px,3.33vw,48px);letter-spacing:-.02em;color:var(--txt-3);line-height:1.3}
.mentions sup{margin:0 18px 0 4px;font-size:15px;letter-spacing:0}

/* ============ MARQUEES DIAGONAIS ============ */
.bands{position:relative;height:340px;overflow:clip;margin:48px 0}
.band{position:absolute;left:-6%;right:-6%;padding:22px 0;overflow:hidden}
.band-track{display:flex;width:max-content;white-space:nowrap;font-family:var(--f-disp);font-weight:600;font-size:clamp(24px,2.5vw,36px);letter-spacing:-.01em}
.band-track span{padding-right:12px}
.band-dark{top:44%;background:var(--band);color:var(--txt-2);transform:rotate(4deg)}
.band-light{top:38%;background:#fff;color:#040404;transform:rotate(-4deg);box-shadow:0 4px 6px rgba(0,0,0,.25)}
.ltr{animation:mq-l 30s linear infinite}
.rtl{animation:mq-r 26s linear infinite}
@keyframes mq-l{to{transform:translateX(-50%)}}
@keyframes mq-r{from{transform:translateX(-50%)}to{transform:translateX(0)}}

/* ============ DEPOIMENTOS ============ */
.rev-grid{display:grid;grid-template-columns:minmax(280px,1fr) 1.2fr;gap:clamp(40px,8vw,120px);align-items:center}
.rev-arch{overflow:hidden;border-radius:100vmax 100vmax 24px 24px;aspect-ratio:3/3.9;background:var(--surface)}
.rev-arch .art{width:100%;height:112%}
.rev-txt .chip{margin-bottom:24px}
.rev-slider{position:relative;margin-top:48px;min-height:280px}
.rev-slide{position:absolute;inset:0;opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease);pointer-events:none}
.rev-slide.on{opacity:1;transform:none;pointer-events:auto}
.rev-slide cite{display:block;margin-top:40px;font-style:normal}
.rev-slide cite b{display:block;font-weight:500;letter-spacing:.08em;font-size:15px}
.rev-slide cite span{color:var(--txt-2);font-size:15px}
.rev-nav{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}
.rev-nav .prev{background:rgba(255,255,255,.14);border-color:transparent}
.rev-nav .next{background:#fff;color:#040404;border-color:#fff}

/* ============ PLANOS ============ */
.toggle-row{display:flex;align-items:center;gap:16px;font-size:16px}
.tg-side{color:var(--txt-2)}
.tg-side .off{color:var(--green);font-weight:500}
.on-side{color:#fff}
.switch{position:relative;width:56px;height:30px;border-radius:var(--r-pill);background:#fff;transition:background .3s}
.switch i{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#b0b0b0;transition:transform .35s var(--ease)}
.switch[aria-checked="true"] i{transform:translateX(26px)}
.plans-box{border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1.45fr;overflow:hidden}
.plan{padding:48px 44px;display:flex;flex-direction:column;gap:0}
.plan+.plan{border-left:1px solid var(--line)}
.plan header{display:flex;align-items:center;gap:14px;margin-bottom:28px}
.plan-name{font-family:var(--f-body);font-weight:500;font-size:21px}
.plan-ico{width:30px;height:30px;color:#fff;margin-left:auto}
.chip-rec{background:var(--green-deep);color:var(--green);border-radius:var(--r-pill);font-size:14px;padding:6px 14px}
.plan-desc{font-family:var(--f-disp);font-weight:600;font-size:var(--h5);line-height:1.3;letter-spacing:-.01em;min-height:5.2em}
.plan hr{margin:8px 0 28px}
.price{display:flex;align-items:baseline;gap:4px;margin-bottom:28px}
.price sup{font-size:21px;align-self:flex-start;margin-top:8px}
.price b{font-family:var(--f-disp);font-weight:600;font-size:clamp(40px,3.9vw,56px);letter-spacing:-.02em}
.price small{color:var(--txt-2);font-size:18px}
.plan .pill{justify-content:center;width:100%}
.plan-list{margin-top:32px;display:grid;gap:14px;color:var(--txt-2);font-size:16px}
.plan-list li::before{content:"• "}
.plan-list.two-col{grid-template-columns:1fr 1fr}
.plan-pro{background:var(--surface)}

/* ============ FAQ ============ */
.faq-grid{display:grid;grid-template-columns:minmax(280px,1fr) 1.35fr;gap:clamp(40px,7vw,110px);align-items:start}
.faq-left .chip{margin-bottom:24px}
.faq-card{border:1px solid var(--line);border-radius:var(--r-card);padding:36px;margin-top:80px}
.faq-card p{color:var(--txt-2);line-height:1.6}
.faq-meta{margin-top:36px}
.faq-meta b{display:block;font-weight:500;letter-spacing:.08em;font-size:14px}
.faq-meta span{color:var(--txt-2);font-size:15px}
.faq-list{display:grid;gap:20px}
.faq-item{border:1px solid var(--line);border-radius:var(--r-card);padding:0 32px;background:transparent;transition:background .45s var(--ease)}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;list-style:none;padding:30px 0}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item h3{font-family:var(--f-disp);font-weight:600;font-size:clamp(19px,1.66vw,24px);letter-spacing:-.01em}
.faq-item .acc-btn{width:40px;height:40px;border:0}
.faq-body{padding:0 0 30px;max-width:560px}
.faq-body p{color:var(--txt-2);line-height:1.6}
.faq-item[open]{background:#fff;color:#040404}
.faq-item[open] .faq-body p{color:var(--ink)}
.faq-item[open] .acc-btn::before,.faq-item[open] .acc-btn::after{background:#040404}

/* ============ PARCEIROS ============ */
.partners .h2-giant{margin:24px 0 64px}
.part-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}
.part-card{border:1px solid var(--line);border-radius:var(--r-card);padding:28px;min-height:390px;display:flex;flex-direction:column}
.part-card header{display:flex;align-items:baseline;justify-content:space-between}
.part-card header span{color:var(--txt-2);font-size:14px}
.part-ico{width:64px;height:64px;color:rgba(255,255,255,.16);margin:auto}
.part-card p{color:var(--txt-2);font-size:15px;line-height:1.55}
.part-empty{border:0}
.part-grid .part-card:nth-child(5){grid-column:5}
.part-grid .part-card:nth-child(7){grid-column:2}
.part-grid .part-card:nth-child(9){grid-column:4}

/* ============ CONTATO ============ */
.hire{position:relative;overflow:clip}
.constel{position:absolute;inset:0;pointer-events:none}
.constel svg{width:100%;height:100%}
.hire-grid{position:relative;display:grid;grid-template-columns:minmax(280px,1fr) minmax(0,1.3fr);gap:clamp(40px,6vw,90px);align-items:start}
.hire-title{font-family:var(--f-disp);font-weight:600;font-size:clamp(64px,9.7vw,140px);line-height:.96;letter-spacing:-.04em;margin:32px 0 64px}
.hire-call{display:flex;align-items:center;gap:18px;border-left:1px solid var(--line);padding-left:18px;margin-bottom:40px}
.hire-call svg{width:22px;height:22px;color:#fff}
.hire-call small{display:block;color:var(--txt-2);font-size:14px}
.hire-call b{font-size:21px;font-weight:500}
.hire-form{border:1px solid var(--line);padding:clamp(28px,3.5vw,56px);display:grid;gap:28px;background:rgba(4,4,4,.6);backdrop-filter:blur(6px)}
.f-2col{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.f-field{display:grid;gap:12px}
.f-field label{font-weight:500;font-size:18px}
.f-field input,.f-field select,.f-field textarea{width:100%;background:#101010;border:1px solid var(--line);border-radius:var(--r-media);color:#fff;padding:18px 20px;font:inherit;transition:border-color .3s var(--ease)}
.f-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%239a9a9a' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 20px center}
.f-field ::placeholder{color:var(--txt-2)}
.f-field :focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:1px}
.f-field textarea{resize:vertical;min-height:140px}
.f-submit{background:#fff;color:#040404;border-radius:var(--r-media);padding:20px;font-weight:500;font-size:17px;transition:opacity .3s var(--ease)}
.f-submit:hover{opacity:.85}
.f-ok{color:var(--green);text-align:center}
.client-logos{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;margin-top:120px;opacity:.5}
.cl{font-family:var(--f-disp);font-weight:600;font-size:clamp(22px,2.2vw,32px);letter-spacing:-.01em;color:#8a8a8a}
.cl-2{letter-spacing:.12em}.cl-3{font-weight:500;font-family:Georgia,serif;font-style:italic}.cl-5{letter-spacing:.06em}

/* ============ RODAPÉ ============ */
.footer{margin:0 16px 16px;border:1px solid var(--line);padding:clamp(40px,5.5vw,80px) clamp(24px,4.2vw,60px) 0;background:#050505}
.foot-grid{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:clamp(32px,4vw,64px)}
.foot-k{display:block;color:var(--txt-2);font-size:14px;letter-spacing:.08em;margin-bottom:20px}
.gap-top{margin-top:48px}
.foot-strong{font-weight:500;font-size:21px;line-height:1.5}
.badge-wrap{position:relative;width:150px;height:150px;margin-top:72px}
.badge-spin{position:absolute;inset:0;color:#fff;animation:spin 18s linear infinite;font-family:var(--f-body)}
@keyframes spin{to{transform:rotate(360deg)}}
.badge-core{position:absolute;inset:34%;color:#fff}
.foot-links{display:grid;gap:14px;color:var(--txt-2)}
.foot-links a{transition:color .3s}.foot-links a:hover{color:#fff}
.foot-logo{position:static;transform:none;clip-path:none;padding:0;background:none}
.foot-tag{color:var(--txt-2);font-size:18px;max-width:320px;margin:20px 0 32px}
.foot-tag b{color:#fff;font-weight:400}
.foot-social{display:flex;gap:10px;margin-bottom:56px}
.footer .soc{background:rgba(255,255,255,.06)}
.newsletter .foot-k{display:flex;align-items:center;gap:8px}
.mail-ico{width:16px;height:12px}
.news-form{display:flex;align-items:center;background:#0d0d0d;border:1px solid var(--line);border-radius:var(--r-pill);padding:6px 6px 6px 22px;max-width:420px}
.news-form input{flex:1;background:none;border:0;color:#fff;font:inherit;min-width:0}
.news-form input:focus-visible{outline:none}
.news-form button{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#fff;color:#040404;flex:none;transition:transform .35s var(--ease)}
.news-form button:hover{transform:rotate(-45deg)}
.news-form button svg{width:15px;height:15px}
.news-note{display:block;color:var(--txt-2);font-size:13px;margin-top:14px}
.foot-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);margin-top:64px;padding:28px 0}
.foot-bar small{color:var(--txt-2);font-size:14px}
.foot-bar b{color:#fff;font-weight:500}
.foot-bar a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.to-top{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid var(--line-2);color:#fff;transition:background .35s,color .35s}
.to-top:hover{background:#fff;color:#040404}
.to-top svg{width:16px;height:16px}

/* ============ ARTES ABSTRATAS (originais, CSS puro) ============ */
.art{position:relative;overflow:hidden}
.art::after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .04 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.art-car{background:radial-gradient(120% 90% at 30% 55%,rgba(80,140,200,.75),rgba(20,40,70,.4) 55%,transparent 75%),radial-gradient(70% 55% at 70% 45%,rgba(230,120,60,.5),transparent 70%),linear-gradient(100deg,#0a1420,#050a12 70%);filter:blur(1px) saturate(1.15)}
.art-smoke{background:radial-gradient(90% 80% at 60% 40%,rgba(150,170,160,.5),rgba(60,80,72,.28) 55%,transparent 80%),radial-gradient(60% 70% at 25% 70%,rgba(210,220,205,.35),transparent 70%),linear-gradient(160deg,#141a16,#0a0d0b)}
.art-th1{background:radial-gradient(80% 60% at 50% 30%,rgba(120,120,130,.4),transparent 75%),linear-gradient(180deg,#15151a,#0a0a0c)}
.art-th2{background:radial-gradient(70% 50% at 50% 65%,rgba(90,110,140,.35),transparent 75%),linear-gradient(180deg,#101318,#090a0d)}
.art-th3{background:radial-gradient(90% 70% at 40% 40%,rgba(190,190,200,.3),rgba(90,90,110,.18) 55%,transparent 80%),linear-gradient(180deg,#131316,#09090b)}
.art-road{background:radial-gradient(100% 80% at 55% 55%,rgba(240,235,220,.85),rgba(160,150,120,.35) 45%,transparent 70%),linear-gradient(190deg,#1c2836 10%,#0d1320 60%,#0a0e16);filter:blur(1.5px)}
.art-award{background:radial-gradient(60% 60% at 50% 45%,rgba(200,60,50,.8),rgba(90,20,20,.3) 60%,transparent 80%),repeating-linear-gradient(45deg,#101010 0 22px,#141414 22px 44px)}
.art-portrait{background:radial-gradient(80% 55% at 50% 38%,rgba(215,190,160,.65),rgba(120,95,75,.3) 55%,transparent 80%),radial-gradient(100% 70% at 50% 90%,rgba(220,225,230,.5),transparent 60%),linear-gradient(180deg,#181512,#0b0a09)}

/* ============ RESPONSIVO ============ */
@media (max-width:1439px){
  .ident-grid{grid-template-columns:1fr 1fr;grid-auto-rows:minmax(300px,auto)}
  .ident-main{grid-column:1/-1;min-height:420px}
  .ident-thin{min-height:340px}
  .ident-thin h3{margin-bottom:0}
  .part-grid{grid-template-columns:repeat(3,1fr)}
  .part-empty{display:none}
  .part-grid .part-card{grid-column:auto !important}
  .plans-box{grid-template-columns:1fr}
  .plan+.plan{border-left:0;border-top:1px solid var(--line)}
  .plan-desc{min-height:0}
  .met-card{min-height:460px}
}
@media (max-width:809px){
  :root{--gap:24px}
  .sect{padding:80px var(--pad)}
  .nav{padding:16px 20px 0}
  .nav-loc,.nav-sep{display:none}
  .nav-right{display:none}
  .nav-logo{padding:12px 26px 14px}
  .logo-word{font-size:21px}
  .hero{margin:10px;padding:96px 24px 32px;min-height:600px}
  .hero-lines i:nth-child(1),.hero-lines i:nth-child(3),.plus{display:none}
  .hero-foot{flex-direction:column;align-items:flex-start;gap:28px}
  .hero-social{order:3}
  .award-card{min-width:0;width:100%}
  .mani-grid{grid-template-columns:1fr}
  .mani-mark{display:none}
  .stats{grid-template-columns:1fr;gap:48px;margin-top:64px}
  .stat:nth-child(2),.stat:nth-child(3){text-align:left}
  .met-grid{grid-template-columns:1fr}
  .push-1,.push-2{margin-top:0}
  .met-card{min-height:0;gap:16px}
  .met-card h3{margin-top:24px}
  .head-row{flex-direction:column;align-items:flex-start}
  .serv{padding-top:96px}
  .ident-grid{grid-template-columns:1fr}
  .ident-main{grid-column:auto}
  .mkt-inner{grid-template-columns:1fr;padding-left:0;gap:24px}
  .mkt-meta{display:none}
  .mkt-item summary{gap:16px;padding:26px 0}
  .acc-btn{width:42px;height:42px}
  .int-grid{grid-template-columns:1fr}
  .works-grid{grid-template-columns:1fr}
  .tags{margin-bottom:32px}
  .rev-grid{grid-template-columns:1fr}
  .rev-arch{max-width:340px}
  .faq-grid{grid-template-columns:1fr}
  .faq-card{margin-top:40px}
  .part-grid{grid-template-columns:1fr 1fr}
  .part-card{min-height:0;gap:24px}
  .part-ico{margin:16px auto}
  .hire-grid{grid-template-columns:1fr}
  .f-2col{grid-template-columns:1fr}
  .client-logos{justify-content:center;margin-top:72px}
  .foot-grid{grid-template-columns:1fr}
  .badge-wrap{margin-top:40px}
  .foot-bar{flex-wrap:wrap;justify-content:center;text-align:center}
  .bands{height:240px}
  .prize-stage{min-height:420px}
  .pol-front .art{height:200px}
  .mentions sup{margin-right:10px}
  .cert{width:190px}
  .cert-art{height:170px}
}
/* header muito estreito: só marca + burger (regra da casa) */
@media (max-width:430px){
  .menu-pill .menu-label{display:none}
  .menu-pill{padding:12px}
}

/* ============ MOVIMENTO REDUZIDO ============ */
@media (prefers-reduced-motion:reduce){
  html.anim [data-reveal],html.anim [data-hero]{opacity:1 !important;transform:none !important}
  .cert-track,.band-track,.badge-spin{animation:none !important}
  html{scroll-behavior:auto}
}
