/* Fontes hospedadas junto com o site (Clash Display e Satoshi, Fontshare / Indian Type Foundry) */
@font-face{font-family:"Clash Display";src:url("fonts/clash-display-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Clash Display";src:url("fonts/clash-display-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Satoshi";src:url("fonts/satoshi-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Satoshi";src:url("fonts/satoshi-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Satoshi";src:url("fonts/satoshi-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
/* Tríade Marketing — estilos compartilhados por todas as páginas.
   Direção (briefing): editorial + tecnológico + imobiliário, neutros dominando,
   laranja com disciplina, foto e vídeo reais como protagonistas, poucos ícones. */
:root{
  --bg:#0b0b0b;--bg-2:#121211;--ink:#f3f0ea;--muted:#a19d96;--dim:#8a867f;
  --line:rgba(243,240,234,.12);--orange:#ff4503;--orange-soft:#ff7a45;
  --cream:#efebe4;--cream-ink:#141312;--cream-muted:#5f5b55;--cream-line:rgba(20,19,18,.13);
  --display:"Clash Display","Arial Narrow",system-ui,sans-serif;
  --text:"Satoshi",system-ui,-apple-system,"Segoe UI",sans-serif;
  --gutter:clamp(18px,4vw,56px);--max:1320px;--ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box}
html{background:var(--bg);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--text);font-size:17px;line-height:1.55;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,video{display:block;max-width:100%}
figure{margin:0}
::selection{background:var(--orange);color:#fff}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:4px}
[data-pendente]{display:none!important}
.wrap{width:min(var(--max),100% - var(--gutter)*2);margin-inline:auto}
.display{font-family:var(--display);font-weight:600;letter-spacing:-.02em;line-height:.96}
.kicker{display:inline-flex;align-items:center;gap:10px;font-size:.74rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.kicker::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--orange)}
.skip{position:fixed;left:16px;top:-60px;z-index:400;background:var(--orange);color:#fff;padding:10px 16px;border-radius:999px;font-weight:700;transition:top .2s}
.skip:focus{top:16px}

/* Botões e links */
.btn{display:inline-flex;align-items:center;gap:12px;padding:16px 24px;border-radius:999px;font-weight:700;font-size:.98rem;line-height:1.2;transition:transform .3s var(--ease),background .3s,color .3s,border-color .3s;white-space:nowrap;border:0;cursor:pointer;font-family:inherit}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--orange);color:#fff}
.btn-primary:hover{background:#ff5a1f}
.btn-ghost{border:1px solid rgba(243,240,234,.35);color:var(--ink);background:transparent}
.btn-ghost:hover{background:var(--ink);color:var(--bg)}
.btn-dark{background:var(--cream-ink);color:#fff}
.btn .arr{transition:transform .3s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.link{display:inline-flex;align-items:center;gap:10px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:4px;transition:color .2s,gap .3s var(--ease)}
.link:hover{color:var(--orange);gap:14px}

/* Seções */
.sec{padding:clamp(90px,11vw,150px) 0;position:relative}
.sec.line{border-top:1px solid var(--line)}
.light{background:var(--cream);color:var(--cream-ink)}
.light .kicker{color:var(--cream-muted)}
.light .muted,.light .sec-head p{color:var(--cream-muted)}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px 60px;flex-wrap:wrap;margin-bottom:clamp(36px,5vw,64px)}
.sec-head h2{font-size:clamp(2rem,4.6vw,4.2rem);margin:18px 0 0;max-width:17ch}
.sec-head p{max-width:42ch;color:var(--muted);margin:0}
.muted{color:var(--muted)}

/* Cabeçalho */
.hdr{position:fixed;inset:0 0 auto;z-index:200;transition:background .4s,border-color .4s,transform .4s var(--ease);border-bottom:1px solid transparent}
.hdr.solid{background:rgba(11,11,11,.88);backdrop-filter:blur(16px) saturate(140%);border-color:var(--line)}
.hdr.hide{transform:translateY(-100%)}
.hdr-in{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo img{height:32px;width:auto}
.nav{display:flex;gap:30px;font-size:.95rem;font-weight:500}
.nav a{position:relative;color:rgba(243,240,234,.8);transition:color .2s}
.nav a:hover,.nav a[aria-current="page"]{color:#fff}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1.5px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.hdr-cta{padding:12px 20px;font-size:.92rem}
.burger{display:none;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;position:relative}
.burger span{position:absolute;left:14px;right:14px;height:1.5px;background:currentColor;transition:transform .3s var(--ease),top .3s var(--ease)}
.burger span:nth-child(1){top:18px}.burger span:nth-child(2){top:26px}
.menu-open .burger span:nth-child(1){top:22px;transform:rotate(45deg)}
.menu-open .burger span:nth-child(2){top:22px;transform:rotate(-45deg)}
.mmenu{position:fixed;inset:0;z-index:190;background:var(--bg);display:flex;flex-direction:column;justify-content:flex-end;padding:110px var(--gutter) 40px;clip-path:inset(0 0 100% 0);transition:clip-path .6s var(--ease);visibility:hidden}
.menu-open .mmenu{clip-path:inset(0 0 0 0);visibility:visible}
.mmenu a{font-family:var(--display);font-size:clamp(2.2rem,10vw,3.6rem);font-weight:600;line-height:1.1;border-bottom:1px solid var(--line);padding:10px 0}
.mmenu a[aria-current="page"]{color:var(--orange)}
.mmenu .mm-foot{margin-top:28px;display:flex;justify-content:space-between;color:var(--muted);font-size:.9rem}
.mmenu .mm-foot a{font:inherit;border:0;padding:0}
.menu-open{overflow:hidden}

/* Hero da home: showreel + logo 3D com parallax */
.hero{position:relative;height:100svh;min-height:620px;overflow:hidden;isolation:isolate}
.hero-media{position:absolute;inset:-6% 0;z-index:-3;will-change:transform}
.hero-media video{width:100%;height:100%;object-fit:cover;filter:saturate(.85) brightness(.68) contrast(1.05)}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(11,11,11,.6) 0%,rgba(11,11,11,.2) 28%,rgba(11,11,11,.5) 60%,rgba(11,11,11,.97) 100%),linear-gradient(90deg,rgba(11,11,11,.6),transparent 65%)}
.hero-shade{position:absolute;inset:0;z-index:-1;background:var(--bg);opacity:0;pointer-events:none}
.hero-t{position:absolute;right:max(var(--gutter),5vw);top:15%;width:clamp(140px,18vw,280px);z-index:1;pointer-events:none;will-change:transform}
.hero-t img{width:100%;height:auto;filter:drop-shadow(0 40px 50px rgba(0,0,0,.55)) drop-shadow(0 0 40px rgba(255,69,3,.25))}
.hero-t .flame{position:absolute;left:50%;top:92%;width:22%;height:42%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at 50% 0%,rgba(255,180,120,.75),rgba(255,69,3,.35) 40%,transparent 72%);filter:blur(10px);opacity:.85;animation:thrust 1.4s ease-in-out infinite alternate}
@keyframes thrust{to{height:58%;opacity:.55}}
.hero-float{animation:hover 6s ease-in-out infinite}
@keyframes hover{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-14px) rotate(2deg)}}
.hero-copy{position:absolute;left:0;right:0;bottom:clamp(40px,8vh,80px);z-index:2}
.hero h1{font-size:clamp(2.3rem,4.7vw,4.6rem);margin:18px 0 22px}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.05em}
.hero h1 .ln>span{display:inline-block}
.hero h1 .o{color:var(--orange)}
.hero-lead{max-width:520px;margin:0 0 30px;color:rgba(243,240,234,.86);font-size:clamp(1rem,1.2vw,1.12rem)}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}

/* Hero das páginas internas */
.phero{position:relative;padding:clamp(150px,20vh,210px) 0 clamp(60px,8vw,100px);overflow:hidden;isolation:isolate;border-bottom:1px solid var(--line)}
.phero.has-img{min-height:78svh;display:flex;align-items:flex-end}
.phero-media{position:absolute;inset:-10% 0;z-index:-2;will-change:transform}
.phero-media img,.phero-media video{width:100%;height:100%;object-fit:cover;filter:saturate(.85) brightness(.6)}
.phero.has-img::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,11,11,.55),rgba(11,11,11,.25) 40%,rgba(11,11,11,.95))}
.phero h1{font-size:clamp(2.4rem,6vw,5.8rem);margin:18px 0 22px;max-width:16ch}
.phero p.lead{max-width:56ch;color:rgba(243,240,234,.86);margin:0;font-size:clamp(1rem,1.25vw,1.15rem)}

