/* ===== Páginas internas — mesmo design system da Home ===== */

/* Hero interno (grafite, sem foto) */
.page-hero{background:var(--charcoal);color:#fff;padding:130px 0 54px;position:relative}
.page-hero:not(.page-hero--img)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(255,255,255,.08)}
.page-hero .eyebrow{color:var(--gold-soft)}
.page-hero h1{font-size:clamp(1.9rem,3.4vw,2.7rem);line-height:1.12;margin:8px 0 0;color:#fff}
.page-hero .intro{color:var(--on-dark);max-width:720px;margin-top:16px;font-size:1.05rem}
.page-hero .hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}

/* Breadcrumb */
.crumbs{font-size:.8rem;color:var(--on-dark);margin-bottom:18px}
.crumbs a{color:var(--on-dark)}
.crumbs a:hover{color:var(--gold-soft)}
.crumbs .sep{margin:0 8px;opacity:.45}
.crumbs [aria-current]{color:var(--gold-soft)}

/* Blocos de conteúdo */
.block{padding:56px 0;border-top:1px solid var(--line)}
.block.alt{background:#fff}
.block .wrap>.eyebrow{display:block;margin-bottom:2px}
.prose{max-width:780px}
.prose h2{font-size:clamp(1.4rem,2.4vw,1.85rem);color:var(--ink);margin:0 0 6px}
.prose h3{font-size:1.12rem;color:var(--ink);margin:22px 0 6px}
.prose p{color:var(--muted);margin:0 0 14px}
.prose p.lead{font-size:1.06rem;color:var(--ink)}
.prose ul{list-style:none;margin:2px 0 16px;padding:0}
.prose li{position:relative;padding-left:22px;margin:9px 0;color:var(--muted)}
.prose li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:2px;background:var(--gold)}
.prose strong{color:var(--ink)}

/* Duas colunas para escopo/aplicações */
.split{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:none}
.split .col h3{margin-top:0}

/* Lista de especialidades (hubs) — reaproveita .card mas em grade própria */
.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}
.spec-grid.c4{grid-template-columns:repeat(2,1fr)}

