/* Páginas internas por área de atuação — complementa site.css */
.page-hero{background:var(--ink);padding:150px 5% 80px;position:relative;overflow:hidden}
.page-hero-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:3fr 2fr;gap:60px;align-items:center}
.page-hero .eyebrow{color:var(--gold2);margin-bottom:1.5rem}
.page-hero .eyebrow::before{background:var(--gold2)}
.page-hero h1{font-family:var(--serif);font-size:clamp(2.4rem,4.5vw,4.2rem);font-weight:300;line-height:1.08;color:var(--white);margin-bottom:1.5rem}
.page-hero h1 em{font-style:italic;color:var(--gold2)}
.page-hero .lead{font-size:1rem;font-weight:300;line-height:1.8;color:rgba(255,255,255,.75);max-width:560px;margin-bottom:2rem}
.page-hero .hero-actions{margin-bottom:0}
.page-hero-photo{position:relative}
.page-hero-photos{display:grid;grid-template-columns:1fr 1fr;gap:2px;max-width:520px;margin-left:auto}
.page-hero-photos figure{margin:0}
.page-hero-photos img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center top;filter:grayscale(10%) brightness(.9)}
.page-hero-photos figcaption{margin-top:.7rem}
.page-hero-photos figcaption strong{display:block;font-family:var(--serif);font-weight:300;font-size:1.05rem;color:var(--white);line-height:1.2}
.page-hero-photos figcaption span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold2)}
.team{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.team-card{background:var(--white);display:grid;grid-template-columns:160px 1fr;gap:1.8rem;padding:2.2rem;align-items:start}
.team-card img{width:160px;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center top;filter:grayscale(10%)}
.team-card h3{font-family:var(--serif);font-size:1.4rem;font-weight:400;color:var(--ink);line-height:1.2;margin-bottom:.2rem}
.team-card .oab{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#6f5722;margin-bottom:.9rem}
.team-card p{font-size:.9rem;font-weight:300;line-height:1.75;color:#5a6570}
.section.dark .team-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.section.dark .team-card h3{color:var(--white)}
.section.dark .team-card .oab{color:var(--gold2)}
.section.dark .team-card p{color:rgba(255,255,255,.7)}
.page-hero-photo img{width:100%;height:auto;max-width:380px;aspect-ratio:4/5;object-fit:cover;object-position:center top;filter:grayscale(10%) brightness(.9);margin-left:auto}
.page-hero-cap{margin-top:.9rem;text-align:right}
.page-hero-cap strong{display:block;font-family:var(--serif);font-weight:300;font-size:1.2rem;color:var(--white)}
.page-hero-cap span{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold2)}
.breadcrumb{position:absolute;top:110px;left:5%;font-size:.75rem;letter-spacing:.08em;color:rgba(255,255,255,.55)}
.breadcrumb a{color:rgba(255,255,255,.55)}
.breadcrumb a:hover{color:var(--gold2)}

.section{padding:100px 5%}
.section-inner{max-width:1200px;margin:0 auto}
.section-head{max-width:720px;margin-bottom:56px}
.section-head .eyebrow{margin-bottom:1.3rem}
.section-head .display{margin-bottom:1.2rem}
.section.dark{background:var(--ink)}
.section.dark .display{color:var(--white)}
.section.dark .body-text{color:rgba(255,255,255,.7)}
.section.dark .eyebrow{color:var(--gold2)}
.section.dark .eyebrow::before{background:var(--gold2)}
.section.sand{background:var(--sand)}

/* faixa de contexto (números) */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:48px}
.stat{background:var(--white);padding:2rem 2.2rem}
.stat-num{font-family:var(--serif);font-size:2.6rem;font-weight:300;color:var(--gold);line-height:1}
.stat-lbl{font-size:.9rem;font-weight:300;line-height:1.6;color:var(--mid);margin-top:.6rem}
.stat-src{font-size:.75rem;color:var(--mid);margin-top:1.2rem}
.stat-src a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}

/* cards de público */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.card{background:var(--white);padding:2.6rem;border-bottom:2px solid transparent;transition:border-color .3s}
.card:hover{border-bottom-color:var(--gold)}
.card-num{font-family:var(--serif);font-size:1rem;color:var(--gold);letter-spacing:.1em;margin-bottom:1.2rem}
.card h3{font-family:var(--serif);font-size:1.35rem;font-weight:400;color:var(--ink);line-height:1.3;margin-bottom:.9rem}
.card p,.card li{font-size:.9rem;font-weight:300;line-height:1.75;color:var(--mid)}
.card ul{padding-left:1.1rem;margin-top:.8rem}
.card li{margin-bottom:.35rem}
.section.dark .card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-bottom:2px solid transparent}
.section.dark .card h3{color:rgba(255,255,255,.9)}
.section.dark .card p,.section.dark .card li{color:rgba(255,255,255,.65)}
.section.dark .card-num{color:var(--gold2)}