/* Logos de clientes */
.clients{border-block:1px solid var(--line);overflow:hidden;padding:26px 0}
.clients-track{display:flex;width:max-content;animation:marq 40s linear infinite}
.clients:hover .clients-track{animation-play-state:paused}
.clients-group{display:flex;align-items:center;gap:clamp(48px,6vw,88px);list-style:none;margin:0;padding:0 clamp(24px,3vw,44px)}
.clients-group li{flex:none;width:calc(var(--w) * 1px)}
.clients-group img{width:100%;height:auto;opacity:.55;transition:opacity .3s}
.clients-group li:hover img{opacity:1}
@keyframes marq{to{transform:translateX(-50%)}}

/* Núcleos (home): Estratégia & Lançamentos com mais peso */
.cores{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,5vw,80px);align-items:stretch}
.core-main{position:relative;border-radius:22px;overflow:hidden;min-height:520px;display:flex;align-items:flex-end;isolation:isolate}
.core-main img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;z-index:-2;will-change:transform}
.core-main::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,11,11,.1) 30%,rgba(11,11,11,.92))}
.core-main-in{padding:clamp(24px,3vw,40px)}
.core-main .n{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--orange-soft)}
.core-main h3{font-family:var(--display);font-weight:600;font-size:clamp(2rem,3.6vw,3.4rem);line-height:.98;margin:10px 0 12px}
.core-main p{margin:0 0 20px;color:rgba(243,240,234,.86);max-width:42ch}
.core-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);align-self:end}
.core-list li{display:grid;grid-template-columns:44px 1fr;gap:4px 16px;padding:22px 0;border-bottom:1px solid var(--line)}
.core-list .n{grid-row:span 2;color:var(--dim);font-size:.85rem;font-weight:700;padding-top:6px}
.core-list h3{font-family:var(--display);font-weight:600;font-size:clamp(1.3rem,1.9vw,1.75rem);line-height:1.05;margin:0}
.core-list p{margin:0;color:var(--muted);font-size:.95rem}

/* Fluxo de lançamento: acompanha o scroll */
.flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);position:relative;counter-reset:f}
.flow::before{content:"";position:absolute;left:0;right:0;top:15px;height:2px;background:var(--cream-line)}
.flow .flow-bar{position:absolute;left:0;top:15px;height:2px;width:100%;padding:0;background:var(--orange);transform-origin:left;transform:scaleX(0)}
.flow .flow-bar::before{display:none}
.flow li{position:relative;padding-top:48px;padding-right:12px;transition:opacity .4s}
.flow li::before{content:"";position:absolute;left:0;top:6px;width:20px;height:20px;border-radius:50%;background:var(--cream);border:2px solid rgba(20,19,18,.25);transition:background .3s,border-color .3s,transform .3s}
.flow li.on::before{background:var(--orange);border-color:var(--orange);transform:scale(1.15)}
.flow b{display:block;font-family:var(--display);font-weight:600;font-size:clamp(1.05rem,1.6vw,1.5rem);line-height:1.05}
.flow span{display:block;margin-top:6px;font-size:.85rem;color:var(--cream-muted);max-width:18ch}
.flow-cta{margin-top:clamp(40px,5vw,64px);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.flow-cta p{margin:0;max-width:52ch;color:var(--cream-muted)}

/* Números (indicadores grandes e simples) */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.stat{background:var(--bg-2);padding:clamp(18px,2vw,26px)}
.stat b{display:block;font-family:var(--display);font-weight:600;font-size:clamp(1.9rem,3.6vw,3.3rem);line-height:1;color:var(--orange);white-space:nowrap}
.stat span{display:block;margin-top:8px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.stat.sm b{font-size:clamp(1.4rem,2.3vw,2.1rem);color:var(--ink)}
.stats.on-bg .stat{background:var(--bg)}
.stats .stat:nth-child(5):last-child{grid-column:span 2}
@media(max-width:640px){.stats .stat:nth-child(5):last-child{grid-column:auto}}

/* Cases na home */
.case-feat{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(30px,5vw,80px);align-items:center;margin-bottom:clamp(40px,5vw,70px)}
.case-feat h3{font-family:var(--display);font-weight:600;font-size:clamp(2rem,4vw,3.6rem);line-height:.98;margin:14px 0 14px}
.case-feat .lead{color:var(--muted);margin:0 0 28px;max-width:46ch}
.case-media{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/5;background:#1a1918}
.case-media img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;will-change:transform}
.case-media figcaption{position:absolute;left:18px;bottom:16px;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:#fff;text-shadow:0 1px 10px rgba(0,0,0,.7)}
.cases-2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,1.6vw,24px)}
.case-card{display:block;border-top:1px solid var(--line);padding-top:22px}
.case-card .img{aspect-ratio:16/10;border-radius:18px;overflow:hidden;margin-bottom:20px}
.case-card .img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.case-card:hover .img img{transform:scale(1.04)}
.case-card .meta{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);font-weight:700}
.case-card h3{font-family:var(--display);font-weight:600;font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.02;margin:8px 0 8px}
.case-card p{margin:0;color:var(--muted)}
.case-card .hl{color:var(--orange);font-weight:700}

