@font-face{font-family:"Cabinet";src:url(fonts/cabinet-grotesk-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Cabinet";src:url(fonts/cabinet-grotesk-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Cabinet";src:url(fonts/cabinet-grotesk-800.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Satoshi";src:url(fonts/satoshi-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Satoshi";src:url(fonts/satoshi-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Satoshi";src:url(fonts/satoshi-700.woff2) format("woff2");font-weight:700;font-display:swap}

:root{
  --azul:#1b3f69;
  --azul-escuro:#0f2742;
  --azul-noite:#0a1b30;
  --cinza:#86929a;
  --cinza-claro:#c9d0d6;
  --aco:#e8ecef;
  --papel:#f4f6f7;
  --branco:#fff;
  --tinta:#0e1a28;
  --texto:#3b4855;
  --linha:rgba(14,26,40,.12);
  --c:clamp(18px,2.6vw,40px);
  --pad:clamp(20px,5vw,72px);
  --max:1360px;
  --ease:cubic-bezier(.2,.75,.15,1);
  --titulo:"Cabinet",system-ui,sans-serif;
  --corpo:"Satoshi",system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:90px;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:clip;background:var(--papel);color:var(--texto);font:400 clamp(1rem,.95rem + .25vw,1.125rem)/1.6 var(--corpo);-webkit-font-smoothing:antialiased}
img,svg,video,iframe{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--titulo);color:var(--tinta);margin:0;font-weight:800;letter-spacing:-.02em}
p{margin:0 0 1em}
:focus-visible{outline:2px solid var(--azul);outline-offset:3px}

/* botões */
.botao{--bc:10px;display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:50px;padding:.75em 1.5em;font:700 .98rem/1 var(--corpo);text-decoration:none;border:0;cursor:pointer;letter-spacing:.01em;clip-path:polygon(0 0,calc(100% - var(--bc)) 0,100% var(--bc),100% 100%,0 100%);transition:background .3s,color .3s,transform .3s var(--ease)}
.botao:hover{transform:translateY(-2px)}
.botao svg{width:20px;height:20px}
.botao-cheio{background:var(--azul);color:#fff}
.botao-cheio:hover{background:var(--azul-escuro)}
.botao-linha{background:transparent;color:var(--azul);box-shadow:inset 0 0 0 1.5px var(--azul)}
.botao-linha:hover{background:var(--azul);color:#fff}
.botao-claro{background:#fff;color:var(--azul)}
.botao-claro:hover{background:var(--aco)}

/* chanfro: o corte a 45° das pontas do S */
.chanfro{clip-path:polygon(0 0,calc(100% - var(--c)) 0,100% var(--c),100% 100%,0 100%)}

/* espaço de foto (some quando a foto real existir) */
.foto{position:relative;margin:0;overflow:hidden;aspect-ratio:var(--ar,4/3);background:
  url(img/simbolo-marca-dagua.svg) center 42%/min(34%,140px) no-repeat,
  repeating-linear-gradient(135deg,rgba(27,63,105,.055) 0 1px,transparent 1px 13px),
  linear-gradient(160deg,#e9edf1,#d4dbe2)}
.foto::after{content:attr(data-desc) "\A" attr(data-formato) "\A" "assets/fotos/" attr(data-foto) ".webp";white-space:pre-line;position:absolute;left:0;right:0;bottom:0;z-index:1;padding:14px 16px;font:500 12.5px/1.45 var(--corpo);color:#4d5d6e;letter-spacing:.01em}
.foto img,.foto video{position:absolute;inset:0;z-index:2;width:100%;height:100%;object-fit:cover}

/* cabeçalho */
/* flutuante; ao descer a página recolhe numa cápsula com a seção atual, ao subir (ou passar o mouse) abre de novo */
.topo{--vao:24px;--recolhe:.6s cubic-bezier(.7,0,.2,1);position:fixed;z-index:50;top:12px;left:12px;right:12px;display:flex;align-items:center;gap:var(--vao);height:68px;padding:0 10px 0 20px;max-width:calc(var(--max) + 40px);margin:0 auto;background:rgba(255,255,255,.86);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);box-shadow:0 1px 0 var(--linha),0 10px 30px -18px rgba(10,27,48,.35);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);transition:max-width var(--recolhe),height .35s var(--ease),top .45s var(--ease),background .35s,box-shadow .45s}
.topo.rolou{height:58px;top:8px;background:rgba(255,255,255,.93)}
.topo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,var(--azul),#3f6c9e);transform:scaleX(var(--progresso,0));transform-origin:left;opacity:0;transition:opacity .35s;pointer-events:none}
.topo.rolou::after{opacity:1}
.topo.recolhido{max-width:452px;top:14px;background:rgba(255,255,255,.95);box-shadow:0 1px 0 var(--linha),0 18px 40px -20px rgba(10,27,48,.5)}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;flex:none}
.marca-simbolo{width:40px;height:40px;flex:none;transition:width .35s var(--ease),height .35s var(--ease)}
.marca-nome{width:178px;height:auto;transition:width var(--recolhe),opacity .35s}
.topo.rolou .marca-simbolo{width:34px;height:34px}
.topo.recolhido .marca-nome{width:0;opacity:0}
.topo-secao{display:flex;align-items:center;gap:10px;min-width:0;max-width:0;margin-left:calc(-1 * var(--vao));padding:6px 0;border:0;background:none;color:var(--tinta);font:700 1rem/1 var(--titulo);letter-spacing:-.01em;white-space:nowrap;opacity:0;overflow:hidden;cursor:pointer;transition:max-width var(--recolhe),margin var(--recolhe),opacity .3s}
.topo-secao-nome{overflow:hidden;text-overflow:ellipsis;padding-left:12px;border-left:1px solid var(--linha)}
.topo-secao i{flex:none;width:7px;height:7px;margin-top:-3px;border:solid var(--azul);border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .3s var(--ease)}
.topo-secao:hover i{transform:translateY(2px) rotate(45deg)}
.topo-secao-nome.troca{animation:trocaSecao .45s var(--ease)}
@keyframes trocaSecao{from{opacity:0;transform:translateY(60%)}}
.topo.recolhido .topo-secao{max-width:200px;margin-left:calc(-1 * var(--vao) + 14px);opacity:1;transition:max-width var(--recolhe),margin var(--recolhe),opacity .4s .2s}
.menu{display:flex;gap:4px;margin-left:auto}
@media (min-width:1000px){
  .menu{max-width:720px;overflow:hidden;transition:max-width var(--recolhe),opacity .3s .15s}
  .menu a{white-space:nowrap}
  .topo.recolhido .menu{max-width:0;opacity:0;pointer-events:none;transition:max-width var(--recolhe),opacity .2s}
}
.menu a{padding:8px 12px;font:500 .95rem/1 var(--corpo);color:var(--tinta);text-decoration:none;position:relative}
.menu a::after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:2px;background:var(--azul);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.menu a:hover::after,.menu a.atual::after{transform:scaleX(1)}
.topo-orcamento{min-height:46px;padding:.6em 1.2em;font-size:.92rem;white-space:nowrap;flex:none}
.menu-botao{display:none}
.js .topo .marca-simbolo{opacity:0}
.js.sem-intro .topo .marca-simbolo,.js .intro-feita .marca-simbolo,.intro-feita .topo .marca-simbolo{opacity:1}

/* abertura */
.intro{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#fff;transition:background .6s ease,opacity .6s ease}
.sem-intro .intro{display:none}
.intro-marca{display:grid;justify-items:center;gap:clamp(14px,2.4vw,26px);width:min(420px,74vw)}
.intro-simbolo{width:52%;overflow:visible;transform-origin:0 0}
.intro-nome{width:100%;clip-path:inset(0 100% 0 0);animation:abreNome .8s 1.05s var(--ease) forwards}
.intro .s-cima{animation:entraCima .8s .3s var(--ease) both}
.intro .s-baixo{animation:entraBaixo .8s .42s var(--ease) both}
.intro .anel-traco{animation:desenhaAnel 1.05s .05s cubic-bezier(.6,.05,.25,1) forwards}
.intro-pular{position:absolute;right:20px;bottom:20px;padding:10px 14px;border:0;background:none;font:500 .9rem var(--corpo);color:var(--cinza);cursor:pointer}
.intro.saindo{background:rgba(255,255,255,0);pointer-events:none}
.intro.saindo .intro-nome,.intro.saindo .intro-pular{opacity:0;transition:opacity .3s}
@keyframes entraCima{from{transform:translate(34px,-34px);opacity:0}to{transform:none;opacity:1}}
@keyframes entraBaixo{from{transform:translate(-34px,34px);opacity:0}to{transform:none;opacity:1}}
@keyframes desenhaAnel{to{stroke-dashoffset:0}}
@keyframes abreNome{to{clip-path:inset(0 0 0 0)}}

/* topo do site */
.hero{display:grid;gap:clamp(28px,4vw,48px);max-width:var(--max);margin:0 auto;padding:calc(68px + 12px + clamp(40px,8vw,96px)) var(--pad) clamp(40px,6vw,80px)}
.hero-titulo{font-size:clamp(2.7rem,1.4rem + 6.2vw,7.2rem);line-height:.98;letter-spacing:-.035em}
.hero-titulo .linha{display:block;overflow:hidden;padding-top:.1em;margin-top:-.1em}
.hero-titulo .linha>span{display:inline-block}
.hero-titulo .linha:nth-child(2)>span{color:var(--azul)}
.hero-sub{max-width:34em;margin:clamp(18px,2.4vw,28px) 0 clamp(24px,3vw,36px);font-size:clamp(1.06rem,1rem + .35vw,1.28rem);color:var(--texto)}
.hero-acoes{display:flex;flex-wrap:wrap;gap:12px}
.foto-hero{--ar:16/10}
.ficha{display:grid;grid-template-columns:repeat(2,1fr);margin:0;border-top:1px solid var(--linha)}
.ficha div{padding:18px 0 4px;border-bottom:1px solid var(--linha)}
.ficha div:nth-child(odd){padding-right:16px}
.ficha dt{font:500 .85rem/1.2 var(--corpo);color:var(--cinza)}
.ficha dd{margin:4px 0 0;font:800 clamp(1.6rem,1.2rem + 1.6vw,2.6rem)/1.1 var(--titulo);color:var(--tinta);letter-spacing:-.02em}
.js .hero-titulo .linha>span{transform:translateY(105%)}
.js .hero-sub,.js .hero-acoes,.js .ficha div{opacity:0;transform:translateY(18px)}
.js .foto-hero{clip-path:polygon(0 0,0 0,0 0,0 100%,0 100%)}
.pronto .hero-titulo .linha>span{transform:none;transition:transform 1s var(--ease)}
.pronto .hero-titulo .linha:nth-child(2)>span{transition-delay:.08s}
.pronto .hero-titulo .linha:nth-child(3)>span{transition-delay:.16s}
.pronto .hero-sub,.pronto .hero-acoes,.pronto .ficha div{opacity:1;transform:none;transition:opacity .8s .35s,transform .9s .35s var(--ease)}
.pronto .hero-acoes{transition-delay:.45s}
.pronto .ficha div:nth-child(2){transition-delay:.55s}.pronto .ficha div:nth-child(3){transition-delay:.62s}.pronto .ficha div:nth-child(4){transition-delay:.69s}
.pronto .foto-hero{clip-path:polygon(0 0,calc(100% - var(--c)) 0,100% var(--c),100% 100%,0 100%);transition:clip-path 1.3s .25s var(--ease)}

/* seções */
.secao{max-width:var(--max);margin:0 auto;padding:clamp(72px,10vw,150px) var(--pad)}
.titulo{font-size:clamp(2.1rem,1.3rem + 3.4vw,4.4rem);line-height:1.02;letter-spacing:-.03em}
.cabeca{display:grid;gap:18px 48px;margin-bottom:clamp(36px,5vw,64px)}
.cabeca-texto{max-width:34em;margin:0;font-size:clamp(1.02rem,.98rem + .25vw,1.18rem)}

.js .revela{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform 1s var(--ease)}
.js .revela.visivel{opacity:1;transform:none}
.js .foto.revela{opacity:1;transform:none;clip-path:polygon(0 0,0 0,0 100%,0 100%);transition:clip-path 1.2s var(--ease)}
.js .foto.revela.visivel{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
.js .foto.chanfro.revela{clip-path:polygon(0 0,0 0,0 0,0 100%,0 100%)}
.js .foto.chanfro.revela.visivel{clip-path:polygon(0 0,calc(100% - var(--c)) 0,100% var(--c),100% 100%,0 100%)}

/* empresa */
.empresa{padding-top:clamp(40px,6vw,90px)}
.empresa-grade{display:grid;gap:28px 64px}
.empresa-texto p{max-width:36em}
.empresa-texto p:first-child{font-size:clamp(1.12rem,1rem + .5vw,1.35rem);color:var(--tinta)}
.empresa-fotos{display:grid;gap:16px;margin-top:clamp(36px,5vw,64px)}
.empresa-fotos .foto{--ar:3/2}

/* soluções */
.solucoes{background:var(--branco);max-width:none}
.solucoes>*{max-width:var(--max);margin-left:auto;margin-right:auto}
.solucoes .cabeca{margin-bottom:clamp(40px,5vw,72px)}
.solucoes-lista{display:grid;gap:clamp(36px,4vw,56px) 28px}
.solucao .foto{--ar:4/3;margin-bottom:18px;clip-path:polygon(0 0,100% 0,100% 0,100% 100%,0 100%);transition:clip-path .5s var(--ease)}
.solucao h3{font-size:clamp(1.35rem,1.15rem + .7vw,1.75rem);line-height:1.12;margin-bottom:.45em}
.solucao p{margin:0;max-width:30em}
.solucao:hover .foto{clip-path:polygon(0 0,calc(100% - var(--c)) 0,100% var(--c),100% 100%,0 100%)}

/* racks */
.racks{max-width:none;background:var(--azul-escuro);color:#c8d3de;position:relative;overflow:hidden}
.racks::before{content:"";position:absolute;right:-12vw;top:-10vw;width:min(70vw,900px);aspect-ratio:1;background:url(img/simbolo-contorno.svg) center/contain no-repeat;opacity:.07;pointer-events:none}
.racks-grade{position:relative;display:grid;gap:48px 72px;max-width:var(--max);margin:0 auto}
.racks .titulo{color:#fff;margin-bottom:.4em}
.racks-texto>p{max-width:32em;font-size:clamp(1.06rem,1rem + .35vw,1.25rem);color:#e3e9ef}
.racks-itens{list-style:none;padding:0;margin:clamp(28px,3vw,40px) 0 clamp(32px,4vw,44px);border-top:1px solid rgba(255,255,255,.14)}
.racks-itens li{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.racks-itens strong{display:block;font:700 1.12rem/1.3 var(--titulo);color:#fff;margin-bottom:4px;letter-spacing:-.005em}
.racks-fotos{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:start}
.racks-fotos .foto-alta{grid-column:1/-1;--ar:4/5}
.racks .foto{background:url(img/simbolo-marca-dagua-claro.svg) center 42%/min(34%,140px) no-repeat,repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 1px,transparent 1px 13px),linear-gradient(160deg,#1d3d63,#132e4f)}
.racks .foto::after{color:#9fb0c2}

/* processo */
.etapas{list-style:none;margin:0;padding:0;display:grid;gap:0;position:relative}
.etapas li{position:relative;padding:0 0 32px 34px}
.etapas li::before{content:"";position:absolute;left:0;top:.45em;width:12px;height:12px;background:var(--azul);transform:rotate(45deg) scale(.4);opacity:.3;transition:transform .5s var(--ease),opacity .5s}
.etapas::after{content:"";position:absolute;left:5.5px;top:.6em;bottom:2em;width:1px;background:var(--azul);transform:scaleY(0);transform-origin:top;transition:transform 2.2s var(--ease)}
.etapas::before{content:"";position:absolute;left:5.5px;top:.6em;bottom:2em;width:1px;background:var(--linha)}
.etapas h3{font-size:1.3rem;margin-bottom:.35em}
.etapas p{margin:0;max-width:26em;font-size:.98rem}
.js .etapas li{opacity:.25;transition:opacity .6s calc(var(--i)*.28s)}
.etapas.visivel li{opacity:1}
.etapas.visivel li::before{transform:rotate(45deg) scale(1);opacity:1;transition-delay:calc(var(--i)*.28s)}
.etapas.visivel::after{transform:scaleY(1)}
.entrega{display:grid;gap:28px 64px;align-items:center;margin-top:clamp(48px,7vw,100px);padding-top:clamp(40px,5vw,64px);border-top:1px solid var(--linha)}
.entrega .foto{--ar:3/2}
.entrega h3{font-size:clamp(1.6rem,1.2rem + 1.4vw,2.5rem);line-height:1.08;margin-bottom:.5em}

/* estrutura */
.estrutura{background:var(--aco);max-width:none}
.estrutura>*{max-width:var(--max);margin-left:auto;margin-right:auto}
.plantas{display:grid;gap:40px 20px}
.planta .foto{--ar:3/2;margin-bottom:18px}
.planta h3{font-size:clamp(1.3rem,1.15rem + .6vw,1.65rem);line-height:1.15;margin-bottom:.4em}
.planta h3 span{display:block;font:700 .9rem/1.4 var(--corpo);color:var(--azul);letter-spacing:.02em;margin-bottom:2px}
.planta p{margin:0}
.equipamentos{margin-top:clamp(64px,8vw,120px)}
.equipamentos>h3{font-size:clamp(1.6rem,1.2rem + 1.4vw,2.5rem);margin-bottom:clamp(20px,3vw,36px)}
.equip-grade{display:grid;gap:0 32px}
.equip{margin:0;padding:22px 0;border-top:1px solid rgba(14,26,40,.18)}
.equip dt{font:800 1.12rem/1.3 var(--titulo);color:var(--tinta);margin-bottom:8px}
.equip dd{margin:0;padding:3px 0;color:var(--texto)}

/* projetos */
.projetos .cabeca{align-items:end}
.filtros{display:flex;flex-wrap:wrap;gap:8px}
.filtros button{padding:9px 16px;border:0;background:#fff;box-shadow:inset 0 0 0 1px var(--linha);font:500 .92rem/1.2 var(--corpo);color:var(--tinta);cursor:pointer;transition:background .25s,color .25s,box-shadow .25s}
.filtros button:hover{box-shadow:inset 0 0 0 1px var(--azul)}
.filtros button.ativo{background:var(--azul);color:#fff;box-shadow:none}
.grade-projetos{display:grid;grid-template-columns:1fr;gap:28px 18px}
.projeto{margin:0;transition:opacity .4s,transform .5s var(--ease)}
.projeto .foto{--ar:4/3;margin-bottom:12px}
.projeto .foto::after{font-size:11.5px}
.projeto figcaption strong{display:block;font:700 1.08rem/1.25 var(--titulo);color:var(--tinta)}
.projeto figcaption span{font-size:.88rem;color:var(--cinza)}
.projeto.saindo{opacity:0;transform:scale(.97)}
.projeto.oculto{display:none}

/* clientes */
.clientes{border-top:1px solid var(--linha)}
.clientes-grade{display:grid;gap:12px 64px;align-items:end;margin-bottom:clamp(32px,4vw,56px)}
.clientes-grade p{margin:0;max-width:30em}
.logos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--linha);border-left:1px solid var(--linha)}
.logos li{display:grid;place-items:center;min-height:clamp(110px,14vw,170px);padding:20px;border-right:1px solid var(--linha);border-bottom:1px solid var(--linha);background:#fff}
.logos img{max-height:56px;width:auto;filter:grayscale(1);opacity:.7;transition:filter .3s,opacity .3s}
.logos li:hover img{filter:none;opacity:1}
.logos span{font:800 clamp(1.3rem,1rem + 1.4vw,2.2rem)/1 var(--titulo);color:var(--cinza);letter-spacing:-.01em}

/* orçamento */
.orcamento{max-width:none;background:var(--azul);color:#dbe4ee}
.orcamento-grade{display:grid;gap:48px 80px;max-width:var(--max);margin:0 auto}
.orcamento .titulo{color:#fff;margin-bottom:.4em}
.orcamento-texto>p{max-width:30em;font-size:clamp(1.04rem,1rem + .3vw,1.2rem)}
.canais{list-style:none;padding:0;margin:28px 0 0;border-top:1px solid rgba(255,255,255,.18)}
.canais li{display:grid;gap:2px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.18)}
.canais span{font-size:.85rem;color:#9fb4ca}
.canais a{font-weight:500;color:#fff;text-decoration:none;overflow-wrap:anywhere}
.canais a:hover{text-decoration:underline}
.form{display:grid;gap:22px 20px;align-content:start;padding:clamp(24px,3.4vw,44px);background:#fff;clip-path:polygon(0 0,calc(100% - var(--c)) 0,100% var(--c),100% 100%,0 100%)}
.campo{display:grid;gap:6px}
.campo label{font:600 .86rem/1.2 var(--corpo);color:var(--tinta)}
.campo input,.campo select,.campo textarea{width:100%;padding:12px 0;border:0;border-bottom:1.5px solid var(--cinza-claro);border-radius:0;background:transparent;font:400 1rem/1.4 var(--corpo);color:var(--tinta);transition:border-color .25s}
.campo select{appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231b3f69' stroke-width='1.6'/%3E%3C/svg%3E") right 4px center no-repeat;padding-right:24px}
.campo textarea{resize:vertical;min-height:96px}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:0;border-color:var(--azul)}
.campo.erro input{border-color:#b3261e}
.form-acoes{display:flex;flex-wrap:wrap;gap:12px;padding-top:6px}

/* contato */
.contato-grade{display:grid;gap:40px 72px;align-items:start}
.contato address{font-style:normal;font-size:clamp(1.1rem,1rem + .4vw,1.3rem);color:var(--tinta);margin:.6em 0 0}
.contato .canais{border-color:var(--linha);margin-bottom:28px}
.contato .canais li{border-color:var(--linha)}
.contato .canais span{color:var(--cinza)}
.contato .canais a{color:var(--tinta)}
.mapa{aspect-ratio:4/3;background:var(--aco)}
.mapa iframe{width:100%;height:100%;border:0;filter:grayscale(.85) contrast(1.05)}

/* rodapé */
.rodape{background:var(--azul-noite);color:#9fb0c2;padding:clamp(56px,7vw,96px) var(--pad) 28px}
.rodape-grade{display:grid;gap:36px;max-width:var(--max);margin:0 auto;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.1)}
.rodape-marca{display:flex;align-items:center;gap:14px;width:max-content}
.rodape-marca svg:first-child{width:52px;height:52px}
.rodape-marca svg:last-child{width:210px}
.rodape-marca path{fill:#fff}
.rodape-marca .s-baixo path{fill:var(--cinza)}
.rodape-menu{display:flex;flex-wrap:wrap;gap:8px 22px}
.rodape-menu a{text-decoration:none;color:#dbe4ee}
.rodape-menu a:hover{color:#fff}
.rodape-dados p{margin:0 0 .8em;font-size:.94rem}
.rodape-fim{max-width:var(--max);margin:22px auto 0;font-size:.85rem}

/* telas médias */
@media (min-width:640px){
  .ficha{grid-template-columns:repeat(4,1fr)}
  .ficha div:nth-child(odd){padding-right:0}
  .ficha div{padding-right:16px}
  .solucoes-lista{grid-template-columns:1fr 1fr}
  .grade-projetos{grid-template-columns:1fr 1fr}
  .empresa-fotos{grid-template-columns:1.35fr 1fr}
  .equip-grade{grid-template-columns:1fr 1fr}
  .form{grid-template-columns:1fr 1fr}
  .campo-largo{grid-column:1/-1}
}
@media (min-width:1000px){
  .hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;column-gap:clamp(40px,5vw,80px)}
  .hero-texto{grid-row:1}
  .foto-hero{grid-row:1;--ar:4/4.6}
  .ficha{grid-column:1/-1}
  .cabeca{grid-template-columns:1fr 1fr;align-items:end}
  .empresa-grade{grid-template-columns:1fr 1fr}
  .solucoes-lista{grid-template-columns:repeat(3,1fr)}
  .solucao:nth-child(3n+2){margin-top:72px}
  .racks-grade{grid-template-columns:1fr 1.05fr;align-items:start}
  .racks-texto{position:sticky;top:120px}
  .etapas{grid-template-columns:repeat(6,1fr);gap:24px}
  .etapas li{padding:36px 0 0}
  .etapas li::before{top:-6px;left:0}
  .etapas::before,.etapas::after{left:0;right:0;top:0;bottom:auto;width:auto;height:1px}
  .etapas::after{transform:scaleX(0);transform-origin:left}
  .etapas.visivel::after{transform:scaleX(1)}
  .entrega{grid-template-columns:1.1fr 1fr}
  .plantas{grid-template-columns:repeat(3,1fr)}
  .plantas .planta:nth-child(2){margin-top:56px}
  .plantas .planta:nth-child(3){margin-top:112px}
  .equip-grade{grid-template-columns:repeat(3,1fr)}
  .grade-projetos{grid-template-columns:repeat(3,1fr)}
  .clientes-grade{grid-template-columns:1fr 1fr}
  .orcamento-grade{grid-template-columns:1fr 1.1fr}
  .contato-grade{grid-template-columns:1fr 1.25fr}
  .rodape-grade{grid-template-columns:1.2fr 1fr 1fr;align-items:start}
}

/* celular: menu */
@media (max-width:999px){
  .topo{--vao:10px;padding:0 6px 0 14px;height:60px}
  .topo.rolou{height:56px}
  .topo.recolhido{max-width:380px}
  .topo.aberto{max-width:calc(var(--max) + 40px)}
  .topo-secao{font-size:.92rem}
  .marca-simbolo{width:34px;height:34px}
  .marca-nome{width:136px}
  .menu{position:fixed;left:0;right:0;top:0;height:100dvh;z-index:-1;flex-direction:column;justify-content:center;gap:2px;padding:90px 28px 40px;background:#fff;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
  .menu a{font:800 clamp(1.8rem,8vw,2.6rem)/1.15 var(--titulo);padding:10px 0;letter-spacing:-.02em}
  .menu a::after{display:none}
  .topo.aberto{clip-path:none;backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff;box-shadow:none}
  .topo.aberto::after{opacity:0}
  .topo.aberto .menu{opacity:1;visibility:visible}
  .topo-orcamento{margin-left:auto;min-height:42px;padding:.55em 1em;font-size:.86rem}
  .menu-botao{display:grid;place-content:center;gap:6px;width:44px;height:44px;border:0;background:none;cursor:pointer}
  .menu-botao span{display:block;width:22px;height:2px;background:var(--tinta);transition:transform .3s var(--ease)}
  .topo.aberto .menu-botao span:first-child{transform:translateY(4px) rotate(45deg)}
  .topo.aberto .menu-botao span:last-child{transform:translateY(-4px) rotate(-45deg)}
}
@media (max-width:420px){
  .marca-nome{display:none}
  .topo-orcamento{font-size:.84rem}
  .topo.recolhido{max-width:286px}
  .topo.recolhido .topo-secao{max-width:0;opacity:0;margin-left:calc(-1 * var(--vao))}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .intro{display:none}
  .js .revela,.js .hero-sub,.js .hero-acoes,.js .ficha div,.js .etapas li{opacity:1!important;transform:none!important}
  .js .hero-titulo .linha>span{transform:none!important}
  .js .foto.revela,.js .foto-hero{clip-path:none!important}
  .js .foto.chanfro.revela,.js .foto-hero{clip-path:polygon(0 0,calc(100% - var(--c)) 0,100% var(--c),100% 100%,0 100%)!important}
  .js .topo .marca-simbolo{opacity:1}
}