/* linha do tempo */
.timeline{list-style:none;counter-reset:etapa;display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.timeline li{background:var(--white);padding:2.4rem 2.2rem;position:relative;counter-increment:etapa}
.timeline li::before{content:counter(etapa,decimal-leading-zero);font-family:var(--serif);font-size:2.6rem;font-weight:300;color:rgba(14,42,58,.12);line-height:1;display:block;margin-bottom:1rem}
.timeline h3{font-family:var(--serif);font-size:1.2rem;font-weight:400;color:var(--ink);margin-bottom:.6rem;line-height:1.3}
.timeline p{font-size:.88rem;font-weight:300;line-height:1.7;color:var(--mid)}
.timeline .prazo{display:inline-block;margin-top:.9rem;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(201,169,97,.4);padding:.25rem .6rem}

/* requisitos em lista */
.check-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 3rem;margin-top:2rem}
.check-list li{position:relative;padding-left:2rem;font-size:.95rem;font-weight:300;line-height:1.7;color:var(--mid)}
.check-list li::before{content:'';position:absolute;left:0;top:.55rem;width:14px;height:14px;border:1px solid var(--gold);transform:rotate(45deg)}
.check-list strong{color:var(--ink);font-weight:500}
.note{margin-top:2rem;padding:1.4rem 1.8rem;border-left:2px solid var(--gold);background:var(--sand);font-size:.9rem;font-weight:300;line-height:1.7;color:var(--ink)}
.section.dark .note{background:rgba(255,255,255,.04);color:rgba(255,255,255,.8)}

/* duas colunas texto */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.two-col .body-text{margin-bottom:1.1rem}
.two-col h3{font-family:var(--serif);font-size:1.3rem;font-weight:400;color:var(--ink);margin:1.8rem 0 .6rem}
.section.dark .two-col h3{color:var(--white)}

/* FAQ */
.faq{max-width:860px;margin:0 auto}
.faq details{border-bottom:1px solid var(--rule);padding:1.3rem 0}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;font-family:var(--serif);font-size:1.15rem;font-weight:400;color:var(--ink);line-height:1.4}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-family:var(--sans);font-size:1.4rem;color:var(--gold);flex-shrink:0;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin-top:.9rem;font-size:.95rem;font-weight:300;line-height:1.8;color:var(--mid);max-width:70ch}

/* CTA final */
.cta{background:var(--ink);padding:100px 5%}
.cta-inner{max-width:900px;margin:0 auto;text-align:center}
.cta .display{color:var(--white);margin-bottom:1.2rem}
.cta .body-text{color:rgba(255,255,255,.7);margin:0 auto 2.4rem;max-width:56ch}
.cta .hero-actions{justify-content:center}
.cta-contact{margin-top:2.5rem;font-size:.9rem;color:rgba(255,255,255,.65);line-height:1.9}
.cta-contact a{color:var(--gold2)}

@media(max-width:960px){
  .page-hero{padding:130px 5% 60px}
  .page-hero-inner{grid-template-columns:1fr;gap:40px}
  .page-hero-photo img{margin-left:0;max-width:260px}
  .page-hero-photos{margin-left:0;max-width:100%}
  .team{grid-template-columns:1fr}
  .team-card{grid-template-columns:120px 1fr;gap:1.2rem;padding:1.6rem}
  .team-card img{width:120px}
  .page-hero-cap{text-align:left}
  .breadcrumb{top:100px}
  .section{padding:70px 5%}
  .stats,.grid-3,.timeline{grid-template-columns:1fr}
  .grid-2,.check-list,.two-col{grid-template-columns:1fr}
  .two-col{gap:30px}
}
@media(max-width:480px){
  .page-hero h1{font-size:2.1rem}
  .card,.timeline li,.stat{padding:1.8rem 1.4rem}
  .hero-actions{flex-direction:column}
  .btn-gold,.btn-outline,.btn-dark{text-align:center}
}

/* contraste em fundos claros (dourado escuro para texto pequeno) */
.section:not(.dark) .display em,.section:not(.dark) .stat-num{color:#8a6d2f}
.section:not(.dark) .eyebrow,.section:not(.dark) .card-num,.section:not(.dark) .timeline .prazo{color:#6f5722}
.section:not(.dark) .eyebrow::before{background:#6f5722}
.section:not(.dark) .timeline .prazo{border-color:rgba(138,109,47,.5)}
.section.sand .body-text,.section.sand .card p,.section.sand .card li,.section.sand .timeline p,.section.sand .stat-lbl,.section.sand .stat-src{color:#556069}
.faq details p,.check-list li{color:#5a6570}