/* Para quem fazemos: colunas de texto, sem caixas */
.who{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,40px)}
.who article{border-top:2px solid var(--cream-ink);padding-top:22px}
.who h3{font-family:var(--display);font-weight:600;font-size:clamp(1.25rem,1.7vw,1.55rem);line-height:1.08;margin:0 0 10px}
.who p{margin:0;color:var(--cream-muted);font-size:.97rem}

/* Bastidores + CTA final */
.backstage{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:clamp(10px,1.4vw,20px);margin-bottom:clamp(50px,6vw,90px)}
.backstage figure{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:3/4;background:#1a1918}
.backstage figure:nth-child(2){aspect-ratio:auto;margin-top:clamp(30px,5vw,70px)}
.backstage img{width:100%;height:100%;object-fit:cover}
.backstage figcaption{position:absolute;left:14px;bottom:12px;font-size:.78rem;font-weight:500;text-shadow:0 1px 10px rgba(0,0,0,.7)}
.final{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(30px,5vw,80px);align-items:end}
.final h2{font-size:clamp(2.3rem,5.4vw,5rem);margin:18px 0 0}
.final p{margin:0 0 26px;color:var(--muted);font-size:1.08rem}

/* Blocos editoriais (páginas internas) */
.ed{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,100px);align-items:center;padding:clamp(60px,8vw,110px) 0;border-top:1px solid var(--line)}
.ed:first-child{border-top:0}
.ed.rev .ed-media{order:2}
.ed-media{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:5/4;background:#1a1918}
.ed-media img,.ed-media video{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;will-change:transform}
.ed .n{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--orange)}
.ed h2{font-family:var(--display);font-weight:600;font-size:clamp(2rem,4vw,3.6rem);line-height:.98;margin:12px 0 16px}
.ed p{margin:0 0 22px;color:var(--muted);max-width:46ch}
.ed.big h2{font-size:clamp(2.4rem,5vw,4.6rem)}
.bul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.bul li{padding:14px 0;border-bottom:1px solid var(--line);display:flex;gap:14px;align-items:baseline}
.bul li::before{content:"";flex:none;width:10px;height:2px;background:var(--orange);transform:translateY(-4px)}
.light .bul,.light .bul li{border-color:var(--cream-line)}

/* Lista numerada (dores, princípios) */
.nlist{display:grid;grid-template-columns:repeat(2,1fr);gap:0 clamp(30px,5vw,80px);list-style:none;margin:0;padding:0;border-top:1px solid var(--cream-line)}
.nlist li{display:grid;grid-template-columns:60px 1fr;gap:4px 16px;padding:26px 0;border-bottom:1px solid var(--cream-line)}
.nlist .n{grid-row:span 2;font-family:var(--display);font-size:1.6rem;color:var(--orange);line-height:1}
.nlist h3{font-family:var(--display);font-weight:600;font-size:clamp(1.25rem,1.8vw,1.6rem);line-height:1.08;margin:0}
.nlist p{margin:0;color:var(--cream-muted)}
.dark .nlist,.dark .nlist li{border-color:var(--line)}
.dark .nlist p{color:var(--muted)}

/* Método com etapas */
.method{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,7vw,110px)}
.method-sticky{position:sticky;top:120px;align-self:start}
.method-sticky h2{font-size:clamp(2.2rem,4.6vw,4.2rem);margin:18px 0 18px}
.steps{position:relative;list-style:none;margin:0;padding:0 0 0 46px}
.steps::before{content:"";position:absolute;left:11px;top:10px;bottom:10px;width:2px;background:var(--line)}
.light .steps::before{background:var(--cream-line)}
.steps .bar{position:absolute;left:11px;top:10px;width:2px;height:calc(100% - 20px);background:var(--orange);transform-origin:top;transform:scaleY(0);list-style:none}
.step{position:relative;padding:0 0 clamp(36px,5vw,60px)}
.step:last-child{padding-bottom:0}
.step::before{content:"";position:absolute;left:-46px;top:6px;width:24px;height:24px;border-radius:50%;background:var(--bg);border:2px solid rgba(243,240,234,.25);transition:background .3s,border-color .3s}
.light .step::before{background:var(--cream);border-color:rgba(20,19,18,.2)}
.step.on::before{background:var(--orange);border-color:var(--orange)}
.step .n{font-size:.8rem;letter-spacing:.16em;font-weight:700;color:var(--orange)}
.step h3{font-family:var(--display);font-weight:600;font-size:clamp(1.6rem,2.8vw,2.4rem);line-height:1;margin:6px 0 8px}
.step p{margin:0;color:var(--muted)}
.light .step p{color:var(--cream-muted)}

/* Case completo (página Cases) */
.cs{padding:clamp(70px,9vw,130px) 0;border-top:1px solid var(--line)}
.cs-head{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,80px);align-items:end;margin-bottom:clamp(30px,4vw,56px)}
.cs-head h2{font-family:var(--display);font-weight:600;font-size:clamp(2.3rem,5vw,4.6rem);line-height:.96;margin:14px 0 0}
.cs-head p{margin:0;color:var(--muted)}
.cs-gallery{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:clamp(10px,1.2vw,16px);margin-bottom:clamp(30px,4vw,56px)}
.cs-gallery figure{border-radius:18px;overflow:hidden;aspect-ratio:3/4;background:#1a1918}
.cs-gallery figure:first-child{aspect-ratio:auto}
.cs-gallery img,.cs-gallery video{width:100%;height:100%;object-fit:cover}
.cs-story{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,40px)}
.cs-story.three{grid-template-columns:1fr 1fr 1.4fr}
.cs-gallery.two{grid-template-columns:1.6fr 1fr}
.cs-gallery.one{grid-template-columns:1fr}
.cs-gallery.one figure{aspect-ratio:21/9}
.cs-story div{border-top:2px solid var(--line);padding-top:18px}
.cs-story h3{font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin:0 0 10px}
.cs-story p{margin:0;color:rgba(243,240,234,.85)}
.quote{font-family:var(--display);font-weight:500;font-size:clamp(1.5rem,2.6vw,2.4rem);line-height:1.12;margin:0}
.quote cite{display:block;margin-top:14px;font-family:var(--text);font-style:normal;font-size:.9rem;color:var(--muted)}

