@font-face{font-family:"Söhne";src:url("/fonts/Soehne-Buch.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Söhne";src:url("/fonts/Soehne-BuchKursiv.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Söhne";src:url("/fonts/Soehne-Kraftig.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Söhne";src:url("/fonts/Soehne-Halbfett.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Tiempos Headline";src:url("/fonts/TiemposHeadline-Light.woff2") format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"Tiempos Headline";src:url("/fonts/TiemposHeadline-Regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Tiempos Headline";src:url("/fonts/TiemposHeadline-RegularItalic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:optional}
@font-face{font-family:"Tiempos Headline";src:url("/fonts/TiemposHeadline-Medium.woff2") format("woff2");font-weight:500;font-display:swap}
:root{--blue:#1A26D9;--blue-d:#1119A6;--cyan:#AAD1DF;--charcoal:#000;--grey:#62635A;--lgrey:#A2A19E;--ghost:#EFEFEE;--noto:"Söhne",system-ui,sans-serif;--tight:var(--noto);--disp:"Tiempos Headline",Georgia,serif;--white:#fff;--line:#111;--pad:clamp(20px,4vw,56px)}
*{box-sizing:border-box}html,body{margin:0;background:var(--white);color:var(--charcoal);font-family:var(--noto);font-weight:400;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}
img{display:block;max-width:100%;height:auto}
.wrap{max-width:1360px;margin:0 auto;padding:0 var(--pad)}
.lab{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.p{font-size:18px;line-height:1.6;margin:0}
.duo,.mono{background:var(--charcoal);overflow:hidden;position:relative}.duo img,.mono img{width:100%;height:100%;object-fit:cover;filter:contrast(1.06) saturate(.92)}
.duo:after,.mono:after,.cine:after{content:"";position:absolute;inset:0;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27200%27 height=%27200%27%3E%3Cfilter id=%27n%27%3E%3CfeTurbulence type=%27fractalNoise%27 baseFrequency=%27.9%27 numOctaves=%272%27 stitchTiles=%27stitch%27/%3E%3CfeColorMatrix values=%270 0 0 0 .5 0 0 0 0 .5 0 0 0 0 .5 0 0 0 1 0%27/%3E%3C/filter%3E%3Crect width=%27100%%27 height=%27100%%27 filter=%27url(%23n)%27/%3E%3C/svg%3E");opacity:.06;mix-blend-mode:overlay}
/* ruler ticks — precision detail under section labels */
.ticks{height:8px;margin-top:14px;background:repeating-linear-gradient(90deg,currentColor 0 1px,transparent 1px 8px);-webkit-mask:linear-gradient(90deg,#000 0,#000 160px,transparent 240px);mask:linear-gradient(90deg,#000 0,#000 160px,transparent 240px);opacity:.7}
.ticks.full{-webkit-mask:none;mask:none;height:6px;opacity:.35}
.btn{display:inline-flex;align-items:center;gap:14px;background:var(--charcoal);color:#fff;font-size:13px;font-weight:400;letter-spacing:.02em;text-transform:uppercase;padding:13px 20px;border:0;cursor:pointer}
.btn:hover{background:var(--blue);color:#fff}
.btn.w{background:#fff;color:var(--blue)}.btn.w:hover{background:var(--charcoal);color:#fff}.btn.p{background:var(--blue)}.btn.p:hover{background:var(--charcoal)}
.btn.o{background:transparent;color:inherit;border:1px solid currentColor}.btn.o:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.g12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
.h{font-family:var(--tight);font-weight:500;letter-spacing:-.02em;line-height:.98;margin:0;text-transform:uppercase}
.num{font-family:var(--tight);font-size:14px;color:inherit;opacity:.85}
.chk{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}.chk li{display:flex;gap:14px;align-items:baseline;font-size:14px;font-weight:400;letter-spacing:.02em;text-transform:uppercase}.chk li:before{content:"";width:14px;height:14px;background:var(--blue);flex:none;transform:translateY(2px)}
/* nav */
.nav{background:#fff;position:sticky;top:0;z-index:10}.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:104px;gap:40px}
.nav ul{flex:1;display:flex;justify-content:space-between;gap:24px;list-style:none;margin:0;padding:0 3%;align-items:center;font-size:15px;font-weight:400;letter-spacing:.02em;text-transform:uppercase}.nav ul a:hover{color:var(--blue)}
.nav .burger{display:flex;flex-direction:column;gap:5px;width:24px;flex:none}.nav .burger i{display:block;height:1.5px;background:var(--charcoal)}
/* hero */
.hero{}
.hero .wrap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto;gap:0}
.hero .txt{grid-column:1/8;padding:72px 40px 56px 0;display:flex;flex-direction:column;justify-content:flex-end;}
.hero h1{font-family:var(--disp);font-weight:800;letter-spacing:-.04em;line-height:.97;font-size:clamp(40px,4.6vw,64px);color:var(--charcoal);margin-top:20px}.hero h1 em{font-style:normal;color:var(--blue)}
.hero .sub{margin-top:32px;max-width:560px;font-size:18px;line-height:1.6}
.hero .pic{grid-column:8/13;min-height:520px;position:relative}
.cine{grid-column:1/-1;position:relative;aspect-ratio:2.39/1;max-height:520px;overflow:hidden;background:var(--charcoal);}.cine img{width:100%;height:100%;object-fit:cover;object-position:center 35%;filter:contrast(1.08) saturate(.9)}.cine .cap{position:absolute;left:var(--pad);bottom:24px;color:#fff;display:flex;gap:24px;align-items:baseline;z-index:1}.cine .cap .lab{opacity:.8}.hero .pic .duo{position:absolute;inset:0}
.hero .pic .tag{position:absolute;left:0;bottom:0;background:#fff;padding:14px 18px;}
.hero .bar{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.hero .bar div{padding:18px 18px 18px 0;padding-left:18px;font-size:13px;line-height:1.5}.hero .bar div:first-child{border-left:0;padding-left:0}
.hero .bar2{grid-template-columns:2fr 1fr;align-items:end}.hero .bar2 .man{border-left:0;padding-left:0;font-size:18px;line-height:1.45;max-width:640px}.hero .bar2 .act{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;padding:18px 0}
.hero .bar b{display:block;font-weight:500;letter-spacing:.1em;text-transform:uppercase;font-size:11px;margin-bottom:6px;color:var(--charcoal)}
.hero .txt{position:relative}.hero .txt .num{position:absolute;right:40px;top:80px}
/* sobre */
.sobre .wrap{padding-top:112px;padding-bottom:112px}
.sobre .t{grid-column:1/6}.sobre h2{font-size:clamp(30px,3.2vw,44px);margin-top:20px}.sobre .t{position:relative}.sobre .t .num{position:absolute;right:0;top:0}.sobre h2 em{font-style:normal;color:var(--blue)}
.sobre .pics{grid-column:6/13;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:minmax(60px,auto);gap:16px;}
.sobre .pics>div{background:#fff;min-height:120px}.sobre .pics .a{grid-column:1/5;grid-row:1/3;aspect-ratio:4/3}.sobre .pics .b{grid-column:5/7;grid-row:1;aspect-ratio:1}.sobre .pics .c{grid-column:5/7;grid-row:2;padding:16px;display:flex;flex-direction:column;justify-content:flex-end;font-size:12px;line-height:1.5;color:var(--charcoal)}
/* stats */
.stats{background:#fff}.stats .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.stats .wrap>div{padding:48px 24px 40px 0;padding-left:24px;min-width:0}.stats .wrap>div:first-child{border-left:0;padding-left:0}
.stats .v{font-family:var(--disp);font-weight:700;letter-spacing:-.04em;line-height:.9;font-size:clamp(44px,5vw,72px);color:var(--charcoal)}.stats .v i{font-style:normal;color:var(--blue)}
.stats .k{margin-top:18px;font-size:13px;line-height:1.5;max-width:220px}.stats .k b{display:block;font-weight:500;letter-spacing:.1em;text-transform:uppercase;font-size:11px;color:var(--charcoal);margin-bottom:6px}
@media(max-width:900px){.stats .wrap{grid-template-columns:1fr 1fr}.stats .wrap>div:nth-child(3){border-left:0;padding-left:0}}
/* band */
.band{background:var(--blue);color:#fff;overflow:hidden;position:relative}
.band .wrap{position:relative;padding-top:96px;padding-bottom:0}
.band .t{grid-column:1/8}.band h2{font-family:var(--disp);font-weight:700;letter-spacing:-.03em;line-height:1;font-size:clamp(36px,4vw,56px);margin-top:20px}.band h2 span{display:block;font-family:var(--tight);font-weight:400;letter-spacing:-.02em;color:var(--cyan);font-size:.5em;margin-top:.2em}
.band .n{grid-column:9/13;font-size:18px;line-height:1.55;color:#fff;max-width:340px}.band .n .btn{margin-top:28px}
.band .num{grid-column:7/8;align-self:end;padding-bottom:8px}
.band .trio{grid-column:1/-1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;margin-top:64px;align-items:end}
.band .trio>div{aspect-ratio:4/3;min-width:0}.band .trio .a{grid-column:1/5;margin-bottom:64px}.band .trio .b{grid-column:5/9;margin-bottom:0}.band .trio .c{grid-column:9/13;margin-bottom:128px;aspect-ratio:1/1.1}
.band .trio .mono{background:var(--cyan)}.band .trio .mono img{width:100%;height:100%;object-fit:cover}
.logos{background:#fff}.logos .wrap{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.logos .wrap div{height:80px;display:flex;align-items:center;justify-content:center;font-family:var(--tight);font-weight:500;letter-spacing:.02em;font-size:16px;color:var(--charcoal);text-transform:uppercase}.logos .wrap div:first-child{border-left:0}
/* serviços */
.serv{position:relative;overflow:hidden;}
.serv .ghost{display:none}
.serv.l .ghost{left:var(--pad)}.serv.r .ghost{right:var(--pad)}
.serv .wrap{position:relative;padding-top:112px;padding-bottom:140px;align-items:center}
.serv .txt{grid-column:8/13}.serv.r .txt{grid-column:1/6}
.serv .pics{grid-column:1/7;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;}.serv.r .pics{grid-column:7/13}
.serv .pics>div{background:#fff}.serv .pics .a{grid-column:1/5;aspect-ratio:4/3}.serv .pics .b{grid-column:5/7;aspect-ratio:1/1.5}
.serv h2{font-size:clamp(30px,3.2vw,44px);margin-top:20px;color:var(--blue)}.serv .txt{position:relative}.serv .num{position:absolute;right:0;top:0}.serv .p{margin-top:24px;max-width:440px}
/* metodologias */
.dark{background:var(--charcoal);color:#fff}
.dark .wrap{padding-top:120px;padding-bottom:120px}
.dark .t{grid-column:1/6}.dark h2{font-family:var(--disp);font-weight:700;letter-spacing:-.03em;line-height:1;font-size:clamp(36px,4.2vw,60px)}.dark h2 span{display:block}.dark h2 .g{color:#fff;opacity:.9}.dark h2 .b{color:var(--blue)}
.dark .t .p{margin-top:32px;color:#fff;opacity:.9;max-width:460px}
.meth{grid-column:6/13;align-self:start}
.meth details{}.meth summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:20px 0;font-family:var(--tight);font-size:clamp(18px,1.8vw,24px);font-weight:500;letter-spacing:-.01em;text-transform:uppercase}
.meth summary::-webkit-details-marker{display:none}.meth summary:after{content:"+";font-weight:400;color:var(--blue);font-size:28px}.meth details[open] summary:after{content:"–"}.meth details[open] summary{color:var(--blue)}
.meth p{margin:0 0 24px;max-width:600px;font-size:18px;line-height:1.65;color:#fff;opacity:.9}
/* quote */
.quote{background:var(--blue);color:#fff}.quote .wrap{padding-top:96px;padding-bottom:96px;align-items:center}
.quote h2{grid-column:1/10;font-size:clamp(26px,2.8vw,40px);text-transform:none;font-weight:500;letter-spacing:-.02em;line-height:1.02}.quote h2 b{font-family:var(--disp);font-weight:800;letter-spacing:-.03em}.quote .act{grid-column:10/13;justify-self:end}
/* depoimentos */
.dep{position:relative;overflow:hidden;}
.dep .ghost{display:none}
.dep .wrap{position:relative;padding-top:112px;padding-bottom:112px}
.dep .t{grid-column:1/5}.dep h2{font-size:clamp(30px,3.2vw,44px);margin-top:20px}.dep h2 em{font-style:normal;color:var(--blue)}.dep .t .p{margin-top:24px;max-width:360px;color:var(--charcoal)}
.cards{grid-column:5/13;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.card{background:#fff;padding:32px;display:flex;flex-direction:column;gap:24px;min-width:0}
.card .co{font-family:var(--tight);font-size:22px;font-weight:500;letter-spacing:-.01em;text-transform:uppercase}.card blockquote{margin:0;font-size:18px;line-height:1.55;font-weight:400;flex:1}.card .stars{color:var(--blue);letter-spacing:4px;font-size:14px}.card .who{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--charcoal);line-height:1.6}
.logos.b .wrap{grid-template-columns:repeat(8,minmax(0,1fr))}.logos.b .wrap div{font-size:15px}
/* footer */
.ft{background:var(--charcoal);color:#fff;overflow:hidden}
.ft .wrap{padding-top:72px;padding-bottom:56px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:end}
.ft .lg{grid-column:1/4}.ft .ct{grid-column:4/9;display:flex;gap:56px;font-size:14px}.ft .ct b{display:block;font-weight:500;letter-spacing:.1em;text-transform:uppercase;font-size:11px;color:#fff;opacity:.9;margin-bottom:8px}
.ft ul{grid-column:9/13;list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:20px;justify-content:flex-end;color:#fff}
.ft .copy{grid-column:1/-1;padding-top:24px;color:#fff;opacity:.9}
.ft .big{font-family:var(--disp);font-size:clamp(60px,10vw,140px);font-weight:800;letter-spacing:-.03em;line-height:.78;margin:40px 0 -0.14em;white-space:nowrap;padding-left:var(--pad)}
/* degradê (toggle) — paleta: #000D30 #0024BC #024CFF #00B1FF #E3F5FF */
.gtg{position:fixed;right:16px;bottom:16px;z-index:50;display:flex;gap:16px;}.gtg button{background:#fff;border:0;padding:10px 14px;font:500 11px/1 var(--noto);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;color:var(--charcoal)}.gtg button[aria-pressed=true]{background:var(--charcoal);color:#fff}
body[data-grad] .band{background:radial-gradient(120% 120% at 100% 100%,#00B1FF 0%,#024CFF 42%,#0024BC 100%)}
body[data-grad] .quote{background:radial-gradient(90% 140% at 0% 100%,#E3F5FF 0%,#00B1FF 22%,#024CFF 55%,#0024BC 100%)}
body[data-grad] .dark,body[data-grad] .ft{background:linear-gradient(160deg,#000D30 0%,#1E1E1E 70%)}
body[data-grad] .dark h2 .b{color:#00B1FF}body[data-grad] .meth summary:after,body[data-grad] .meth details[open] summary{color:#00B1FF}
body[data-grad] .hero .pic .duo,body[data-grad] .serv .pics .a.duo,body[data-grad] .sobre .pics .b.duo{background:linear-gradient(135deg,#0024BC 0%,#024CFF 55%,#00B1FF 100%)}
@media(max-width:1180px){.nav ul{display:none}}
@media(max-width:900px){.hero .txt,.hero .pic{grid-column:1/-1;border-right:0}.hero .pic{min-height:360px}.hero .bar{grid-template-columns:1fr 1fr}.hero .bar2{grid-template-columns:1fr}.hero .bar2 .act{justify-content:flex-start}.hero .bar div:nth-child(3){border-left:0;padding-left:0}.sobre .t,.sobre .pics,.band .t,.band .n,.serv .txt,.serv .pics,.dark .t,.meth,.quote h2,.quote .act,.dep .t,.cards,.ft .lg,.ft .ct,.ft ul{grid-column:1/-1!important}.serv .pics{order:-1}.band .trio>div{grid-column:1/-1!important;margin-bottom:0!important}.band .num{grid-column:1/-1}.cards{grid-template-columns:1fr}.logos .wrap{grid-template-columns:repeat(3,1fr)!important}.logos .wrap div:nth-child(3n+1){border-left:0}.ft ul{justify-content:flex-start}}

/* v5.11 — sem linhas, tipografia contida, banners azuis */
.ticks,.num{display:none}h1,h2,h3,.h,.h em,h1 em,h2 em{font-family:var(--disp)!important;font-weight:400!important;letter-spacing:.005em!important;line-height:1.08!important}.stats .v{font-weight:400!important;letter-spacing:0!important}
.hero{background:var(--blue);color:#fff}.hero h1{color:#fff}.hero h1 em{color:var(--cyan)}.hero .sub{color:#fff;opacity:.9}.hero .lab{color:var(--cyan)!important}.hero .txt{padding-top:88px;padding-bottom:64px}
.hero .pic{margin:48px 0 0}.hero .pic .duo{background:var(--blue-d)}.hero .pic .tag{background:var(--blue-d);color:#fff}
.hero .bar2{padding:0 0 64px}.hero .bar2 .man{color:#fff;opacity:.92}.hero .bar b{color:var(--cyan)}.hero .btn.p{background:#fff;color:var(--blue)}.hero .btn.p:hover{background:var(--charcoal);color:#fff}.hero .btn.o{color:#fff;border-color:#fff}.hero .btn.o:hover{background:#fff;color:var(--blue)}
.hero .cine{margin-top:0}
/* banner CTA azul */
.banner{background:var(--blue);color:#fff}.banner .wrap{padding-top:80px;padding-bottom:80px;align-items:center}.banner .lab{grid-column:1/-1;color:var(--cyan)}.banner h2{grid-column:1/9;font-family:var(--disp);font-weight:700;letter-spacing:-.03em;line-height:1.02;font-size:clamp(30px,3.6vw,52px);margin-top:16px}.banner .act{grid-column:9/13;justify-self:end;display:flex;gap:12px;flex-wrap:wrap}
.stats{background:var(--ghost)}.stats .wrap>div{padding:56px 24px 48px 0}
.sobre .pics,.serv .pics,.cards{border:0}.sobre .pics>div,.serv .pics>div{min-height:120px}.card{background:var(--ghost)}
.logos .wrap div{color:var(--charcoal)}
@media(max-width:900px){.banner h2,.banner .act{grid-column:1/-1;justify-self:start}}

/* v5.12 — cantos arredondados nas fotos e cards (ref. 28px) */
:root{--r:28px}
.hero .pic .duo,.hero .pic,.hero .cine,.sobre .pics>div,.serv .pics>div,.dark .pic,.dark .pics>div,.card,.cards>div,.dep .pics>div,.mono,.duo,.pics>div,.pic .tag,.hero .pic .tag,.contact .pic,.pg .pic,.team>div,.team .ph{border-radius:var(--r);overflow:hidden}
.hero .pic .tag{border-radius:999px}
.pics>div img,.pic img,.duo img,.mono img,.card img{border-radius:inherit}
.nav .lang{display:flex;gap:2px;flex:none}.nav .lang button{font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--charcoal);background:none;border:1px solid transparent;padding:6px 10px;cursor:pointer;line-height:1}.nav .lang button[aria-pressed="true"]{color:var(--blue)}.nav .lang button:hover{color:var(--blue)}
/* v5.13 — sistema único de fotografia */
.duo:after,.mono:after,.cine:after{display:none}.duo img,.mono img,.cine img{filter:none}
.hero .txt{grid-column:1/-1;padding-right:0}.hero h1{max-width:960px}.hero .sub{max-width:620px}
.hero .cine{aspect-ratio:2.39/1;max-height:600px;border-radius:var(--r)}.cine img{object-position:center 40%}.cine .cap{left:24px;bottom:24px}.cine .cap .tag{background:#fff;color:var(--blue);border-radius:999px;padding:12px 18px;opacity:1;display:inline-block}
.sobre .pics{display:block;position:relative;grid-column:6/13;align-self:start}.sobre .pics .a{aspect-ratio:4/3;width:100%}.sobre .pics .c{position:absolute;left:20px;bottom:20px;min-height:0;background:#fff;color:var(--charcoal);border-radius:999px;padding:12px 20px;display:flex;flex-direction:row;align-items:baseline;gap:10px;font-size:14px;line-height:1}
.band .gal{grid-column:1/-1;display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;margin:64px calc(var(--pad)*-1) 0 0;padding:0 var(--pad) 96px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch}.band .gal::-webkit-scrollbar{display:none}
.band .gal figure{flex:0 0 clamp(240px,24vw,320px);margin:0;scroll-snap-align:start}.band .gal img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r);background:var(--blue-d)}.band .gal figcaption{margin-top:14px;font-size:14px;color:#fff;letter-spacing:.02em}
@media(max-width:900px){.band .gal figure{flex-basis:72vw}.sobre .pics{grid-column:1/-1}}
/* v5.14 — hero carrossel (família) */
.hs{position:relative;background:var(--blue);color:#fff;overflow:hidden}
.hs .slides{position:relative;height:clamp(560px,82vh,840px)}
.hs .slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease;pointer-events:none}.hs .slide.on{opacity:1;pointer-events:auto}
.hs .slide img{position:absolute;top:0;bottom:0;right:0;left:42%;width:58%;height:100%;object-fit:cover;object-position:center 30%}
.hs .slide:before{content:"";position:absolute;top:0;bottom:0;left:0;width:42%;z-index:1;background:var(--blue)}
.hs .slide:after{display:none}
.hs .slide .wrap{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:140px;padding-top:80px}
.hs .txt{max-width:calc(42vw - var(--pad) - 40px)}.hs .h{font-size:clamp(32px,3.6vw,54px);color:#fff;margin:0}.hs .h em{font-style:italic;color:var(--cyan)}
.hs .sub{margin-top:24px;max-width:520px;font-size:18px;line-height:1.6;color:#fff}
.hs .act{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}.hs .btn.p{background:#fff;color:var(--blue)}.hs .btn.p:hover{background:var(--charcoal);color:#fff}.hs .btn.o{color:#fff;border-color:#fff}.hs .btn.o:hover{background:#fff;color:var(--blue)}
.hs .ctrl{position:absolute;left:0;right:0;bottom:40px;z-index:2;display:flex;align-items:center;gap:20px}
.hs .ctrl button{width:52px;height:52px;border-radius:50%;border:1px solid #fff;background:transparent;color:#fff;font:inherit;font-size:20px;cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s}.hs .ctrl button:hover{background:#fff;color:var(--blue)}
.hs .dots{display:flex;gap:8px;align-items:center}.hs .dots i{display:block;width:8px;height:8px;border-radius:4px;background:#fff;opacity:.45;cursor:pointer;transition:width .3s,opacity .3s}.hs .dots i.on{opacity:1;width:28px}
@media(max-width:900px){.hs .slides{height:min(84vh,720px)}.hs .slide .wrap{padding-bottom:120px}.hs .slide img{left:0;width:100%;height:46%;bottom:auto}.hs .slide:before{top:46%;width:100%}.hs .txt{max-width:100%}}
/* v5.15 — banners: painel 44/56, conteúdo centrado, contador, empilha <1100px */
.hs .slides{height:clamp(600px,84vh,860px)}
.hs .slide img{left:44%;width:56%;border-radius:var(--r) 0 0 var(--r)}.hs .slide:before{width:44%}
.hs .slide .wrap{justify-content:center;padding-top:48px;padding-bottom:150px}
.hs .txt{max-width:calc(44vw - var(--pad) - 48px)}.hs .h{font-size:clamp(30px,3.4vw,56px);line-height:1.06!important}
.hs .sub{margin-top:28px;font-size:18px}.hs .act{margin-top:40px}.hs .btn{white-space:nowrap}
.hs .ctrl{bottom:48px;gap:24px}.hs .cnt{font-size:14px;letter-spacing:.06em;color:#fff;opacity:.9;min-width:64px}.hs .cnt b{font-weight:500;opacity:1}
@media(max-width:1100px){.hs .slides{height:auto;min-height:0}.hs .slide{position:relative;display:none}.hs .slide.on{display:block}.hs .slide img{position:relative;left:0;width:100%;height:min(52vw,460px);display:block;border-radius:0}.hs .slide:before{display:none}.hs .slide .wrap{height:auto;padding-top:48px;padding-bottom:120px;background:var(--blue)}.hs .txt{max-width:720px}.hs .h{font-size:clamp(30px,5vw,44px)}.hs .ctrl{bottom:36px}}
/* v5.16 — banner azul inteiro, foto menor como cartão */
.hs .slide:before{width:100%}
.hs .slide img{left:auto;right:var(--pad);top:50%;bottom:auto;transform:translateY(-50%);width:min(40vw,520px);height:min(62vh,520px);aspect-ratio:1;border-radius:var(--r);z-index:1;box-shadow:0 24px 60px rgba(0,0,0,.18)}
.hs .txt{max-width:calc(56vw - var(--pad) - 48px)}
@media(max-width:1100px){.hs .slide img{position:relative;right:auto;top:auto;transform:none;width:100%;height:min(52vw,460px);border-radius:0;box-shadow:none}.hs .txt{max-width:720px}}
/* v5.17 — páginas internas com copy do site */
.pg .lead{font-size:18px;line-height:1.6;max-width:640px;margin-top:28px}
.mv{background:var(--ghost)}.mv .wrap{padding-top:96px;padding-bottom:96px}.mv .wrap>div{grid-column:span 6}.mv h2{font-size:clamp(22px,2vw,30px);margin-top:20px;line-height:1.25!important}
.vals .wrap{padding-top:96px;padding-bottom:112px}.vals .grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:32px}.vals .grid>div{background:var(--ghost);border-radius:var(--r);padding:32px}.vals .grid b{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--blue);color:#fff;font-family:var(--disp);font-weight:400;font-size:28px}.vals h3{font-size:22px;margin:24px 0 12px}
.tabs{background:#fff;position:sticky;top:104px;z-index:5}.tabs .wrap{display:flex;gap:8px;padding-top:12px;padding-bottom:12px}.tabs a{padding:10px 18px;border-radius:999px;font-size:14px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;color:var(--charcoal);border:1px solid var(--charcoal)}.tabs a:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.svcs .wrap{padding-top:96px;padding-bottom:96px}.svcs .top{align-items:center}.svcs .t{grid-column:1/7}.svcs .t h2{color:var(--blue);font-size:clamp(30px,3.2vw,44px);margin-top:20px}.svcs .t .p{margin-top:24px;max-width:460px}.svcs .pic{grid-column:8/13;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden}.svcs .pic img{width:100%;height:100%;object-fit:cover}
.svcs .list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:56px}.svc{display:flex;flex-direction:column;gap:16px;background:var(--ghost);border-radius:var(--r);padding:28px;min-height:200px;color:var(--charcoal);transition:background .2s,color .2s}.svc h3{font-size:20px;margin:0;flex:1;line-height:1.2}.svc .more{font-size:14px;font-weight:500;letter-spacing:.02em;text-transform:uppercase}.svc:hover{background:var(--blue);color:#fff}.svc:hover .lab{color:var(--cyan)!important}
.form .chk1{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.5;text-transform:none;letter-spacing:0}.form .chk1 input{width:18px;height:18px;margin-top:2px;flex:none;border:0;padding:0;accent-color:var(--blue)}
.priv{background:var(--ghost)}.priv .wrap{padding-top:96px;padding-bottom:96px}.priv .t{grid-column:1/8}.priv .t h2{font-size:clamp(26px,2.8vw,36px)}.priv .t .p{margin-top:24px;max-width:600px}.priv .dpo{grid-column:9/13}.priv .dpo .p{margin-top:16px}.priv .dpo ul{list-style:none;margin:32px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}
.cli .wrap{padding-top:24px;padding-bottom:112px}.cli .sectors{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:72px}.cli .sectors a{padding:8px 14px;border-radius:999px;border:1px solid var(--charcoal);font-size:13px;color:var(--charcoal)}.cli .sectors a:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.cli .sec{display:grid;grid-template-columns:4fr 8fr;gap:24px;padding:40px 0;align-items:start}.cli .sec h2{font-size:clamp(20px,1.8vw,26px);margin:0;line-height:1.2!important}.cli .lg{display:flex;flex-wrap:wrap;gap:10px}.cli .lg div{padding:12px 18px;background:var(--ghost);border-radius:12px;font-size:15px;font-weight:500}
@media(max-width:900px){.mv .wrap>div,.svcs .t,.svcs .pic,.priv .t,.priv .dpo{grid-column:1/-1}.vals .grid,.svcs .list{grid-template-columns:1fr 1fr}.cli .sec{grid-template-columns:1fr}.tabs{top:0}}
@media(max-width:600px){.vals .grid,.svcs .list{grid-template-columns:1fr}}
/* v5.18 — subpáginas de serviços */
.pg .lab a{color:inherit}.pg .lab a:hover{text-decoration:underline}
.art .wrap{padding-top:64px;padding-bottom:112px;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:64px;align-items:start}
.art .body{max-width:760px}.art h3{font-size:clamp(22px,2vw,28px);margin:44px 0 14px}.art h3:first-child{margin-top:0}.art p{font-size:18px;line-height:1.65;margin:0 0 20px}
.art .body ul{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:10px}.art .body ul li{padding-left:28px;position:relative;font-size:17px;line-height:1.5}.art .body ul li:before{content:"";position:absolute;left:0;top:9px;width:10px;height:10px;border-radius:50%;background:var(--blue)}
.art ol{list-style:none;counter-reset:s;padding:0;margin:8px 0 28px;display:grid;gap:18px}.art ol li{counter-increment:s;display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;align-items:start;font-size:17px;line-height:1.55}.art ol li:before{content:"0" counter(s) ".";font-family:var(--disp);font-size:34px;color:var(--blue);line-height:1}
.art blockquote{margin:0 0 24px;padding:24px 28px;background:var(--ghost);border-radius:var(--r);font-style:italic;font-size:17px;line-height:1.6}
.art .sig{font-size:14px;color:var(--charcoal);margin-top:32px}
.art aside{position:sticky;top:128px}.art aside .box{background:var(--ghost);border-radius:var(--r);padding:28px}.art aside ul{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:12px}.art aside li a{font-size:15px;line-height:1.35;color:var(--charcoal)}.art aside li a:hover{color:var(--blue)}
@media(max-width:900px){.art .wrap{grid-template-columns:1fr;gap:40px}.art aside{position:static}}
/* v5.19 — refinamento de layout */
.serv .wrap{padding-top:96px;padding-bottom:96px}.serv .pics{display:block}.serv .pics .a{aspect-ratio:5/4;width:100%}.serv .pics .b{display:none}
.dark h2{font-size:clamp(34px,3.6vw,52px)}.dark h2 em{font-style:italic;color:var(--cyan)}.dark .wrap{padding-top:112px;padding-bottom:112px}
.dep{background:var(--ghost)}.card{background:#fff;padding:36px;gap:20px}.card .qm{font-family:var(--disp);font-size:80px;line-height:.5;color:var(--blue);display:block;height:36px}.card .co{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;color:var(--blue)}.card blockquote{font-family:var(--disp);font-size:20px;line-height:1.45;font-weight:400}.card .who{font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500}
.logos .wrap{padding-top:32px;padding-bottom:32px}.logos .wrap div{font-size:15px;letter-spacing:.08em;height:64px}
.ft .wrap{padding-top:88px;padding-bottom:40px;align-items:start;row-gap:0}.ft .lg{grid-column:1/4}.ft .cols{grid-column:4/9;display:grid;grid-template-columns:1fr 1fr;gap:24px}.ft .cols b{display:block;font-weight:500;letter-spacing:.1em;text-transform:uppercase;font-size:11px;color:#fff;margin-bottom:16px}.ft .cols a{display:block;color:#fff;font-size:15px;line-height:1.4;margin-bottom:12px}.ft .cols a:hover{color:var(--cyan)}.ft .ct{grid-column:9/13;display:grid;gap:24px;font-size:15px}
.ft .bot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;margin-top:72px}.ft .bot ul{grid-column:auto;display:flex;gap:24px;list-style:none;margin:0;padding:0;color:#fff}.ft .bot .copy{grid-column:auto;padding:0}
@media(max-width:900px){.ft .lg,.ft .cols,.ft .ct{grid-column:1/-1;margin-bottom:40px}}
/* v5.20 — foco, estados · v5.21 — sem movimento: só fades de cor ≤200ms */
.card,.svc,.vals .grid>div{transition:background .2s,color .2s}
.btn{white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.nav ul a{position:relative}.nav ul a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--blue)}.nav ul a:hover:after{right:0}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.hs :focus-visible,.banner :focus-visible,.band :focus-visible,.quote :focus-visible{outline-color:#fff}
.form .ok{grid-column:1/-1;padding:48px 0}.form .ok h3{font-size:clamp(24px,2.4vw,32px);margin-top:16px}
@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation:none!important}}
/* contraste em fundo escuro */
.dark .meth summary:after,.dark .meth details[open] summary{color:var(--cyan)}.dark h2 em{color:var(--cyan)}
