@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--ink:#07131d;--navy:#0a1f2e;--paper:#f4f1e9;--white:#fff;--mint:#59e0b1;--line:#cbd3d4;--muted:#5f6f77}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}header{height:82px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:#07131df5;color:#fff;position:sticky;top:0;z-index:9;border-bottom:1px solid #ffffff1c}.brand{display:flex;align-items:center;gap:10px}.brand span{font:800 28px/1 Manrope}.brand small{font:700 10px/1 Manrope;letter-spacing:.22em;color:var(--mint)}nav{display:flex;align-items:center;gap:30px;font-size:14px}.cta,.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:3px;font-weight:700}.cta,.primary{background:var(--mint);color:#06140f}.menu{display:none;background:none;border:0;color:#fff;font-size:25px}.hero{min-height:720px;position:relative;background:#07131d;color:#fff;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#07131df7 0%,#07131ddd 35%,#07131d20 72%)}.hero-copy{position:relative;z-index:1;width:min(700px,90vw);margin-left:7vw}.eyebrow{font:700 12px/1 Manrope;letter-spacing:.19em;color:#168868}.hero .eyebrow{color:var(--mint)}h1,h2,h3{font-family:Manrope,sans-serif;margin:0 0 18px;line-height:1.08}h1{font-size:clamp(48px,7vw,88px);letter-spacing:-.055em}h1 em{font-style:normal;color:var(--mint)}h2{font-size:clamp(35px,5vw,62px);letter-spacing:-.04em}.hero-copy>p:not(.eyebrow){font-size:19px;max-width:610px;color:#d8e0e2}.actions{display:flex;gap:12px;margin-top:34px}.ghost{border:1px solid #ffffff75;color:#fff}.statement,.section,.contact{padding:100px 7vw}.statement{background:#fff}.statement>p{color:#168868;font-weight:700}.statement h2{max-width:980px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:55px;border:1px solid var(--line)}.metrics div{background:#fff;padding:28px}.metrics b{display:block;font:800 38px Manrope}.metrics span{color:var(--muted)}.section .intro{max-width:750px;color:var(--muted);font-size:18px}.divisions{display:grid;grid-template-columns:repeat(3,1fr);margin-top:45px;border-top:1px solid #9eaaac;border-left:1px solid #9eaaac}.division{min-height:310px;padding:32px;border-right:1px solid #9eaaac;border-bottom:1px solid #9eaaac;transition:.25s;background:#f4f1e9}.division:hover{background:#fff;transform:translateY(-4px)}.division span{font:700 12px Manrope;color:#168868}.division h3{font-size:25px;margin-top:58px}.division p{color:var(--muted)}.division strong{display:block;margin-top:28px}.band{background:var(--navy);color:#fff;padding:100px 7vw;display:grid;grid-template-columns:1fr 1.2fr;gap:8vw}.band .eyebrow{color:var(--mint)}.band ol{list-style:none;padding:0;margin:0}.band li{display:grid;grid-template-columns:150px 1fr;padding:24px 0;border-top:1px solid #ffffff2b}.band li span{color:#bdc9cd}.contact{text-align:center;background:#fff}.contact p{max-width:650px;margin:0 auto 28px;color:var(--muted)}.contact small{display:block;margin-top:14px;color:var(--muted)}footer{padding:45px 7vw;background:#061018;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:22px}footer div{display:flex;justify-content:flex-end;gap:25px}footer>small{grid-column:1/-1;color:#8d9ba1;border-top:1px solid #ffffff1c;padding-top:20px}
.page-hero{padding:110px 7vw 80px;background:var(--navy);color:#fff}.page-hero h1{max-width:920px}.page-hero p{max-width:760px;color:#c7d2d5;font-size:19px}.service-list{padding:80px 7vw;display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.service-item{background:#fff;padding:35px;border-top:4px solid var(--mint)}.service-item h3{font-size:25px}.service-item ul{padding-left:20px;color:var(--muted)}.notice{padding:30px;border:1px solid #90a0a1;background:#fff}.wide{grid-column:1/-1}.partner-empty{text-align:center;padding:55px;background:#fff;border:1px dashed #9aa}.partner-empty h3{font-size:28px}
@media(max-width:800px){header{height:68px}.menu{display:block}nav{display:none;position:absolute;top:68px;left:0;right:0;background:#07131d;padding:25px;flex-direction:column;align-items:stretch}nav.open{display:flex}.hero{min-height:690px}.hero-copy{margin-left:6vw}.actions{flex-direction:column;align-items:flex-start}.metrics,.divisions,.service-list{grid-template-columns:1fr}.band{grid-template-columns:1fr}.band li{grid-template-columns:1fr;gap:7px}footer{grid-template-columns:1fr}footer div{justify-content:flex-start;flex-wrap:wrap}}

/* ===== FGI 27/09: marca, idioma, animacao, portfolio, contato ===== */
.brand svg{height:48px;width:auto;display:block}
footer .brand svg{height:40px}
.lang{border:1px solid #ffffff4d;border-radius:3px;padding:6px 10px;font-weight:700;font-size:12px;letter-spacing:.1em}
.lang:hover{border-color:var(--mint);color:var(--mint)}
nav a:not(.cta):not(.lang):hover{color:var(--mint)}
.button{transition:transform .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px);box-shadow:0 10px 24px #07131d26}
.outline{border:1px solid #07131d;color:#07131d;background:transparent}
.actions.center{justify-content:center;flex-wrap:wrap}
.contact .actions{margin-top:10px}
@media (prefers-reduced-motion:no-preference){
  .brand .arco{stroke-dasharray:1;stroke-dashoffset:1;animation:fgi-desenha 1.1s cubic-bezier(.3,.7,.2,1) .15s forwards}
  .hero-copy>*{opacity:0;transform:translateY(18px);animation:fgi-sobe .8s cubic-bezier(.2,.8,.2,1) forwards}
  .hero-copy>*:nth-child(1){animation-delay:.2s}.hero-copy>*:nth-child(2){animation-delay:.35s}
  .hero-copy>*:nth-child(3){animation-delay:.5s}.hero-copy>*:nth-child(4){animation-delay:.65s}
  .page-hero>*{opacity:0;transform:translateY(14px);animation:fgi-sobe .7s ease-out forwards}
  .page-hero>*:nth-child(2){animation-delay:.12s}.page-hero>*:nth-child(3){animation-delay:.24s}
}
@keyframes fgi-desenha{to{stroke-dashoffset:0}}
@keyframes fgi-sobe{to{opacity:1;transform:none}}
.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;padding:80px 7vw}
.portfolio-home .portfolio-grid{grid-template-columns:repeat(3,1fr);padding:45px 0 0}
.case{background:#fff;border:1px solid #d9dfe0;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.case:hover{transform:translateY(-4px);box-shadow:0 18px 40px #07131d1f}
.case img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;background:#07131d}
.case>div{padding:28px 30px 32px}
.case .tag{font:700 12px/1 Manrope;letter-spacing:.16em;color:#168868;text-transform:uppercase;margin:0}
.case h3{font-size:25px;margin:14px 0 10px}
.case p{color:var(--muted);margin:0}
.case .stack{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px}
.case .stack span{font:600 12px/1 Manrope;background:#f4f1e9;border:1px solid #d9dfe0;padding:7px 11px;border-radius:999px;color:#07131d}
.case .stack .selo{background:#07131d;color:var(--mint);border-color:#07131d}
.mais{margin-top:36px}
.na-pratica{padding:0 7vw 90px}
.na-pratica figure{margin:18px 0 0;background:#fff;border:1px solid #d9dfe0;overflow:hidden}
.na-pratica img,.na-pratica video{width:100%;display:block;max-height:640px;object-fit:cover;background:#07131d}
.na-pratica figcaption{padding:18px 24px;color:var(--muted)}
.na-pratica figcaption a{color:#168868;font-weight:700;margin-left:6px}
@media(max-width:800px){.portfolio-grid,.portfolio-home .portfolio-grid{grid-template-columns:1fr}.brand svg{height:40px}}
.rodape-marca p{color:#9fb0b6;margin:14px 0 0;max-width:420px}
footer>div:not(.rodape-marca){align-items:center}
@media(max-width:800px){.actions.center{align-items:center}}