/* Grade de projetos */
.proj-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,20px)}
.proj{border-top:1px solid var(--line);padding-top:18px}
.proj .img{aspect-ratio:16/11;border-radius:16px;overflow:hidden;margin-bottom:16px}
.proj .img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.proj:hover .img img{transform:scale(1.04)}
.proj h3{font-family:var(--display);font-weight:600;font-size:1.3rem;line-height:1.1;margin:0}
.proj .place{display:block;color:var(--muted);font-size:.88rem;margin-top:4px}
.tags{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:12px 0 0;padding:0}
.tags li{font-size:.72rem;font-weight:700;padding:5px 10px;border-radius:999px;border:1px solid var(--line);color:rgba(243,240,234,.85)}

/* Como contratar */
.hire-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.4vw,20px)}
.hire-card{border:1px solid var(--line);border-radius:20px;padding:clamp(26px,2.6vw,38px);display:flex;flex-direction:column;gap:14px}
.hire-card.featured{background:var(--orange);border-color:var(--orange);color:#fff}
.hire-tag{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--orange-soft)}
.featured .hire-tag{color:rgba(255,255,255,.85)}
.hire-card h3{font-family:var(--display);font-weight:600;font-size:clamp(1.5rem,2.1vw,2rem);line-height:1;margin:0}
.hire-card p{margin:0;color:var(--muted)}
.featured p{color:rgba(255,255,255,.9)}
.hire-card .btn{margin-top:auto;align-self:flex-start;white-space:normal}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,100px)}
.faq-grid h2{font-size:clamp(2rem,4.2vw,3.8rem);margin:18px 0 0}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-family:var(--display);font-weight:500;font-size:clamp(1.1rem,1.6vw,1.4rem)}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";color:var(--orange);font-size:1.6rem;flex:none;transition:transform .3s var(--ease)}
.faq-list details[open] summary::after{transform:rotate(45deg)}
.faq-list details p{margin:0 0 22px;color:var(--muted);max-width:58ch}

/* Contato */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,6vw,100px)}
.wa-card{margin-top:30px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border:1px solid var(--line);border-radius:18px;transition:border-color .3s,background .3s}
.wa-card:hover{border-color:var(--orange);background:rgba(255,69,3,.06)}
.wa-card small{display:block;color:var(--dim);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase}
.wa-card b{font-family:var(--display);font-size:1.6rem;font-weight:600}
.form{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.field{display:flex;flex-direction:column;gap:8px}
.field.full,.consent,.form-foot,.form-status{grid-column:1/-1}
.field label{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700}
.field input,.field select,.field textarea{font:inherit;font-size:1rem;color:var(--ink);background:transparent;border:0;border-bottom:1px solid rgba(243,240,234,.25);padding:10px 0 12px;border-radius:0;outline:none;transition:border-color .3s}
.field select{appearance:none;background:linear-gradient(45deg,transparent 50%,var(--muted) 50%) right 6px center/6px 6px no-repeat,linear-gradient(-45deg,transparent 50%,var(--muted) 50%) right 0 center/6px 6px no-repeat}
.field select option{background:var(--bg);color:var(--ink)}
.field textarea{min-height:100px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--orange)}
.field input:user-invalid,.field select:user-invalid{border-color:#ff6b57}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:.88rem;color:var(--muted);margin-top:6px}
.consent input{width:18px;height:18px;margin-top:3px;flex:none;accent-color:var(--orange)}
.consent a{color:var(--ink);text-decoration:underline}
.form-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:10px}
.form-foot .note{color:var(--dim);font-size:.85rem;max-width:34ch}
.form-status{margin:0;color:var(--orange-soft);min-height:1.3em}

/* Faixa de CTA reutilizável */
.cta-band{display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap;padding:clamp(28px,4vw,52px);border-radius:24px;background:var(--orange);color:#fff}
.cta-band h2{font-size:clamp(1.8rem,3.6vw,3.2rem);margin:0;max-width:20ch}

/* Página de texto (política de privacidade) */
.text-page{max-width:780px}
.text-page h2{font-family:var(--display);font-weight:600;font-size:1.5rem;margin:44px 0 12px}
.text-page p,.text-page li{color:var(--muted);line-height:1.7}
.text-page a{color:var(--orange-soft);text-decoration:underline}

/* Rodapé */
.ftr{border-top:1px solid var(--line);padding:clamp(50px,7vw,80px) 0 30px}
.ftr-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;color:var(--muted);font-size:.95rem}
.ftr-grid img{height:32px;width:auto;margin-bottom:16px}
.ftr-col{display:flex;flex-direction:column;gap:10px}
.ftr-col span{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-weight:700}
.ftr-col a:hover{color:var(--ink)}
.ftr-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:50px;padding-top:22px;border-top:1px solid var(--line);color:var(--dim);font-size:.82rem}
.wa-float{position:fixed;right:20px;bottom:20px;z-index:180;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.4);opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .4s,visibility .4s,transform .4s var(--ease)}
.past-hero .wa-float{opacity:1;visibility:visible;transform:none}
.wa-float svg{width:28px;height:28px}
.menu-open .wa-float{display:none}