/* FAQ acessível sem JS (details/summary) */
.faq{max-width:820px}
.faq details{border:1px solid var(--line);border-radius:12px;padding:0 18px;margin-bottom:12px;background:#fff}
.faq summary{cursor:pointer;font-weight:600;color:var(--ink);padding:16px 0;list-style:none;position:relative;padding-right:28px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:2px;top:14px;color:var(--gold);font-size:1.35rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details>p{color:var(--muted);margin:0;padding:0 0 16px}

/* Faixa de CTA final */
.cta-band{background:var(--dark);color:#fff;text-align:center;padding:58px 0}
.cta-band h2{color:#fff;font-size:clamp(1.5rem,2.6vw,2rem)}
.cta-band p{color:var(--on-dark);max-width:580px;margin:12px auto 22px}
.cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

@media(max-width:900px){ .spec-grid{grid-template-columns:1fr 1fr} }
@media(max-width:760px){
  .split{grid-template-columns:1fr}
  .spec-grid,.spec-grid.c4{grid-template-columns:1fr}
  .page-hero{padding:112px 0 44px}
}

/* ===== Hero interno com imagem (<img> + overlay grafite) ===== */
.page-hero{position:relative;background-color:var(--charcoal);overflow:hidden}
.page-hero .wrap{position:relative;z-index:3}
.page-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%;z-index:0;display:block;filter:grayscale(.4) saturate(.75) brightness(.72) contrast(1.03)}
.page-hero--img::before{content:"";position:absolute;inset:0;z-index:1;background:rgba(18,19,20,.25)}
.page-hero--img::after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(18,19,20,.82) 0%,rgba(18,19,20,.78) 30%,rgba(18,19,20,.65) 50%,rgba(18,19,20,.42) 68%,rgba(18,19,20,.18) 85%,rgba(18,19,20,0) 100%)}

/* ===== Processo em etapas (cards horizontais responsivos) ===== */
.steps{counter-reset:st;display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:24px}
.steps .step{flex:1 1 200px;min-width:200px;max-width:260px;text-align:left;position:relative;padding:62px 20px 20px;background:#fff;border:1px solid var(--line);border-radius:12px}
.steps .step::before{counter-increment:st;content:counter(st,decimal-leading-zero);position:absolute;left:20px;top:18px;width:36px;height:36px;border-radius:9px;background:var(--dark);color:var(--gold-soft);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.88rem}
.steps .step::after{content:none}
.steps .step h3{margin:0 0 4px;font-size:1.04rem;color:var(--ink)}
.steps .step p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.5}
@media(max-width:520px){.steps .step{max-width:none;flex-basis:100%}}

/* ===== Checklist de diferenciais ===== */
.checklist{list-style:none;padding:0;margin:8px 0 0;max-width:820px}
.checklist li{position:relative;padding:11px 0 11px 34px;border-bottom:1px solid var(--line);color:var(--ink)}
.checklist li:last-child{border-bottom:0}
.checklist li::before{content:"✓";position:absolute;left:4px;top:11px;color:var(--gold);font-weight:700}

/* ===== Item 4: botões do hero/CTA com mesma altura e largura ===== */
.page-hero .hero-actions .btn,
.cta-band .cta-actions .btn{min-width:230px;justify-content:center;text-align:center}
@media(max-width:560px){
  .page-hero .hero-actions,.cta-band .cta-actions{width:100%}
  .page-hero .hero-actions .btn,.cta-band .cta-actions .btn{flex:1 1 100%;min-width:0}
}

/* ===== Item 5: subtítulo complementar das seções dos hubs ===== */
.hub-note{color:var(--muted);font-size:1.05rem;line-height:1.5;max-width:640px}

/* ===== Item 3: hero no mobile — aproveitar a parte direita + overlay uniforme p/ leitura ===== */
@media(max-width:640px){
  .page-hero__img{object-position:82% center !important}
  .page-hero--img::before{background:rgba(18,19,20,.3)}
  .page-hero--img::after{background:linear-gradient(180deg,rgba(18,19,20,.8) 0%,rgba(18,19,20,.76) 45%,rgba(18,19,20,.7) 65%,rgba(18,19,20,.48) 82%,rgba(18,19,20,.25) 100%)}
}

/* ===== Rodada editorial: cabeçalhos de seção fora de .prose ===== */
.block .wrap>h2{font-size:clamp(1.4rem,2.4vw,1.85rem);color:var(--ink);margin:0 0 6px}
.block .wrap>.sec-lead{color:var(--muted);max-width:840px;margin:6px 0 0;font-size:1rem;line-height:1.6}
.block .wrap>.sec-lead.big{font-size:1.06rem;color:var(--ink)}

/* Grid de blocos técnicos (3/2/4 colunas conforme a seção) */
.tblocks{display:grid;gap:16px;margin-top:22px;grid-template-columns:repeat(3,1fr)}
.tblocks.cols-2{grid-template-columns:repeat(2,1fr)}
.tblocks.cols-4{grid-template-columns:repeat(4,1fr)}
.tblocks .tblock{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 22px}
.tblocks .tblock .k{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;display:block;margin-bottom:6px}
.tblocks .tblock h3{font-size:1.05rem;color:var(--ink);margin:0 0 6px}
.tblocks .tblock p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}
@media(max-width:900px){.tblocks,.tblocks.cols-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.tblocks,.tblocks.cols-2,.tblocks.cols-4{grid-template-columns:1fr}}

/* Lista de definição em 2 colunas (termo + descrição curta) */
.deflist{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;margin-top:20px}
.deflist .d h3{font-size:1rem;color:var(--ink);margin:0 0 3px}
.deflist .d p{margin:0;color:var(--muted);font-size:.94rem;line-height:1.5}
@media(max-width:640px){.deflist{grid-template-columns:1fr}}

/* Comparação lado a lado (2 ou 3 blocos) */
.compare{display:grid;gap:16px;margin-top:22px;grid-template-columns:repeat(2,1fr)}
.compare.c3{grid-template-columns:repeat(3,1fr)}
.compare .item{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 24px;border-top:3px solid var(--gold)}
.compare .item h3{font-size:1.08rem;color:var(--ink);margin:0 0 8px}
.compare .item p{margin:0;color:var(--muted);line-height:1.55;font-size:.97rem}
@media(max-width:760px){.compare,.compare.c3{grid-template-columns:1fr}}

/* Grid compacto de entregáveis (marcados) */
.dgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 28px;margin-top:18px;list-style:none;padding:0}
.dgrid.c3{grid-template-columns:repeat(3,1fr)}
.dgrid li{position:relative;padding:9px 0 9px 26px;border-bottom:1px solid var(--line);color:var(--ink);font-size:.95rem}
.dgrid li::before{content:"✓";position:absolute;left:2px;top:9px;color:var(--gold);font-weight:700}
@media(max-width:900px){.dgrid.c3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.dgrid,.dgrid.c3{grid-template-columns:1fr}}

