/* ================= CARDOSO — sistema visual próprio (verde editorial) ================= */
:root{
  --cg:#12693f;        /* verde profundo */
  --cg-d:#0b492b;      /* verde escuríssimo */
  --cl:#2FB56B;        /* verde vivo */
  --cink:#12201a;      /* tinta */
  --csoft:#48594f;     /* texto suave */
  --ccream:#F6F4EC;    /* creme */
}

/* -------- faixa de slogans (marquee) -------- */
.c-marquee{background:var(--cg-d);color:#fff;overflow:hidden;border-top:4px solid var(--cl);border-bottom:4px solid var(--cl)}
.c-marquee .track{display:inline-flex;white-space:nowrap;animation:cmarq 30s linear infinite;will-change:transform}
.c-marquee:hover .track{animation-play-state:paused}
.c-marquee .track span{font-family:var(--ff-disp);font-weight:900;font-size:clamp(19px,2.3vw,30px);letter-spacing:.01em;padding:15px 0;display:inline-flex;align-items:center;text-transform:uppercase}
.c-marquee .track span::after{content:"✦";color:var(--cl);font-size:.7em;padding:0 30px}
@keyframes cmarq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* -------- bloco genérico -------- */
.c-sec{padding:clamp(64px,9vw,120px) 0}
.c-eyebrow{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:12.5px;color:var(--cl)}
.c-eyebrow::before{content:"";width:26px;height:2px;background:var(--cl);display:inline-block}
.c-h2{font-family:var(--ff-disp);font-weight:900;font-size:clamp(32px,5vw,60px);line-height:1;letter-spacing:-.03em;margin:16px 0 0}

/* -------- assinatura: Dinheiro público é do povo -------- */
.c-sign{position:relative;background:linear-gradient(160deg,#0e5836,var(--cg-d));color:#fff;overflow:hidden}
.c-sign::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1.4px);background-size:26px 26px;opacity:.6}
.c-sign .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center}
.c-sign .big{font-family:var(--ff-disp);font-weight:900;font-size:clamp(44px,7vw,96px);line-height:.94;letter-spacing:-.035em;margin:18px 0 22px}
.c-sign .big em{color:var(--cl);font-style:normal}
.c-sign p{color:rgba(255,255,255,.86);font-size:clamp(16px,1.9vw,20px);line-height:1.6;max-width:54ch}
.c-sign .sig-photo{position:relative;justify-self:center}
.c-sign .sig-photo img{width:min(360px,80vw);display:block;filter:drop-shadow(0 26px 46px rgba(0,0,0,.45))}
.c-sign .sig-ring{position:absolute;inset:auto 0 6% 0;margin:auto;width:min(330px,74vw);height:min(330px,74vw);border-radius:50%;background:radial-gradient(circle at 50% 46%,rgba(47,181,107,.6),transparent 66%);z-index:-1}
.c-quote-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.c-quote-tags span{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:8px 16px;font-weight:700;font-size:13.5px;color:#eafff3}

/* -------- história (editorial split) -------- */
.c-story{background:var(--ccream);color:var(--cink)}
.c-story .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:52px;align-items:center}
.c-story-photo{position:relative}
.c-story-photo img{width:100%;border-radius:20px;display:block;box-shadow:0 30px 60px rgba(18,60,42,.18)}
.c-story-photo .badge{position:absolute;left:-16px;bottom:26px;background:#fff;border-radius:16px;padding:14px 20px;box-shadow:0 18px 34px rgba(18,60,42,.18);border-left:5px solid var(--cl)}
.c-story-photo .badge b{font-family:var(--ff-disp);font-weight:900;font-size:22px;color:var(--cg);display:block;line-height:1}
.c-story-photo .badge span{font-size:12.5px;color:var(--csoft);font-weight:600}
.c-story p{font-size:clamp(16.5px,1.9vw,19px);color:var(--csoft);line-height:1.7;margin:20px 0 0}
.c-story p b{color:var(--cink)}
.c-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px}
.c-facts .f{background:#fff;border:1px solid #e6ece7;border-radius:16px;padding:18px 18px}
.c-facts .f b{font-family:var(--ff-disp);font-weight:900;font-size:17px;color:var(--cg);display:block;line-height:1.1}
.c-facts .f span{font-size:13px;color:var(--csoft);display:block;margin-top:5px}

/* -------- plano: 6 prioridades como linhas grandes -------- */
.c-plan{background:#fff;color:var(--cink)}
.c-plan .head{max-width:760px;margin:0 auto clamp(40px,6vw,70px);text-align:center}
.c-plan .c-eyebrow{justify-content:center}
.c-plan .head p{color:var(--csoft);font-size:18px;line-height:1.6;margin-top:14px}
.c-row{display:grid;grid-template-columns:120px 1fr 1.15fr;gap:28px;align-items:start;padding:34px 0;border-top:1px solid #e7ece8}
.c-row:last-child{border-bottom:1px solid #e7ece8}
.c-row .num{font-family:var(--ff-disp);font-weight:900;font-size:clamp(52px,7vw,84px);line-height:.8;color:var(--cl);letter-spacing:-.04em}
.c-row .rt h3{font-family:var(--ff-disp);font-weight:900;font-size:clamp(22px,2.6vw,30px);line-height:1.05;letter-spacing:-.02em;color:var(--cink);margin:6px 0 0}
.c-row .rt .tag{display:inline-block;margin-top:12px;background:rgba(47,181,107,.12);color:#1c8a52;border-radius:999px;padding:5px 13px;font-weight:800;font-size:12px;letter-spacing:.02em}
.c-row ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:12px}
.c-row ul li{position:relative;padding-left:30px;color:var(--csoft);font-size:16px;line-height:1.5}
.c-row ul li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:6px;background:var(--cl);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'><path d='M20 6 9 17l-5-5'/></svg>") center/16px no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'><path d='M20 6 9 17l-5-5'/></svg>") center/16px no-repeat}

/* -------- presença de verdade (corpo a corpo) -------- */
.c-presence{background:var(--cg-d);color:#fff;position:relative;overflow:hidden}
.c-presence .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:center;position:relative;z-index:2}
.c-presence h2{color:#fff}
.c-presence p{color:rgba(255,255,255,.85);font-size:clamp(16.5px,1.9vw,19px);line-height:1.7;margin-top:18px;max-width:52ch}
.c-chips{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.c-chips span{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:12px 18px;font-weight:700;display:flex;align-items:center;gap:9px}
.c-chips span b{color:var(--cl)}
.c-presence-photo img{width:100%;border-radius:20px;display:block;box-shadow:0 30px 60px rgba(0,0,0,.4);border:3px solid rgba(255,255,255,.12)}

/* -------- mosaico de fotos -------- */
.c-mosaic{background:var(--ccream)}
.c-mosaic .head{text-align:center;max-width:720px;margin:0 auto clamp(34px,5vw,56px)}
.c-mosaic .c-eyebrow{justify-content:center}
.c-mosaic .head p{color:var(--csoft);margin-top:12px}
.c-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:14px}
.c-grid .cell{position:relative;overflow:hidden;border-radius:16px}
.c-grid .cell img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.c-grid .cell:hover img{transform:scale(1.07)}
.c-grid .cell .cap{position:absolute;left:0;right:0;bottom:0;padding:16px;background:linear-gradient(transparent,rgba(8,40,24,.82));color:#fff;font-weight:700;font-size:14px}
.c-grid .big{grid-column:span 2;grid-row:span 2}
.c-grid .tall{grid-row:span 2}

/* -------- chamada final -------- */
.c-cta{background:linear-gradient(135deg,var(--cl),#1c8a52);color:#fff;text-align:center}
.c-cta h2{font-family:var(--ff-disp);font-weight:900;font-size:clamp(34px,5.5vw,66px);line-height:1;letter-spacing:-.03em;color:#fff}
.c-cta .num{display:inline-block;background:#fff;color:var(--cg);font-family:var(--ff-disp);font-weight:900;border-radius:14px;padding:4px 16px;margin:0 4px}
.c-cta p{color:rgba(255,255,255,.92);font-size:19px;margin:18px auto 30px;max-width:52ch}
.c-cta .btn-white{background:#fff;color:var(--cg);font-weight:800}

@media(max-width:900px){
  .c-sign .wrap,.c-story .wrap,.c-presence .wrap{grid-template-columns:1fr;gap:30px}
  .c-sign .sig-photo{order:-1}
  .c-row{grid-template-columns:64px 1fr;gap:16px}
  .c-row .rt{grid-column:2}
  .c-row ul{grid-column:1 / -1;margin-top:14px}
  .c-facts{grid-template-columns:1fr}
  .c-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}
  .c-grid .big{grid-column:span 2}
}

/* ===== MOBILE PRO seções (≤640) ===== */
@media(max-width:640px){
  .c-sec{padding:52px 0}
  .c-h2{font-size:clamp(27px,8vw,38px)}
  .c-sign .wrap{gap:22px}
  .c-sign .big{font-size:clamp(38px,12.5vw,54px)}
  .c-sign .sig-photo img{width:210px!important}
  .c-sign .sig-ring{width:210px;height:210px}
  .c-quote-tags span{font-size:12px;padding:7px 12px}
  .c-story-photo img{max-width:330px;margin:0 auto}
  .c-story-photo .badge{left:10px;bottom:14px}
  .c-facts{grid-template-columns:1fr}
  .c-row{grid-template-columns:52px 1fr;gap:12px;padding:26px 0}
  .c-row .num{font-size:42px}
  .c-row .rt{grid-column:2}
  .c-row ul{grid-column:1 / -1;margin-top:12px}
  .c-presence-photo img{max-width:290px;margin:0 auto}
  .c-grid{grid-template-columns:1fr 1fr;grid-auto-rows:126px;gap:10px}
  .c-grid .big,.c-grid .tall{grid-column:auto;grid-row:auto}
  .c-marquee .track span{font-size:16px;padding:12px 0}
  .c-marquee .track span::after{padding:0 20px}
  .c-cta h2{font-size:clamp(28px,8.5vw,40px)}
  .c-cta .num{padding:2px 12px}
}