/* Responsivo */
@media(max-width:1024px){
  .nav,.hdr-cta{display:none}
  .burger{display:block}
  .cores,.case-feat,.final,.ed,.method,.faq-grid,.contact-grid,.cs-head{grid-template-columns:1fr}
  .ed.rev .ed-media{order:0}
  .method-sticky{position:relative;top:auto}
  .who{grid-template-columns:1fr 1fr}
  .proj-grid,.hire-grid{grid-template-columns:1fr 1fr}
  .cs-story,.cs-story.three{grid-template-columns:1fr 1fr}
  .core-main{min-height:420px}
  .case-media{aspect-ratio:16/11}
  /* Fluxo vira vertical */
  .flow{grid-template-columns:1fr;padding-left:40px}
  .flow::before,.flow .flow-bar{left:9px;right:auto;top:0;bottom:0;width:2px;height:auto}
  .flow .flow-bar{height:100%;transform-origin:top;transform:scaleY(0);padding:0}
  .flow li{padding:0 0 26px}
  .flow li::before{left:-40px;top:2px}
  .flow span{max-width:none}
}
@media(max-width:820px){
  .hero-t{top:13%;width:clamp(110px,28vw,170px)}
  .hire-grid,.cases-2{grid-template-columns:1fr}
  .backstage{grid-template-columns:1fr 1fr}
  .backstage figure:nth-child(2){display:none}
  .cs-gallery{grid-template-columns:1fr 1fr}
  .cs-gallery figure:first-child{grid-column:1/-1;aspect-ratio:16/10}
  .nlist{grid-template-columns:1fr}
}
@media(max-width:640px){
  body{font-size:16px}
  .hdr-in{height:68px}
  .logo img{height:27px}
  .who,.proj-grid,.cs-story,.cs-story.three{grid-template-columns:1fr}
  .cs-gallery.one figure{aspect-ratio:16/10}
  .stats{grid-template-columns:1fr 1fr}
  .stats .stat:first-child{grid-column:1/-1}
  .form{grid-template-columns:1fr}
  .ftr-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important}
}

/* ============================================================
   ATMOSFERA — mesmos recursos visuais do protótipo original
   (brilhos laranja, textura granulada, grade, cards em degradê,
   linha antes dos rótulos e pílulas)
   ============================================================ */
body{background:radial-gradient(circle at 15% -10%,rgba(255,100,31,.12),transparent 28%),var(--bg)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.035;mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E")}

/* Rótulo com linha em degradê (no lugar do ponto) */
.kicker::before{width:26px;height:1px;border-radius:0;background:linear-gradient(90deg,var(--orange),transparent)}

/* Hero: brilho laranja + linhas verticais */
.hero::before{background:
  radial-gradient(ellipse at 76% 42%,rgba(255,92,18,.23) 0%,rgba(255,92,18,.09) 27%,transparent 57%),
  linear-gradient(180deg,rgba(11,11,11,.6) 0%,rgba(11,11,11,.2) 28%,rgba(11,11,11,.5) 60%,rgba(11,11,11,.97) 100%),
  linear-gradient(90deg,rgba(11,11,11,.6),transparent 65%)}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.025) 50%,transparent 100%),repeating-linear-gradient(90deg,transparent 0 119px,rgba(255,255,255,.03) 120px 121px);
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.9),transparent 94%);mask-image:linear-gradient(180deg,rgba(0,0,0,.9),transparent 94%)}

