/* US Factory, modelo 2: visual "risco de corte" (01/11/2026).
   Chão marinho e papel de plotter frio, linha de corte em ciano, régua nas bordas, dados em voz monoespaçada. */
@font-face{font-family:"Archivo";src:url(fontes/archivo.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(fontes/jetbrains-mono.woff2) format("woff2");font-weight:400 700;font-display:swap}

:root{
 --mar:#0B1B2E;--mar2:#102641;--mar3:#1C3A5C;--fundo:#071321;
 --cia:#38B6E8;--cia-t:#0B6A93;
 --papel:#EEF2F6;--papel2:#E1E8F0;--linha:rgba(11,27,46,.18);
 --tx:#0B1B2E;--mut:#46566B;--mut-e:#AFC0D3;
 --ac:#8A5A00;
 --sans:"Archivo",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
 --mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;
 --w:1280px;--g:clamp(16px,4.6vw,64px);--topo:72px;
 --sai:cubic-bezier(.16,1,.3,1);
 color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--topo) + 16px);scrollbar-color:var(--mar3) var(--papel2)}
body{margin:0;background:var(--papel);color:var(--tx);font:400 17px/1.6 var(--sans);font-stretch:100%;-webkit-font-smoothing:antialiased;overflow-x:hidden;caret-color:var(--cia-t)}
::selection{background:var(--cia);color:var(--mar)}
img,svg{max-width:100%}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}
.wrap{max-width:var(--w);margin:0 auto;padding:0 var(--g)}
.pular{position:absolute;left:-999px;top:8px;background:#fff;color:var(--mar);padding:10px 14px;z-index:99;font-weight:600}
.pular:focus{left:8px}
:focus-visible{outline:2px solid var(--mar);outline-offset:3px}
.escuro :focus-visible,.hero :focus-visible,.pag :focus-visible,footer :focus-visible,.topo :focus-visible,.cta :focus-visible,.wa-flut:focus-visible{outline-color:var(--cia)}

/* tipografia */
h1,h2,h3,h4{font-family:var(--sans);font-stretch:72%;font-weight:760;line-height:.98;letter-spacing:-.012em;margin:0;text-wrap:balance}
h1{font-size:clamp(2.9rem,7.6vw,6rem)}
h2{font-size:clamp(2.2rem,4.8vw,3.9rem)}
h3{font-size:clamp(1.35rem,2vw,1.7rem);font-stretch:80%;font-weight:700;line-height:1.08}
h1 em,h2 em,h3 em{font-style:normal;color:var(--cia-t)}
.hero h1 em,.escuro h2 em,.pag h1 em,.cta h2 em{color:var(--cia)}
em{font-style:normal}
p{margin:0 0 1em;text-wrap:pretty}
li,dd,dt,summary{text-wrap:pretty}
.tit-sec{font-size:clamp(1.9rem,3.6vw,2.8rem);margin-bottom:8px}
.linha-prod{margin:20px 0 0;font:500 .82rem/1.5 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--cia)}
.lead{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.55;color:var(--mut);max-width:36em}
.escuro .lead,.pag .lead{color:var(--mut-e)}
.tec,.num,.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.tec{font-size:.78rem;line-height:1.5;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.escuro .tec{color:var(--mut-e)}
.num{font-size:.8rem;letter-spacing:.04em;color:var(--cia-t)}
.escuro .num,.pag .num{color:var(--cia)}
.ac{font-family:var(--mono);font-size:max(.78em,12px);letter-spacing:.02em;color:var(--ac);border-bottom:1px dotted currentColor;white-space:nowrap}
.escuro .ac,.hero .ac,.pag .ac,footer .ac,.cta .ac{color:#F2C46B}

/* régua: cada seção começa com uma régua graduada */
section{position:relative}
.sec::before,.pag::before,.marca-propria::before{content:"";position:absolute;left:0;right:0;top:0;height:16px;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2780%27 height=%2716%27%3E%3Cpath d=%27M.5 0v16M16.5 0v7M32.5 0v7M48.5 0v7M64.5 0v7%27 stroke=%27rgba(11,27,46,.22)%27 fill=%27none%27/%3E%3C/svg%3E") 0 0/80px 16px repeat-x;border-top:1px solid var(--linha)}
.escuro::before,.pag::before,.cta::before{background:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2780%27 height=%2716%27%3E%3Cpath d=%27M.5 0v16M16.5 0v7M32.5 0v7M48.5 0v7M64.5 0v7%27 stroke=%27rgba(56,182,232,.4)%27 fill=%27none%27/%3E%3C/svg%3E") 0 0/80px 16px repeat-x;border-top-color:rgba(56,182,232,.32)}

/* botões e links */
.btn{display:inline-flex;align-items:center;gap:14px;min-height:52px;padding:0 26px;border:1px solid var(--mar);background:var(--mar);color:#fff;font:650 .86rem/1 var(--sans);font-stretch:88%;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .25s var(--sai),color .25s var(--sai),border-color .25s var(--sai)}
.btn i{display:block;width:20px;height:9px;background:linear-gradient(currentColor,currentColor) 0 50%/100% 1px no-repeat;position:relative;transition:width .3s var(--sai)}
.btn i::after{content:"";position:absolute;right:0;top:0;width:7px;height:7px;border:solid currentColor;border-width:1px 1px 0 0;transform:translateY(1px) rotate(45deg)}
.btn:hover{background:var(--cia-t);border-color:var(--cia-t)}
.btn:hover i{width:30px}
.btn:active{transform:translateY(1px)}
.hero .btn,.escuro .btn,.pag .btn,.cta .btn{background:var(--cia);border-color:var(--cia);color:var(--mar)}
.hero .btn:hover,.escuro .btn:hover,.pag .btn:hover,.cta .btn:hover{background:#fff;border-color:#fff}
.sec-cta .btn{color:#fff}.escuro .sec-cta .btn{color:var(--mar)}
.lnk{display:inline-flex;align-items:center;min-height:44px;font:650 .82rem/1.2 var(--sans);font-stretch:88%;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--tx);border-bottom:1px solid currentColor;padding:0;background:none}
.lnk::after{content:"";width:16px;height:1px;margin-left:10px;background:currentColor;transition:width .3s var(--sai)}
.lnk:hover::after{width:28px}
.lnk:hover{color:var(--cia-t)}
.hero .lnk,.escuro .lnk,.pag .lnk,.cta .lnk{color:#fff}
.hero .lnk:hover,.escuro .lnk:hover,.pag .lnk:hover,.cta .lnk:hover{color:var(--cia)}

/* cabeçalho: faixa marinho fixa */
.topo{position:fixed;inset:0 0 auto 0;z-index:50;background:var(--mar);color:#fff;border-bottom:1px solid rgba(56,182,232,.22)}
.topo .wrap{display:flex;align-items:center;gap:28px;height:var(--topo)}
.logo{display:block;text-decoration:none;margin-right:auto}
.logo img{display:block;height:28px;width:auto}
.logo .lg-e{display:none}
.menu{display:flex;align-items:center;gap:30px}
.menu a{font:600 .82rem/1 var(--sans);font-stretch:88%;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;padding:10px 0;color:#DCE6F1;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.menu a:hover{color:#fff;border-color:var(--cia)}
.menu a[aria-current]{color:#fff;border-color:var(--cia)}
.menu .orc{border:1px solid var(--cia);background:var(--cia);color:var(--mar);padding:12px 18px}
.menu .orc:hover,.menu .orc[aria-current]{background:#fff;border-color:#fff;color:var(--mar)}
.mb{display:none;min-height:44px;background:none;border:1px solid rgba(255,255,255,.35);color:#fff;font:600 .78rem/1 var(--sans);font-stretch:88%;letter-spacing:.08em;text-transform:uppercase;padding:0 14px;cursor:pointer}
.lang{position:relative}
.lang summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;min-height:44px;font:500 .78rem/1 var(--mono);letter-spacing:.06em;color:#DCE6F1}
.lang summary::-webkit-details-marker{display:none}
.lang summary:hover{color:#fff}
.bd{width:18px;height:12px;box-shadow:0 0 0 1px rgba(255,255,255,.3)}
.seta{width:6px;height:6px;border:solid currentColor;border-width:0 1px 1px 0;transform:translateY(-2px) rotate(45deg)}
.lang details[open] .seta{transform:translateY(1px) rotate(-135deg)}
.lang ul{position:absolute;right:0;top:calc(100% + 8px);list-style:none;margin:0;padding:6px;background:var(--papel);color:var(--mar);border:1px solid var(--mar);min-width:220px;box-shadow:0 18px 36px -18px rgba(7,19,33,.6)}
.lang li a{display:flex;align-items:center;gap:10px;padding:11px 10px;text-decoration:none;font-size:.92rem}
.lang li a:hover{background:var(--papel2)}
.lang li a[aria-current]{font-weight:650}

/* fotos e janelas: recorte reto, marcas de corte nos cantos */
.ph{position:relative;overflow:hidden;background:var(--mar2);isolation:isolate}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}
.ph::after{content:"";position:absolute;inset:8px;pointer-events:none;z-index:1;
 background:linear-gradient(var(--cia),var(--cia)) 0 0/14px 1px,linear-gradient(var(--cia),var(--cia)) 0 0/1px 14px,
 linear-gradient(var(--cia),var(--cia)) 100% 0/14px 1px,linear-gradient(var(--cia),var(--cia)) 100% 0/1px 14px,
 linear-gradient(var(--cia),var(--cia)) 0 100%/14px 1px,linear-gradient(var(--cia),var(--cia)) 0 100%/1px 14px,
 linear-gradient(var(--cia),var(--cia)) 100% 100%/14px 1px,linear-gradient(var(--cia),var(--cia)) 100% 100%/1px 14px;background-repeat:no-repeat}
.ph .et{position:absolute;right:16px;top:16px;z-index:2;font:500 .72rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#fff;background:rgba(7,19,33,.78);padding:6px 8px}
.ph.foto:has(>.mk)::before{content:"";position:absolute;inset:auto 0 0;height:45%;z-index:0;pointer-events:none;background:linear-gradient(transparent,rgba(7,19,33,.62))}
.ph .mk{position:absolute;left:22px;bottom:20px;z-index:2;font:760 clamp(1.6rem,3vw,2.4rem)/1 var(--sans);font-stretch:72%;color:#fff}
.ph:not(.foto){background:var(--mar2) url(risco-ciano.svg) 50% 50%/cover no-repeat}
.ph:not(.foto)::before{content:"";position:absolute;inset:0;background:rgba(16,38,65,.72);z-index:-1}
.r45{aspect-ratio:4/5}.r169{aspect-ratio:16/9}.r43{aspect-ratio:4/3}

/* capa */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:stretch;background:var(--mar);color:#fff;isolation:isolate;overflow:hidden;padding-top:var(--topo)}
.hero .risco{position:absolute;inset:var(--topo) 0 0 0;width:100%;height:calc(100% - var(--topo));z-index:-1;opacity:.32;-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.3) 0,rgba(0,0,0,.3) 36%,#000 62%);mask-image:linear-gradient(90deg,rgba(0,0,0,.3) 0,rgba(0,0,0,.3) 36%,#000 62%)}
.hero .regua{position:absolute;left:0;right:0;top:var(--topo);height:16px;border-top:1px solid rgba(56,182,232,.32);background:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2780%27 height=%2716%27%3E%3Cpath d=%27M.5 0v16M16.5 0v7M32.5 0v7M48.5 0v7M64.5 0v7%27 stroke=%27rgba(56,182,232,.4)%27 fill=%27none%27/%3E%3C/svg%3E") 0 0/80px 16px repeat-x}
.hero .conteudo{width:100%;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:1fr auto;gap:0 clamp(28px,5vw,72px);padding-top:clamp(56px,9vh,110px);padding-bottom:clamp(28px,5vh,56px)}
.hero .hero-tx{align-self:center}
.hero h1{max-width:12em;font-size:clamp(2.9rem,6.2vw,5.4rem)}
.hero .sub{font-size:clamp(1.08rem,1.6vw,1.3rem);color:var(--mut-e);max-width:30em;margin:14px 0 34px}
.hero .acao{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center}
.hero .hero-foto{align-self:center;margin:0;aspect-ratio:4/5;max-height:calc(100svh - var(--topo) - 220px);width:100%;justify-self:end}
.hero .hero-foto img{height:128%;object-position:50% 0}
.hero .nums{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:20px clamp(32px,6vw,88px);margin-top:clamp(32px,6vh,64px)}
.hero .nums>div{position:relative;padding-top:22px;min-width:160px}
.hero .nums b{display:block;font:780 clamp(2.2rem,4.4vw,3.4rem)/1 var(--sans);font-stretch:72%;font-variant-numeric:tabular-nums}
.hero .nums span{display:block;margin-top:8px;font:500 .78rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mut-e)}
/* cota: linha de medida com batentes nas pontas */
.cota::before,.hero .nums>div::before{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:var(--cia)}
.cota::after,.hero .nums>div::after{content:"";position:absolute;left:0;right:0;top:0;height:13px;border:solid var(--cia);border-width:0 1px}
.hero>.et{position:absolute;right:var(--g);bottom:18px;font:500 .75rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mut-e)}
/* traço do risco ao carregar */
.risco .t{fill:none;stroke:var(--cia);stroke-width:1;vector-effect:non-scaling-stroke;opacity:.55}
.risco .t1{stroke-width:1.5;opacity:.9}
.risco .fio,.risco .pq{fill:none;stroke:var(--cia);stroke-width:1;vector-effect:non-scaling-stroke;opacity:.7}
.risco text{fill:var(--cia);font:500 11px var(--mono);letter-spacing:.1em;opacity:.8}
.js .hero .risco .t{stroke-dasharray:3200;stroke-dashoffset:3200;animation:traca 2.6s var(--sai) forwards}
.js .hero .risco .t1{animation-delay:.15s}.js .hero .risco .t2{animation-delay:.3s}.js .hero .risco .t3{animation-delay:.45s}
.js .hero .risco text,.js .hero .risco .fio,.js .hero .risco .pq{opacity:0;animation:aparece .8s ease-out 1.6s forwards}
@keyframes traca{to{stroke-dashoffset:0}}
@keyframes aparece{to{opacity:.8}}

/* seções */
.sec{padding:clamp(88px,11vw,160px) 0}
.escuro{background:var(--mar);color:#fff}
.alt{background:var(--papel2)}
.cab{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px clamp(32px,7vw,110px);align-items:end;margin-bottom:clamp(44px,6vw,80px)}
.cab p{margin:0}
.sec-cta{margin:clamp(36px,5vw,56px) 0 0}

/* fábricas e mapa */
.fab{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.mapa{position:relative;border:1px solid var(--linha);padding:20px;aspect-ratio:360/380;display:flex;background:#F6F8FB}
.mapa svg{width:100%;height:100%}
.mapa .grade line{stroke:rgba(11,27,46,.06);stroke-width:.5}
.mapa .ctn{fill:rgba(11,27,46,.06);stroke:rgba(11,27,46,.55);stroke-width:.5;stroke-linejoin:round}
.mapa .rota{fill:none;stroke:var(--cia-t);stroke-width:.4;opacity:.7;stroke-dasharray:2 2.5;animation:flui 3s linear infinite}
.mapa .liga{fill:none;stroke:var(--cia-t);stroke-width:.8;stroke-dasharray:3 3;animation:flui 2.4s linear infinite}
.mapa .pt{fill:var(--cia-t)}
.mapa .anel{fill:none;stroke:var(--cia-t);stroke-width:.8;transform-box:fill-box;transform-origin:center;animation:ping 3s ease-out infinite}
.mapa .cid{fill:var(--mar);opacity:.6}
.mapa .rot{font:600 5.6px var(--mono);letter-spacing:.06em;fill:var(--mar);text-transform:uppercase}
.mapa .rot2{font:400 3.8px var(--mono);fill:var(--mut)}
.mapa .rot3{font:400 3.6px var(--mono);fill:var(--mut);letter-spacing:.02em}
.mapa .tec{position:absolute;left:20px;top:16px}
.mapa .cap{position:absolute;left:20px;bottom:14px;font:500 .78rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
@keyframes flui{to{stroke-dashoffset:-12}}
@keyframes ping{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.6);opacity:0}}
.uns{display:grid;gap:clamp(24px,3.6vw,44px);position:sticky;top:calc(var(--topo) + 32px)}
.un .ph{aspect-ratio:16/10}
.un h3{margin:18px 0 4px;font-size:clamp(1.6rem,2.4vw,2rem);font-stretch:72%}
.un .loc{font:500 .78rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mut);margin-bottom:10px}
.un p{color:var(--mut);margin-bottom:6px}
.fabricas-mapa{max-width:820px;margin:0 auto}

/* capacidade */
.cap-s{text-align:center;overflow:hidden;background:linear-gradient(rgba(11,27,46,.86),rgba(11,27,46,.86)),var(--mar) url(risco-ciano.svg) 50% 50%/cover no-repeat}
.cap-s .grande{font:800 clamp(5.6rem,21vw,15rem)/.82 var(--sans);font-stretch:62%;letter-spacing:-.02em;margin:0;font-variant-numeric:tabular-nums}
.cap-s .grande small{font-size:clamp(1.9rem,7.2vw,5.1rem);font-stretch:72%;color:var(--cia);margin-left:.06em;vertical-align:top;position:relative;top:.16em}
.cap-s .un2{position:relative;max-width:560px;margin:22px auto 0;padding-top:24px;font:500 .82rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mut-e)}
.cap-s .un2::before{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:var(--cia)}
.cap-s .un2::after{content:"";position:absolute;left:0;right:0;top:0;height:13px;border:solid var(--cia);border-width:0 1px}
.cap-s .fio{display:none}
.cap-s p.t{font:600 clamp(1.3rem,2.4vw,1.8rem)/1.3 var(--sans);font-stretch:90%;max-width:24em;margin:44px auto 0;color:#fff}
.fatos{list-style:none;margin:56px auto 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;max-width:1040px;text-align:left;border:1px solid rgba(56,182,232,.32)}
.fatos li{padding:22px 22px 24px;border-left:1px solid rgba(56,182,232,.32)}
.fatos li:first-child{border-left:0}
.fatos b{display:block;font:780 clamp(1.9rem,3.2vw,2.6rem)/1 var(--sans);font-stretch:72%;color:var(--cia);margin-bottom:10px;font-variant-numeric:tabular-nums}
.fatos span{display:block;font-size:.92rem;line-height:1.4;color:#DCE6F1}

/* o que produzimos */
.prod{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 clamp(20px,3vw,48px);align-items:center;margin-bottom:clamp(56px,8vw,112px)}
.prod:last-child{margin-bottom:0}
.prod .ph{grid-column:1/8}.prod .tx{grid-column:9/13}
.prod:nth-child(even) .ph{grid-column:6/13;grid-row:1}.prod:nth-child(even) .tx{grid-column:1/5;grid-row:1}
.prod .tx{position:relative;padding-top:22px}
.prod .tx::before{content:"";position:absolute;left:0;top:0;width:56px;height:1px;background:var(--cia-t)}
.prod .tx h3{font-size:clamp(2rem,3.6vw,3rem);font-stretch:72%;font-weight:760;margin:12px 0 14px}
.prod .tx p{color:var(--mut);margin-bottom:22px}

/* personalização: peças de molde, linha de corte e costura tracejada */
.pers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.6vw,20px)}
.pers>div{position:relative;padding:26px 24px 24px;border:1px solid var(--cia);outline:1px dashed rgba(56,182,232,.55);outline-offset:-9px}
.pers h3{margin-bottom:10px;font-size:clamp(1.5rem,2.2vw,1.9rem);font-stretch:72%}
.pers p{margin:0;color:#DCE6F1}

/* processo: fita métrica */
.rastro{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px;padding-bottom:12px;border-bottom:1px solid var(--linha);font:500 .78rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.rastro b{font-weight:600;color:var(--tx)}
.lt{list-style:none;margin:0;padding:16px 0 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;position:relative;border-top:1px solid var(--mar)}
.lt::before{content:"";position:absolute;left:0;right:0;top:0;height:12px;background:linear-gradient(90deg,var(--mar) 1px,transparent 1px) 0 0/16px 6px repeat-x;opacity:.5}
.lt::after{content:"";position:absolute;left:0;top:-2px;height:3px;width:calc(var(--p,0)*100%);background:var(--cia-t);transition:width .5s var(--sai)}
.lt li{position:relative;padding:34px 18px 0 0;border-left:1px solid var(--linha);padding-left:16px;transition:border-color .5s}
.lt li:not(.on) .num{color:var(--mut)}
.lt li:first-child{border-left-color:var(--mar)}
.lt li.on{border-left-color:var(--cia-t)}
.lt .num{display:block;margin-bottom:12px;color:var(--cia-t);font-weight:600}
.lt h3{font-size:clamp(1.25rem,1.6vw,1.45rem);margin-bottom:8px;font-stretch:80%}
.lt p{font-size:.94rem;color:var(--mut);margin:0}

/* qualidade e prazo */
.qual{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(40px,7vw,110px);align-items:start}
.qual h2{font-size:clamp(2.4rem,5.4vw,4.4rem)}
.pr{display:grid}
.pr>div{display:grid;grid-template-columns:minmax(0,1fr);padding:22px 0 22px 26px;border-top:1px solid var(--linha);position:relative}
.pr>div::before{content:"";position:absolute;left:0;top:30px;width:12px;height:1px;background:var(--cia-t)}
.pr>div:last-child{border-bottom:1px solid var(--linha)}
.pr h3{font-size:1.5rem;margin-bottom:6px;font-stretch:80%}.pr p{margin:0;color:var(--mut)}

/* tecnologia */
.tecn{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(24px,4vw,56px);margin-top:28px;border-top:1px solid var(--mar)}
.tecn>div{padding:18px 0;border-bottom:1px solid var(--linha)}
.tecn p{font:650 1.2rem/1.25 var(--sans);font-stretch:85%;margin:0;color:var(--tx)}

/* perguntas */
.faq{max-width:900px;border-top:1px solid var(--mar);padding-top:6px}
.faq details{border-bottom:1px solid var(--linha)}
.faq summary{cursor:pointer;list-style:none;padding:22px 52px 22px 0;position:relative;font:680 clamp(1.15rem,1.8vw,1.4rem)/1.3 var(--sans);font-stretch:88%;transition:color .2s}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before,.faq summary::after{content:"";position:absolute;right:8px;top:50%;width:16px;height:1px;background:var(--cia-t);transition:transform .3s var(--sai)}
.faq summary::after{transform:rotate(90deg)}
.faq details[open] summary::after{transform:rotate(0)}
.faq summary:hover{color:var(--cia-t)}
.faq details p{color:var(--mut);margin:0 0 24px;max-width:680px}

/* marcas que confiaram */
.marcas{text-align:left}
.marcas ul{list-style:none;margin:20px 0 28px;padding:0;display:flex;flex-wrap:wrap;border-top:1px solid var(--mar)}
.marcas li{font:760 clamp(1.5rem,2.8vw,2.3rem)/1 var(--sans);font-stretch:72%;padding:22px clamp(18px,2.6vw,36px) 22px 0;margin-right:clamp(18px,2.6vw,36px);position:relative}
.marcas li::after{content:"";position:absolute;right:calc(-1 * clamp(18px,2.6vw,36px));top:0;width:1px;height:12px;background:var(--mar)}
.marcas li:last-child::after{display:none}
.aviso{font-size:.9rem;color:var(--mut);max-width:48em;margin:0}
.aviso strong{font-weight:650;color:var(--tx)}

/* para marcas (produção com a marca do cliente) */
.marca-propria{padding:clamp(88px,11vw,160px) 0;background:var(--papel2)}
.mp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(36px,7vw,110px);align-items:start}
.mp h2{margin-bottom:24px}
.mp .lead{margin-bottom:32px}
.ficha-box{border:1px solid var(--mar);background:var(--papel)}
.ficha{margin:0}
.mp .acao{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center}
.ficha>div{display:grid;grid-template-columns:minmax(0,11em) minmax(0,1fr);gap:16px;padding:18px 22px;border-top:1px solid var(--linha)}
.ficha>div:first-child{border-top:0}
.ficha dt{font:500 .78rem/1.5 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--cia-t);padding-top:3px}
.ficha dd{margin:0;color:var(--tx)}
.ficha-cab{margin:0;display:flex;justify-content:space-between;gap:12px;padding:12px 22px;background:var(--mar);color:#fff;font:500 .78rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.ficha-cab span:last-child{color:var(--cia)}

/* chamada final */
.cta{text-align:left;background:linear-gradient(90deg,var(--mar) 40%,rgba(11,27,46,.7)),var(--mar) url(risco-ciano.svg) 100% 50%/auto 140% no-repeat}
.cta h2{font-size:clamp(2.6rem,6.4vw,5.2rem);margin-bottom:36px;max-width:12em}
.cta .acao{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center}
.cta .tec{margin-top:28px}

/* páginas internas */
.pag{padding:calc(var(--topo) + clamp(72px,10vw,136px)) 0 clamp(56px,7vw,96px);background:linear-gradient(90deg,var(--mar) 45%,rgba(11,27,46,.72)),var(--mar) url(risco-ciano.svg) 110% 50%/auto 160% no-repeat;color:#fff}
html[lang^="en"] .pag{background:linear-gradient(90deg,var(--mar) 45%,rgba(11,27,46,.72)),var(--mar) url(risco-ciano-en.svg) 110% 50%/auto 160% no-repeat}
html[lang^="es"] .pag{background:linear-gradient(90deg,var(--mar) 45%,rgba(11,27,46,.72)),var(--mar) url(risco-ciano-es.svg) 110% 50%/auto 160% no-repeat}
.pag::before{top:var(--topo)}
.pag h1{font-size:clamp(2.8rem,6.6vw,5.4rem);max-width:12em}
.pag .lead{margin-top:24px}
.pag+section:not(.sec){padding-top:clamp(56px,7vw,96px)}
.det{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,90px);align-items:center;margin-bottom:clamp(56px,8vw,112px)}
.det:nth-child(even) .ph{order:2}
.det h2{font-size:clamp(2.2rem,4vw,3.3rem);margin:12px 0 18px}
.det p{color:var(--mut)}
.dados{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid var(--mar)}
.dados li{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--linha);font-size:.95rem}
.dados span:first-child{font:500 .78rem/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.dados span:last-child{text-align:right}

/* orçamento */
.orc-f{max-width:860px;padding-bottom:clamp(64px,8vw,120px)}
.orc-f fieldset{border:0;border-top:1px solid var(--mar);margin:0;padding:30px 0 36px}
.orc-f legend{float:left;width:100%;display:flex;align-items:baseline;gap:16px;font:760 clamp(1.6rem,2.8vw,2.2rem)/1.1 var(--sans);font-stretch:72%;margin-bottom:22px;padding:0}
.orc-f legend span{font:600 .8rem/1 var(--mono);color:var(--cia-t);border:1px solid var(--cia-t);padding:6px 8px}
.op{clear:both;display:flex;flex-wrap:wrap;gap:10px}
.op label{cursor:pointer}
.op input{position:absolute;opacity:0;pointer-events:none}
.op span{display:flex;align-items:center;min-height:48px;padding:0 20px;border:1px solid var(--linha);background:#F7F9FB;font-size:.98rem;transition:border-color .2s,background .2s,color .2s}
.op label:hover span{border-color:var(--mar)}
.op input:checked+span{background:var(--mar);color:#fff;border-color:var(--mar);box-shadow:inset 3px 0 0 var(--cia)}
.op input:focus-visible+span{outline:2px solid var(--mar);outline-offset:3px}
.orc-f .l{display:block;font:500 .78rem/1.5 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mut);margin-bottom:8px}
.orc-f input[type=text],.orc-f textarea{width:100%;font:400 1rem var(--sans);padding:14px 14px;border:1px solid var(--linha);background:#F7F9FB;color:var(--tx);border-radius:0}
.orc-f input[type=text]:hover,.orc-f textarea:hover{border-color:var(--mut)}
.orc-f input[type=text]:focus,.orc-f textarea:focus{outline:2px solid var(--mar);outline-offset:1px;border-color:var(--mar)}
.erro{color:#A2332D;min-height:1.4em;font-size:.94rem;font-weight:600}
.mini{font-size:.86rem;color:var(--mut)}

/* 404 e textos */
.nao{min-height:100vh;min-height:100svh;display:flex;align-items:center;background:linear-gradient(rgba(11,27,46,.84),rgba(11,27,46,.84)),var(--mar) url(risco-ciano.svg) 50% 50%/cover no-repeat;color:#fff;padding-top:var(--topo)}
html[lang^="en"] .nao{background:linear-gradient(rgba(11,27,46,.84),rgba(11,27,46,.84)),var(--mar) url(risco-ciano-en.svg) 50% 50%/cover no-repeat}
html[lang^="es"] .nao{background:linear-gradient(rgba(11,27,46,.84),rgba(11,27,46,.84)),var(--mar) url(risco-ciano-es.svg) 50% 50%/cover no-repeat}
.nao .g{font:800 clamp(7rem,26vw,15rem)/.85 var(--sans);font-stretch:62%;color:var(--cia)}
.nao .lead{color:var(--mut-e)}
.txt{max-width:720px;padding-bottom:clamp(64px,8vw,120px)}
.txt h2,.txt h3{margin:36px 0 8px;font-size:1.5rem;font-stretch:80%;font-weight:700;line-height:1.08}
.txt p{color:var(--mut)}

/* rodapé */
footer{background:var(--fundo);color:#C3D0DE;padding:clamp(64px,8vw,104px) 0 32px;font-size:.94rem;position:relative}
footer::before{content:"";position:absolute;left:0;right:0;top:0;height:16px;border-top:1px solid rgba(56,182,232,.32);background:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2780%27 height=%2716%27%3E%3Cpath d=%27M.5 0v16M16.5 0v7M32.5 0v7M48.5 0v7M64.5 0v7%27 stroke=%27rgba(56,182,232,.4)%27 fill=%27none%27/%3E%3C/svg%3E") 0 0/80px 16px repeat-x}
footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
footer .logo{display:inline-block;margin-bottom:16px}
footer .logo img{height:34px}
footer h4{font:600 .78rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--cia);margin:0 0 16px}
footer p{margin:0 0 8px}
footer a{text-decoration:underline;text-decoration-color:rgba(56,182,232,.5)}
footer a:hover{color:#fff;text-decoration-color:var(--cia)}
footer .fim{margin:56px 0 0;padding-top:20px;border-top:1px solid rgba(56,182,232,.2);font:500 .78rem/1.4 var(--mono);letter-spacing:.04em;color:#93A6BB}

/* avisos fixos */
.modelo{position:absolute;left:var(--g);top:calc(var(--topo) + 24px);z-index:40;background:var(--fundo);color:#fff;font:500 .7rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:8px 10px;border:1px solid rgba(56,182,232,.5);pointer-events:none}
.consent{position:fixed;left:12px;right:12px;bottom:46px;z-index:70;max-width:560px;margin-left:auto;background:var(--papel);color:var(--tx);border:1px solid var(--mar);box-shadow:0 22px 44px -22px rgba(7,19,33,.7);padding:18px 20px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:.9rem}
.consent button{min-height:44px;font:650 .78rem/1 var(--sans);font-stretch:88%;letter-spacing:.06em;text-transform:uppercase;padding:0 16px;border:1px solid var(--mar);background:none;color:var(--mar);cursor:pointer}
.consent button:hover{background:var(--papel2)}
.consent .ok{background:var(--mar);color:#fff}
.consent .ok:hover{background:var(--cia-t);border-color:var(--cia-t)}
.wa-flut{position:fixed;right:18px;bottom:18px;z-index:60;width:56px;height:56px;background:var(--mar);color:#fff;display:flex;align-items:center;justify-content:center;border:1px solid var(--cia);box-shadow:0 10px 24px -8px rgba(7,19,33,.55);transition:background .2s}
.wa-flut:hover{background:var(--cia-t)}
.wa-flut svg{width:26px;height:26px;fill:currentColor}
.wa-flut span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body:has(.consent) .wa-flut{bottom:100px}

/* revelação: conteúdo sempre visível; o único movimento autoral é o traço do risco e a fita do processo */
.rv{opacity:1}

@media(max-width:1060px){
 .hero .conteudo{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}
 .hero .hero-foto{justify-self:stretch;aspect-ratio:16/10;max-height:none;margin-top:36px}
 .lt{grid-template-columns:minmax(0,1fr);border-top:0;border-left:1px solid var(--mar);margin-left:6px}
 .lt::before{right:auto;bottom:0;width:12px;height:auto;background:linear-gradient(var(--mar) 1px,transparent 1px) 0 0/6px 16px repeat-y}
 .lt::after{left:-2px;top:0;width:3px;height:calc(var(--p,0)*100%);transition:height .5s var(--sai)}
 .lt li{padding:0 0 30px 28px;border-left:0}
 .lt li.on{border-left:0}
 .fab,.cab,.qual,.det,.mp{grid-template-columns:minmax(0,1fr)}
 .uns{position:static}
 .det:nth-child(even) .ph{order:0}
 .pers{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fatos{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fatos li:nth-child(3){border-left:0}
 .fatos li:nth-child(n+3){border-top:1px solid rgba(56,182,232,.32)}
 footer .cols{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
 .mb{display:block;position:relative;z-index:2}
 .topo .wrap{gap:14px}
 .menu{position:fixed;inset:var(--topo) 0 0 0;background:var(--mar);flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;padding:32px var(--g);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
 .menu.aberto{opacity:1;visibility:visible}
 .menu a{font-size:1.5rem;font-stretch:72%;font-weight:760;padding:14px 0;width:100%;border-bottom:1px solid rgba(56,182,232,.22)}
 .menu .orc{margin-top:20px;width:auto;font-size:.9rem;font-stretch:88%;padding:16px 20px}
 .lang ul{right:-70px}
 .prod{display:block}
 .prod .tx{margin-top:24px}
 .prod:nth-child(even) .ph,.prod:nth-child(even) .tx{grid-column:auto}
 .sec,.marca-propria{padding-top:clamp(84px,14vw,120px)}
}
@media(max-width:560px){
 body{font-size:16px}
 .pers,.tecn,.fatos{grid-template-columns:minmax(0,1fr)}
 .fatos li{border-left:0;border-top:1px solid rgba(56,182,232,.32)}
 .fatos li:first-child{border-top:0}
 footer .cols{grid-template-columns:1fr}
 .hero .nums{gap:20px 28px}
 .hero .nums>div{min-width:0;flex:1 1 130px}
 .ficha>div{grid-template-columns:minmax(0,1fr);gap:4px}
 .rastro{flex-direction:column;align-items:flex-start;gap:6px}
 .mapa{padding:12px}
 .mapa .rot3{font-size:4.2px}.mapa .rot{font-size:6.4px}.mapa .rot2,.mapa .cap{display:none}
 .marcas li{padding-right:18px;margin-right:18px}
 .consent{bottom:40px}
 .wa-flut{right:14px;bottom:14px;width:52px;height:52px}
 body:has(.consent) .wa-flut{display:none}
 .topo .logo{padding:8px 0}
 .hero>.et{display:none}
 footer .cols a{display:inline-block;padding:9px 0;margin:-3px 0}
 a[href^="tel:"],a[href*="wa.me"]:not(.btn):not(.lnk):not(.wa-flut){white-space:nowrap}
 .consent{box-shadow:none}
 .consent button{flex:1}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .js .hero .risco .t{animation:none;stroke-dasharray:none;stroke-dashoffset:0}
 .js .hero .risco text,.js .hero .risco .fio,.js .hero .risco .pq{animation:none;opacity:.8}
 .mapa .rota,.mapa .liga,.mapa .anel{animation:none}
 .lt::after{transition:none}
 .btn,.lnk::after,.btn i,.faq summary::before,.faq summary::after,.menu{transition:none}
 .btn:active{transform:none}
}