/* Cards clicáveis (hub: "qual serviço você precisa?") */
.pick{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px}
.pick a{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 24px;transition:transform .16s,box-shadow .16s,border-color .16s}
.pick a:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(27,36,50,.09);border-color:#dfe3e9}
.pick h3{font-size:1.1rem;color:var(--ink);margin:0 0 6px}
.pick p{margin:0 0 12px;color:var(--muted);font-size:.96rem;line-height:1.55}
.pick .more{color:var(--gold);font-weight:600;font-size:.9rem}
@media(max-width:760px){.pick{grid-template-columns:1fr}}

/* Blocos diferenciados full-width (texto mais longo, borda dourada) */
.stack{display:grid;gap:16px;margin-top:22px}
.stack .item{background:#fff;border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:12px;padding:20px 24px}
.stack .item h3{font-size:1.1rem;color:var(--ink);margin:0 0 8px}
.stack .item p{margin:0 0 10px;color:var(--muted);line-height:1.6;font-size:.97rem}
.stack .item p:last-child{margin-bottom:0}

/* ===== Rodada de ajustes: FAQ centralizado (bloco), texto interno à esquerda ===== */
.faq-block .wrap{text-align:center}
.faq-block .wrap>.eyebrow,.faq-block .wrap>h2{display:block}
.faq-block .faq{margin-left:auto;margin-right:auto;text-align:left}

/* Grid de 6 etapas em 3 + 3 (modificador; não afeta .steps padrão de 5) */
.steps.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.steps.grid3 .step{max-width:none;min-width:0;flex:none}
@media(max-width:900px){.steps.grid3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.steps.grid3{grid-template-columns:1fr}}

/* dgrid centralizado e com largura contida (2×N ou 3×N simétricos) */
.dgrid.narrow{max-width:900px;margin-left:auto;margin-right:auto}

/* Ícones nos cards clicáveis (hub) — mesma linguagem visual da Home */
.pick .ic{width:42px;height:42px;border-radius:10px;background:var(--dark);color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.pick.primary .ic{background:var(--gold);color:#231a06}
.pick .ic svg{width:22px;height:22px}
/* Hub Projetos: 5 especialidades em uma linha (desktop amplo), centralizado */
.pick.c5{grid-template-columns:repeat(5,1fr);gap:14px}
.pick.c5 a{padding:20px 18px}
@media(max-width:1100px){.pick.c5{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.pick.c5{grid-template-columns:1fr}}

/* Projetos em destaque nas páginas internas: 4 em linha → 2+2 → 1 */
.proj-grid.cols-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1024px){.proj-grid.cols-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.proj-grid.cols-4{grid-template-columns:1fr}}

/* ===== Fase 3: página de Portfólio ===== */
/* Linha complementar do hero */
.page-hero .intro-sub{font-size:.98rem;color:var(--on-dark);margin-top:6px}

/* Projetos em Destaque maiores (2×2) — mesma linguagem, cards ampliados */
.proj-grid.big{gap:22px}
.proj-grid.big .proj .ph{height:300px}
.proj-grid.big .proj .body{padding:24px 26px}
.proj-grid.big .proj h3{font-size:1.3rem}
@media(max-width:560px){.proj-grid.big .proj .ph{height:220px}}

/* Outros projetos (sem imagem) — grid único 2 col × 4 */
.pgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:22px}
.pcard{background:#fff;border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:12px;padding:22px 24px}
.pcard-co{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;display:block;margin-bottom:8px}
.pcard h3{font-size:1.06rem;color:var(--ink);margin:0 0 8px;line-height:1.35}
.pcard-loc{margin:0;color:var(--muted);font-size:.92rem}
@media(max-width:760px){.pgrid{grid-template-columns:1fr}}

/* Experiência multidisciplinar — 3 × 2 com ícones */
.mdgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}
.mdgrid .md{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px 22px}
.mdgrid .md .ic{width:46px;height:46px;border-radius:10px;background:var(--dark);color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.mdgrid .md .ic svg{width:24px;height:24px}
.mdgrid .md h3{font-size:1.08rem;color:var(--ink);margin:0 0 6px}
.mdgrid .md p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}
@media(max-width:900px){.mdgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.mdgrid{grid-template-columns:1fr}}

/* ===== Fase 4A: páginas legais ===== */
.legal-body{padding:56px 0}
.legal-content{max-width:820px}
.legal-updated{color:var(--muted);font-size:.9rem;margin:0 0 26px}
.legal-content h2{margin-top:32px}
.legal-content h2:first-of-type{margin-top:0}