/* Hero das páginas internas: brilho + grade quadriculada */
.phero:not(.has-img){background:
  radial-gradient(ellipse at 78% 30%,rgba(255,100,24,.22),rgba(255,100,24,.05) 34%,transparent 60%),
  radial-gradient(circle at 18% 20%,rgba(255,106,31,.07),transparent 28%),
  linear-gradient(120deg,#040404,#090808 56%,#050505)}
.phero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.24;
  background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:72px 72px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 24%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 24%,#000 91%,transparent)}

/* Esferas de luz laranja atrás das seções escuras */
.glow-r,.glow-l{overflow:clip;isolation:isolate}
.glow-r::after,.glow-l::after{content:"";position:absolute;z-index:-1;width:min(640px,80vw);aspect-ratio:1;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(255,95,23,.17),rgba(255,95,23,.05) 40%,transparent 70%);filter:blur(18px)}
.glow-r::after{right:-220px;top:4%}
.glow-l::after{left:-260px;bottom:-10%}

/* Seções claras com calor laranja nos cantos */
.light{background:radial-gradient(circle at 92% 0%,rgba(255,69,3,.09),transparent 38%),radial-gradient(circle at 0% 100%,rgba(255,69,3,.05),transparent 32%),var(--cream)}

/* Cards em degradê */
.stat{background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),var(--bg-2)}
.stats.on-bg .stat{background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012)),var(--bg)}
.hire-card:not(.featured){background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.015))}
.hire-card.featured,.cta-band{background:linear-gradient(135deg,#ff8c4b 0%,var(--orange) 52%,#c93b00 100%);box-shadow:0 30px 80px rgba(255,76,7,.16)}
.cta-band{position:relative;overflow:hidden;isolation:isolate}
.cta-band::before,.cta-band::after{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:-1}
.cta-band::before{width:620px;height:620px;right:-200px;top:-360px;border:1px solid rgba(0,0,0,.14)}
.cta-band::after{width:420px;height:420px;right:-90px;top:-250px;border:1px solid rgba(255,255,255,.22)}
.wa-card{border-color:rgba(255,100,31,.28);background:linear-gradient(180deg,rgba(255,100,31,.08),rgba(255,100,31,.02))}
.btn-primary{background:linear-gradient(135deg,#ff8c4b 0%,var(--orange) 52%,#d94800 100%);box-shadow:0 16px 50px rgba(255,91,19,.18)}
.btn-primary:hover{background:linear-gradient(135deg,#ff9a5e 0%,#ff5a1f 52%,#e05000 100%)}
.core-main{box-shadow:0 30px 80px rgba(0,0,0,.35)}
.case-media,.ed-media{box-shadow:0 30px 80px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.08)}

/* Pílulas (tags) */
.tags{gap:8px}
.tags li,.chips span{display:inline-flex;align-items:center;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;padding:8px 11px;border-radius:999px;border:1px solid var(--line);color:#b9b9bf;background:rgba(255,255,255,.025)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.light .chips span,.light .tags li{border-color:var(--cream-line);color:var(--cream-muted);background:rgba(20,19,18,.03)}

/* Linha de prova com traço em degradê (rodapé do hero) */
.proof-line{display:flex;align-items:center;gap:15px;margin:34px 0 0;color:#8a8a90;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.115em}
.proof-line::before{content:"";flex:none;width:42px;height:1px;background:linear-gradient(90deg,var(--orange),rgba(255,106,0,.15))}
@media(max-width:640px){.proof-line{font-size:.6rem;letter-spacing:.09em;line-height:1.6}}
/* Fluxo de lançamento: ícone da Tríade percorre a linha e acende cada etapa */
.flow .flow-rocket{position:absolute;left:0;top:16px;width:64px;height:64px;padding:0;z-index:3;opacity:0;pointer-events:none;will-change:transform}
.flow .flow-rocket::before{display:none}
.flow .flow-rocket.ready{opacity:1}
.rocket-in{position:absolute;inset:0;display:block;animation:rocketBob 1.6s ease-in-out infinite}
.rocket-in img{width:100%;height:auto;position:relative;z-index:1;filter:drop-shadow(0 10px 18px rgba(0,0,0,.25)) drop-shadow(0 0 14px rgba(255,69,3,.35))}
.rocket-flame{position:absolute;left:50%;top:86%;width:26%;height:60%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at 50% 0%,rgba(255,190,130,.95),rgba(255,69,3,.55) 40%,transparent 72%);filter:blur(5px);animation:thrust 1s ease-in-out infinite alternate}
@keyframes rocketBob{50%{transform:translateY(-3px)}}
.flow li{transition:opacity .4s}
.flow li.on b{color:var(--cream-ink)}
@media(max-width:1024px){.flow .flow-rocket{left:10px;top:0;width:46px;height:46px}}
/* Fluxo vertical: etapas empilhadas de baixo (Produto) para cima (Comercial); o ícone sobe */
.sec.lanc{padding:clamp(80px,10vw,130px) 0}
.lanc-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,120px);align-items:center}
.lanc-copy h2{font-size:clamp(2.1rem,4.4vw,4rem);margin:18px 0 18px}
.lanc-copy p{color:var(--cream-muted);max-width:44ch;margin:0 0 30px}
.flow.flow-v{display:flex;flex-direction:column-reverse;gap:clamp(12px,2.2vh,24px);padding:10px 0 10px 72px;grid-template-columns:none}
.flow.flow-v::before{left:27px;right:auto;top:20px;bottom:20px;width:2px;height:auto}
.flow.flow-v .flow-bar{left:27px;right:auto;top:20px;bottom:20px;width:2px;height:auto;transform-origin:bottom;transform:scaleY(0)}
.flow.flow-v li{padding:0}
.flow.flow-v li:not(.flow-bar):not(.flow-rocket)::before{left:-55px;top:3px}
.flow.flow-v b{font-size:clamp(1.25rem,1.9vw,1.7rem)}
.flow.flow-v span{max-width:none;margin-top:2px}
.flow.flow-v .flow-rocket{left:28px;top:0;width:clamp(54px,5vw,72px);height:clamp(54px,5vw,72px)}
@media(max-width:1024px){
  .lanc-grid{grid-template-columns:1fr}
  .flow.flow-v{padding-left:64px}
  .flow.flow-v::before,.flow.flow-v .flow-bar{left:23px}
  .flow.flow-v li:not(.flow-bar):not(.flow-rocket)::before{left:-51px}
  .flow.flow-v .flow-rocket{left:24px;width:48px;height:48px}
}
/* Hero: trajetória que liga o slogan ao logo (o "T" decola do "à venda.") */
.hero-path{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:visible}
.hero-path .trail{fill:none;stroke:url(#trailGrad);stroke-width:2.2;stroke-linecap:round;stroke-dasharray:1.5 11;animation:trailFlow .9s linear infinite}
.hero-path .trail-glow{fill:none;stroke:rgba(255,69,3,.28);stroke-width:7;filter:blur(5px)}
.hero-path .trail-mask{stroke-dasharray:4000;stroke-dashoffset:0}
@keyframes trailFlow{to{stroke-dashoffset:-12.5}}
.launch-pad{position:absolute;left:0;top:0;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--orange);z-index:2;pointer-events:none;box-shadow:0 0 14px rgba(255,69,3,.8);opacity:0}
.launch-pad::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:1px solid rgba(255,69,3,.6);animation:padPulse 1.8s ease-out infinite}
.launch-pad.on{opacity:1}
@keyframes padPulse{from{transform:scale(.5);opacity:1}to{transform:scale(1.8);opacity:0}}@media(max-width:640px){.hero-t{right:-4px;width:92px;top:11%}}
/* Conversão: prova na primeira dobra + oferta de entrada */
.hero-stat{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin-top:30px;font-size:.98rem;color:rgba(243,240,234,.82);transition:color .2s}
.hero-stat::before{content:"";flex:none;width:42px;height:1px;margin-right:8px;background:linear-gradient(90deg,var(--orange),rgba(255,106,0,.15))}
.hero-stat b{font-family:var(--display);font-weight:600;font-size:1.2rem;color:#fff}
.hero-stat span{color:var(--muted);font-size:.85rem}
.hero-stat:hover b{color:var(--orange-soft)}
.offer{max-width:520px;justify-self:end}
.offer h3{font-size:clamp(1.7rem,2.6vw,2.4rem)}
@media(max-width:1024px){.offer{justify-self:stretch;max-width:none}}
/* Campo anti-robô (invisível para pessoas) */
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* ============================================================
   AJUSTES VISUAIS (revisão crítica)
   1) leitura confortável  2) menos efeito  3) fotos com o mesmo tratamento de cor
   ============================================================ */

/* 1. Leitura: mais contraste e tamanho mínimo para textos pequenos */
:root{--muted:#bab6af;--dim:#9c988f;--cream-muted:#4f4b46}
.sec-head p,.muted,.case-feat .lead,.ed p,.core-list p,.case-card p,.proj .place,.hire-card p,.faq-list details p,.step p,.text-page p{line-height:1.6}
.kicker{font-size:.78rem}
.proof-line{font-size:.78rem;color:#a9a59e}
.stat span{font-size:.82rem}
.tags li,.chips span{font-size:.74rem}
.case-card .meta,.hire-tag{font-size:.8rem}
.flow span{font-size:.92rem}
.ftr-col span{font-size:.76rem}
.wa-card small{font-size:.8rem}
.case-media figcaption,.backstage figcaption{font-size:.82rem}
@media(max-width:640px){.proof-line{font-size:.7rem}}

/* Campos do formulário com área visível para digitar */
.field label{font-size:.82rem;color:#cfcbc4}
.field input,.field select,.field textarea{background:rgba(255,255,255,.045);border:1px solid rgba(243,240,234,.16);border-radius:12px;padding:14px 16px;transition:border-color .3s,background .3s}
.field input:hover,.field select:hover,.field textarea:hover{border-color:rgba(243,240,234,.3)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--orange);background:rgba(255,69,3,.05)}
.field input::placeholder,.field textarea::placeholder{color:#7d7973}
.field select{background:rgba(255,255,255,.045) linear-gradient(45deg,transparent 50%,var(--muted) 50%) right 22px center/6px 6px no-repeat,linear-gradient(-45deg,transparent 50%,var(--muted) 50%) right 16px center/6px 6px no-repeat;background-color:rgba(255,255,255,.045);padding-right:40px}
.consent{color:#c4c0b9}

/* 2. Menos efeito: sem esferas de luz nas seções e sombras mais discretas.
      A assinatura (logo com trajetória, foguete do fluxo, brilho do hero) continua. */
.glow-r::after,.glow-l::after{display:none}
.btn-primary{box-shadow:0 10px 30px rgba(255,91,19,.14)}
.hire-card.featured,.cta-band{box-shadow:none}
.core-main,.case-media,.ed-media{box-shadow:0 20px 50px rgba(0,0,0,.28)}
.light{background:radial-gradient(circle at 92% 0%,rgba(255,69,3,.06),transparent 36%),var(--cream)}

/* 3. Fotos com o mesmo tratamento: um pouco menos saturadas e levemente quentes */
.core-main img,.case-media img,.ed-media img,.case-card .img img,.proj .img img,.cs-gallery img,.cs-gallery video,.backstage img,.phero-media img{filter:saturate(.82) contrast(1.05) sepia(.08) brightness(.98)}
.phero.has-img .phero-media img,.phero.has-img .phero-media video{filter:saturate(.75) contrast(1.05) sepia(.1) brightness(.55)}
/* Hero: o ponto final de "à venda." é a base do lançamento — dele sai a trajetória até o logo */
.hero h1 .pt{display:inline-block;width:.17em;height:.17em;margin-left:.05em;border-radius:50%;background:var(--orange);vertical-align:baseline;position:relative;box-shadow:0 0 .25em rgba(255,69,3,.75)}
.hero h1 .pt::after{content:"";position:absolute;inset:-.14em;border-radius:50%;border:1.5px solid rgba(255,69,3,.65);animation:padPulse 1.8s ease-out infinite}
/* ===== PÁGINAS INTERNAS SEM FOTOS ===== */
/* Soluções: nome do núcleo à esquerda, escopo à direita */
.ed.txt{grid-template-columns:.9fr 1.1fr;align-items:start;padding:clamp(44px,6vw,84px) 0}
.ed.txt h2{margin-bottom:0}
.ed.txt p{font-size:1.08rem}
/* Home: núcleo central sem foto */
.core-main.noimg{min-height:380px;border:1px solid var(--line);background:radial-gradient(ellipse at 85% 0%,rgba(255,69,3,.16),transparent 60%),linear-gradient(160deg,#1c1916,#121110)}
.core-main.noimg::before{display:none}
@media(max-width:1024px){.ed.txt{grid-template-columns:1fr;gap:18px}}
/* ===== PALAVRAS-CHAVE DOS H1 EM DEGRADÊ ===== */
.grad,.hero h1 .o{background:linear-gradient(100deg,#ff4503 0%,#ff6a1f 45%,#ffa463 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.light .grad{background-image:linear-gradient(100deg,#e63c00 0%,#ff4503 50%,#ff7a2e 100%)}
/* ===== PARA QUEM FAZEMOS: foco em incorporadoras e construtoras ===== */
.who-main{display:grid;grid-template-columns:1.45fr 1fr;gap:clamp(16px,2vw,24px);align-items:stretch}
.who-primary{position:relative;overflow:hidden;border-radius:22px;padding:clamp(26px,3.4vw,46px);background:var(--cream-ink);color:#f3efe8;box-shadow:0 24px 60px rgba(20,19,18,.18)}
.who-primary::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 100% 0%,rgba(255,69,3,.24),transparent 55%)}
.who-primary>*{position:relative}
.who-primary .n,.who-sec .n{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--orange)}
.who-primary h3{font-family:var(--display);font-weight:600;font-size:clamp(1.9rem,3.4vw,3rem);line-height:1;margin:12px 0 14px}
.who-primary p{margin:0 0 22px;color:rgba(243,240,234,.78);max-width:52ch;line-height:1.6}
.who-primary .bul{margin-bottom:28px}
.light .who-primary .bul,.light .who-primary .bul li{border-color:rgba(255,255,255,.12)}
.who-sec{display:grid;grid-template-rows:1fr 1fr;gap:clamp(16px,2vw,24px)}
.who-card{display:flex;flex-direction:column;padding:clamp(24px,2.6vw,34px);border:1px solid var(--cream-line);border-radius:22px;background:rgba(255,255,255,.6);transition:border-color .3s,transform .3s var(--ease),box-shadow .3s}
.who-card:hover{border-color:rgba(255,69,3,.45);transform:translateY(-2px);box-shadow:0 18px 40px rgba(20,19,18,.08)}
.who-card h3{font-family:var(--display);font-weight:600;font-size:clamp(1.45rem,2.1vw,1.9rem);line-height:1.05;margin:10px 0 10px}
.who-card p{margin:0 0 18px;color:var(--cream-muted);font-size:.98rem;line-height:1.6}
.who-card .link{margin-top:auto;align-self:flex-start;color:var(--cream-ink)}
.who-card .link:hover{color:var(--orange)}
@media(max-width:1024px){.who-main{grid-template-columns:1fr}}
/* Case Cidade Nova: escopo em uma frase */
.scope-line{margin:0 0 26px;padding-left:14px;border-left:2px solid var(--orange);font-weight:700;color:#fff;max-width:40ch;line-height:1.5}
/* O foguete do fluxo some via GSAP (3 s depois de passar as etapas); sem transição de CSS brigando com ele */
.flow li.flow-rocket{transition:none}

/* ===== DIAGNÓSTICO GRATUITO ===== */
.diag{max-width:880px;margin:0 auto;padding:clamp(22px,4vw,48px);border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.03);scroll-margin-top:96px}
.diag [hidden]{display:none!important}
.diag-top{display:flex;align-items:center;gap:16px;margin-bottom:clamp(22px,3vw,34px)}
.diag-step{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--muted);white-space:nowrap}
.diag-progress{flex:1;height:4px;border-radius:4px;background:var(--line);overflow:hidden}
.diag-progress span{display:block;width:0;height:100%;border-radius:4px;background:linear-gradient(90deg,#ff4503,#ffa463);transition:width .45s var(--ease)}
.diag .n{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--orange)}
.diag-h{font-family:var(--display);font-weight:600;font-size:clamp(1.7rem,3.2vw,2.5rem);line-height:1.02;margin:8px 0 6px;outline:none}
.diag-sub{margin:0 0 22px;max-width:54ch}
.diag-q{border:0;margin:0;padding:22px 0 4px;min-width:0}
.diag-q+.diag-q{border-top:1px solid var(--line);margin-top:18px}
.diag-q legend{float:left;width:100%;padding:0;margin:0 0 14px;font-weight:700;font-size:1.05rem;line-height:1.45;color:var(--ink)}
.diag-q legend+*{clear:both}
.diag-scale label,.diag-chips label{position:relative;cursor:pointer}
.diag-scale input,.diag-chips input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.diag-scale{display:grid;grid-template-columns:repeat(11,1fr);gap:6px}
.diag-scale span{display:flex;align-items:center;justify-content:center;height:46px;border-radius:10px;border:1px solid var(--line);font-weight:700;color:var(--muted);transition:background .2s,border-color .2s,color .2s}
.diag-chips{display:flex;flex-wrap:wrap;gap:8px}
.diag-chips span{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:999px;border:1px solid var(--line);font-weight:600;font-size:.95rem;color:rgba(243,240,234,.86);transition:background .2s,border-color .2s,color .2s}
.diag-scale label:hover span,.diag-chips label:hover span{border-color:rgba(243,240,234,.4);color:var(--ink)}
.diag-scale input:checked+span,.diag-chips input:checked+span{background:var(--orange);border-color:var(--orange);color:#fff}
.diag-scale input:focus-visible+span,.diag-chips input:focus-visible+span{outline:2px solid var(--orange);outline-offset:2px}
.diag-anchors{display:flex;justify-content:space-between;gap:16px;margin-top:10px;font-size:.82rem;line-height:1.4;color:var(--dim)}
.diag-anchors span:last-child{text-align:right}
.diag-fields{margin-top:6px}
.diag-nav{display:flex;gap:12px;margin-top:clamp(24px,3vw,34px);padding-top:clamp(20px,2.4vw,26px);border-top:1px solid var(--line)}
.diag-nav [data-diag-next]{margin-left:auto}
/* resultado */
.diag-score{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,3vw,36px);align-items:center;margin-bottom:clamp(26px,3vw,40px)}
.diag-ring{--p:0;width:clamp(124px,15vw,150px);aspect-ratio:1;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(closest-side,#151413 80%,transparent 81% 100%),conic-gradient(#ff4503 0,#ffa463 calc(var(--p)*1%),var(--line) 0)}
.diag-ring b{font-family:var(--display);font-weight:600;font-size:clamp(2.4rem,4vw,3.1rem);line-height:1}
.diag-ring span{font-size:.8rem;color:var(--muted)}
.diag-score .muted{margin:0;max-width:52ch;line-height:1.6}
.diag-h3{font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:700;margin:0 0 16px}
.diag-bars{list-style:none;margin:0 0 clamp(28px,3vw,40px);padding:0;display:grid;gap:12px}
.diag-bars li{display:grid;grid-template-columns:minmax(150px,230px) 1fr 44px;gap:14px;align-items:center;font-size:.95rem;color:rgba(243,240,234,.8)}
.diag-bars i{height:8px;border-radius:8px;background:var(--line);overflow:hidden}
.diag-bars em{display:block;height:100%;border-radius:8px;background:rgba(243,240,234,.5)}
.diag-bars b{text-align:right;font-family:var(--display);font-weight:600}
.diag-bars li.low{color:var(--ink)}
.diag-bars li.low em{background:linear-gradient(90deg,#ff4503,#ffa463)}
.diag-prio{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:clamp(26px,3vw,36px)}
.diag-prio article{padding:22px;border:1px solid rgba(255,69,3,.35);border-radius:18px;background:rgba(255,69,3,.06)}
.diag-prio h4{font-family:var(--display);font-weight:600;font-size:1.4rem;line-height:1.1;margin:8px 0 10px}
.diag-prio p{margin:0 0 16px;color:var(--muted);line-height:1.6}
.diag-final{padding:clamp(22px,3vw,36px);border-radius:20px;background:linear-gradient(135deg,#ff4503,#ff7a2e);color:#fff}
.diag-final h3{font-family:var(--display);font-weight:600;font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.05;margin:0 0 10px}
.diag-final p{margin:0 0 22px;max-width:54ch;color:rgba(255,255,255,.92);line-height:1.6}
.diag-redo{margin-top:20px;padding:0;background:none;border:0;cursor:pointer;font:inherit;font-size:.92rem;color:var(--muted);text-decoration:underline}
@media(max-width:640px){
  .diag-scale{grid-template-columns:repeat(6,1fr)}
  .diag-score{grid-template-columns:1fr;justify-items:start}
  .diag-bars li{grid-template-columns:1fr 40px;gap:6px 12px}
  .diag-bars i{grid-column:1/-1;order:3}
  .diag-prio{grid-template-columns:1fr}
  .diag-nav .btn{padding:14px 18px}
}
/* ===== EQUIPE (página A Tríade): foto do grupo + cartões com nome e cargo ===== */
.team-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,5vw,80px);align-items:center}
.team-photo{margin:0;border-radius:24px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.45)}
.team-photo img{display:block;width:100%;height:auto}
.team-grid .display{font-size:clamp(2.1rem,4.2vw,3.8rem);max-width:15ch;margin:14px 0 16px}
.team-lead{margin:0 0 28px;max-width:46ch}
.team{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.team li{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.03);transition:border-color .3s}
.team li:hover{border-color:rgba(255,69,3,.45)}
.team li:last-child:nth-child(odd){grid-column:1/-1}
.team img{flex:none;width:56px;height:56px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px rgba(255,69,3,.55)}
.team h3{font-family:var(--display);font-weight:600;font-size:1.05rem;line-height:1.15;margin:0 0 4px}
.team span{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--orange)}
@media(max-width:1024px){.team-grid{grid-template-columns:1fr}.team-photo{max-width:560px}}
@media(max-width:480px){.team{grid-template-columns:1fr}}

/* Aviso de cookies */
.cookies{position:fixed;left:20px;bottom:20px;z-index:185;width:min(440px,calc(100vw - 40px));padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--bg-2);color:var(--ink);box-shadow:0 20px 60px rgba(0,0,0,.45)}
.cookies[hidden]{display:none}
.cookies p{margin:0 0 16px;font-size:.92rem;line-height:1.5;color:var(--muted)}
.cookies a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.cookies-acoes{display:flex;justify-content:flex-end;gap:10px}
.cookies-acoes .btn{padding:11px 20px;font-size:.9rem}
.ftr-cookies{padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}
.ftr-cookies:hover{color:var(--ink)}
@media(max-width:640px){.cookies{left:12px;right:12px;bottom:12px;width:auto}.cookies-acoes .btn{flex:1;justify-content:center}}