/* Páginas institucionais EEAT — PCD Online */

.term-pcd {
    color: var(--primary);
    font-weight: 700;
}

.ci-page {
    background: #fff;
}

.ci-breadcrumb {
    font-size: 0.9rem;
}

.ci-hero__tag {
    display: inline-block;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 999px;
    padding: 0.35rem 0.85rem;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 1rem;
}

.ci-hero__title {
    font-size: clamp(1.6rem, 3vw, 2.35rem);
    line-height: 1.2;
    font-weight: 700;
    text-wrap: balance;
}

.ci-hero__lead {
    font-size: 1.15rem;
    opacity: 0.95;
    max-width: 38rem;
}

.btn-whatsapp-color {
    background-color: #25d366 !important;
    border-color: #25d366 !important;
}

.ci-lead-card {
    padding: 1.5rem;
}

.ci-lead-card__title {
    color: var(--primary-dark);
    font-weight: 700;
}

.ci-eeat-note {
    background: #f0faf6;
    border-left: 4px solid var(--primary-dark);
    padding: 0.85rem 1rem;
    font-size: 0.92rem;
    color: #334;
    border-radius: 0 0.5rem 0.5rem 0;
}

.ci-intro p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: #333;
}

.ci-stat-card {
    background: var(--tertiary-dark);
    color: #fff;
    border-radius: 0.75rem;
    padding: 1.25rem 0.75rem;
}

.ci-stat-card__value {
    font-size: clamp(1.4rem, 2.5vw, 2rem);
    font-weight: 800;
    line-height: 1.1;
}

.ci-stat-card__label {
    font-size: 0.85rem;
    opacity: 0.92;
}

.ci-section__title {
    color: var(--primary-dark);
    font-size: clamp(1.35rem, 2.2vw, 1.75rem);
    font-weight: 700;
    margin-bottom: 1rem;
}

.ci-section__footer {
    font-weight: 500;
    color: #444;
}

.ci-check-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.ci-check-list li {
    position: relative;
    padding: 0.55rem 0 0.55rem 1.75rem;
    border-bottom: 1px solid #eee;
}

.ci-check-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: var(--primary-dark);
    font-weight: 700;
}

.ci-feature-card {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 0.75rem;
    padding: 1.25rem;
}

.ci-feature-card__title {
    color: var(--primary-dark);
    font-weight: 700;
}

.ci-benefits-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0.75rem;
    padding: 0;
    list-style: none;
}

.ci-benefits-list li {
    background: #f0faf6;
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
    font-weight: 500;
}

.ci-regions-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0;
    list-style: none;
}

.ci-regions-list li {
    background: var(--primary-dark);
    color: #fff;
    border-radius: 999px;
    padding: 0.35rem 0.85rem;
    font-size: 0.9rem;
}

.ci-calculadora__wrapper {
    background: linear-gradient(135deg, #f0faf6 0%, #fff 100%);
    border: 1px solid #d8ece4;
}

.ci-calc-result {
    background: #fff;
    border: 2px solid var(--primary-dark);
    border-radius: 0.75rem;
    padding: 1.25rem;
    min-height: 5.5rem;
}

.ci-calc-result__percent {
    font-size: 2rem;
    font-weight: 800;
    color: var(--primary-dark);
    line-height: 1;
}

.ci-calc-result__vagas {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--secondary);
}

.ci-calc-table thead {
    background: var(--primary-dark);
    color: #fff;
}

.ci-cliente-logo {
    height: 96px; /* altura única: parede de logos uniforme independente do formato de cada logo */
    transition: box-shadow .2s ease, transform .2s ease;
}
.ci-cliente-logo:hover {
    box-shadow: 0 6px 18px rgba(0, 0, 0, .08);
    transform: translateY(-2px);
}
.ci-cliente-logo img {
    max-height: 60px;
    max-width: 85%;
    width: auto;
    height: auto;
    object-fit: contain;
}
@media (max-width: 767px) {
    .ci-cliente-logo { height: 76px; }
    .ci-cliente-logo img { max-height: 48px; }
}

.ci-depoimento {
    background: #f8f9fa;
    border-left: 4px solid var(--secondary);
    border-radius: 0 0.75rem 0.75rem 0;
    padding: 1.25rem;
    margin: 0;
}

.ci-depoimento__quote {
    font-style: italic;
    color: #333;
}

.ci-depoimento__author cite {
    font-style: normal;
    font-weight: 700;
    color: var(--primary-dark);
}

.ci-link-card {
    border: 1px solid #dee2e6;
    border-radius: 0.75rem;
    padding: 1rem 1.15rem;
    transition: border-color 0.2s, box-shadow 0.2s;
    color: inherit;
}

.ci-link-card:hover {
    border-color: var(--primary-dark);
    box-shadow: 0 0.25rem 0.75rem rgba(23, 153, 112, 0.12);
    transform: none !important;
}

.ci-link-card__title {
    color: var(--primary-dark);
    font-weight: 700;
}

.ci-faq-accordion .accordion-button:not(.collapsed) {
    background: #f0faf6;
    color: var(--primary-dark);
}

.ci-cta-final {
    background: linear-gradient(135deg, var(--primary-dark) 0%, var(--tertiary-dark) 100%);
}

@media (max-width: 991px) {
    .ci-hero__actions .btn {
        width: 100%;
    }
}

/* Ícones SVG dos cards de recurso */
.ci-feature-card__icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: #eef6f2;
    color: #157a5b;
    margin-bottom: 0.85rem;
}
.ci-feature-card__icon svg {
    width: 26px;
    height: 26px;
}

/* Selos de conformidade no hero */
.ci-hero__badges {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0;
    margin: 1.1rem 0 0;
}
.ci-hero__badges li {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.8rem;
    font-weight: 600;
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.28);
    color: #fff;
    border-radius: 999px;
    padding: 0.32rem 0.75rem;
}
.ci-hero__badges li::before {
    content: "✓";
    font-weight: 700;
}

/* Ilustração de destaque (figura após o hero) */
.ci-showcase {
    margin-inline: auto;
}
.ci-showcase__img {
    width: 100%;
    max-width: 760px;
    height: auto;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

/* Seção media (imagem + texto) — ex.: widget do plugin + selo */
.ci-media__img {
    width: 100%;
    max-width: 340px;
    height: auto;
    border-radius: 18px;
}
.ci-media__seal {
    width: 100%;
    max-width: 360px;
    height: auto;
}

/* Card de código (instalação em 1 linha) */
.ci-code-card {
    border: 1px solid #e3e8ee;
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}
.ci-code-card__bar {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0.65rem 1rem;
    border-bottom: 1px solid #eef2f6;
}
.ci-code-card__bar span {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    display: inline-block;
    background: #dfe5ec;
}
.ci-code-card__bar span:nth-child(1) { background: #ff5f57; }
.ci-code-card__bar span:nth-child(2) { background: #febc2e; }
.ci-code-card__bar span:nth-child(3) { background: #28c840; }
.ci-code-card__bar em {
    margin-left: 0.5rem;
    font-style: normal;
    color: #8a97a6;
    font-size: 0.85rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.ci-code-card__pre {
    margin: 0;
    padding: 1.1rem 1rem;
    background: #fff;
    color: #1f6feb;
    font-size: 0.9rem;
    line-height: 1.6;
    overflow-x: auto;
    white-space: pre;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.ci-code-card__note {
    margin: 0;
    padding: 0.8rem 1rem;
    border-top: 1px solid #eef2f6;
    color: #157a5b;
    font-size: 0.9rem;
    font-weight: 600;
}

/* Grid compacto de recursos (20+ recursos) */
.ci-section__eyebrow {
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.8rem;
    font-weight: 700;
    color: #157a5b;
    margin-bottom: 0.5rem;
}
.ci-feature-min {
    border: 1px solid #e3e8ee;
    border-radius: 12px;
    padding: 1rem;
    background: #fff;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.ci-feature-min:hover {
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
    transform: translateY(-2px);
}
.ci-feature-min__title {
    font-size: 0.95rem;
    font-weight: 700;
    color: #005570;
    margin: 0 0 0.25rem;
}
.ci-feature-min__desc {
    font-size: 0.82rem;
    color: #5a6c75;
    line-height: 1.4;
}

/* Callout (scanner do site) */
.ci-callout {
    background: linear-gradient(135deg, #eef6f2 0%, #e6f1fb 100%);
    border: 1px solid #cfe8de;
}
.ci-callout__note {
    font-size: 0.85rem;
    color: #5a6c75;
}

/* Autodiagnóstico de acessibilidade */
.ci-autodiag { margin-bottom: 3rem; }
.ci-autodiag__intro { max-width: 46rem; }
.ci-autodiag__box {
    background: linear-gradient(135deg, #f0faf6 0%, #eef4fb 100%);
    border: 1px solid #d8ece4;
    border-radius: 1rem;
    padding: 1.5rem;
}
.ci-autodiag__progress {
    font-size: 0.85rem;
    color: #5a6c75;
    font-weight: 600;
    margin-bottom: 1rem;
}
.ci-autodiag__q {
    border: none;
    padding: 0 0 1rem;
    margin: 0 0 1rem;
    border-bottom: 1px solid #e3ece8;
}
.ci-autodiag__q:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
.ci-autodiag__legend {
    font-size: 0.95rem;
    font-weight: 600;
    color: #2a3b44;
    margin-bottom: 0.5rem;
    float: none;
    width: auto;
}
.ci-autodiag__opts { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.ci-autodiag__opt {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    border: 1px solid #cfe0d8;
    background: #fff;
    border-radius: 999px;
    padding: 0.35rem 0.9rem;
    cursor: pointer;
    font-size: 0.9rem;
    margin: 0;
}
.ci-autodiag__opt:hover { border-color: #179970; }
.ci-autodiag__opt input { accent-color: #179970; }
.ci-autodiag__panel {
    background: #fff;
    border: 1px solid #e3ece8;
    border-radius: 0.85rem;
    padding: 1.5rem;
    position: sticky;
    top: 1rem;
    text-align: center;
}
.ci-autodiag__gauge { position: relative; width: 160px; height: 160px; margin: 0 auto 0.5rem; }
.ci-autodiag__gauge-bg { fill: none; stroke: #eef2f6; stroke-width: 10; }
.ci-autodiag__gauge-fg {
    fill: none;
    stroke: #179970;
    stroke-width: 10;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.6s ease, stroke 0.3s ease;
}
.ci-autodiag__gauge-num {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.ci-autodiag__gauge-num span { font-size: 2.2rem; font-weight: 800; color: #005570; line-height: 1; }
.ci-autodiag__gauge-num small { font-size: 0.8rem; color: #8a97a6; }
.ci-autodiag__level { font-weight: 700; font-size: 1.05rem; margin: 0.25rem 0; }
.ci-autodiag__leveldesc { font-size: 0.85rem; color: #5a6c75; }
.ci-autodiag__recs {
    text-align: left;
    background: #fff7f0;
    border: 1px solid #ffe0c2;
    border-radius: 0.6rem;
    padding: 0.85rem 1rem;
    margin-top: 1rem;
}
.ci-autodiag__recs-title { font-weight: 700; font-size: 0.85rem; margin: 0 0 0.35rem; color: #b5630a; }
.ci-autodiag__recs ul { margin: 0; padding-left: 1.1rem; font-size: 0.82rem; color: #5a6c75; }
.ci-autodiag__recs li { margin-bottom: 0.2rem; }
.ci-autodiag__lead {
    text-align: left;
    margin-top: 1.25rem;
    border-top: 1px dashed #cfe0d8;
    padding-top: 1.25rem;
}
.ci-autodiag__lead-title { font-size: 1rem; font-weight: 700; color: #005570; margin-bottom: 0.75rem; }
.ci-autodiag__leadform .form-label { font-size: 0.85rem; margin-bottom: 0.15rem; }
.ci-autodiag__disclaimer { font-size: 0.8rem; color: #8a97a6; margin: 1rem 0 0; }
@media (max-width: 991px) {
    .ci-autodiag__panel { position: static; margin-top: 1rem; }
}

/* CTA fixo no mobile */
.ci-sticky-cta {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1040;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    background: #179970;
    color: #fff !important;
    text-decoration: none;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.9rem;
    padding: 0.85rem 1rem;
    box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.15);
}
.ci-sticky-cta:hover { background: #0f5e46; color: #fff; }

/* ===== Formatos de anúncio — mockups em HTML (sem imagem) ===== */
.ci-adfmt { background:#f8f9fa; border:1px solid #e7ebee; border-radius:14px; padding:1.25rem; height:100%; }
.ci-adfmt__size { display:inline-block; background:var(--primary-dark); color:#fff; font-weight:700; font-size:.72rem; padding:.18rem .55rem; border-radius:999px; letter-spacing:.02em; }
.ci-adfmt__title { font-weight:700; color:var(--primary-dark); margin:.6rem 0 .1rem; }
.ci-adfmt__meta { font-size:.86rem; color:#6b7680; margin-bottom:.9rem; }
.ci-adbanner { display:flex; align-items:center; justify-content:center; text-align:center;
  background:linear-gradient(135deg, var(--tertiary-dark) 0%, var(--primary-dark) 100%);
  color:#fff; border-radius:8px; overflow:hidden; }
.ci-adbanner span { font-weight:700; letter-spacing:.04em; text-transform:uppercase; line-height:1.15; padding:.4rem; }
.ci-adbanner small { display:block; font-weight:500; opacity:.8; text-transform:none; letter-spacing:0; font-size:.72rem; margin-top:.15rem; }
.ci-adbanner--leaderboard { width:100%; aspect-ratio:728/90; max-width:728px; margin-inline:auto; font-size:1rem; }
.ci-adbanner--box { width:100%; aspect-ratio:300/250; max-width:300px; margin-inline:auto; font-size:1.05rem; }
/* mockup de e-mail transacional com banner no rodapé */
.ci-email-mock { background:#fff; border:1px solid #e2e7eb; border-radius:12px; overflow:hidden; max-width:440px; margin-inline:auto; box-shadow:0 6px 18px rgba(0,0,0,.06); }
.ci-email-mock__bar { background:var(--primary-dark); color:#fff; padding:.6rem .9rem; font-weight:700; font-size:.85rem; }
.ci-email-mock__body { padding:1rem .95rem .8rem; }
.ci-email-mock__line { height:9px; border-radius:5px; background:#eceff1; margin-bottom:.55rem; }
.ci-email-mock__line.is-short { width:55%; }
.ci-email-mock__btn { display:inline-block; background:var(--secondary); color:#fff; font-size:.72rem; font-weight:700; padding:.32rem .7rem; border-radius:6px; margin-top:.3rem; }
.ci-email-mock__footer { border-top:1px dashed #d7dde1; padding:.7rem; }
.ci-email-mock__footer .ci-adbanner { aspect-ratio:600/200; font-size:.82rem; }
.ci-email-mock__tag { text-align:center; font-size:.7rem; color:#8a97a6; padding:.15rem 0 .7rem; }

/* ===== Barra de alcance de mercado ===== */
.ci-reach { background:linear-gradient(135deg,#f0faf6 0%, #fff 100%); border:1px solid #d9eee6; border-radius:16px; padding:1.5rem; }
.ci-reach__bar { position:relative; height:56px; border-radius:10px; background:#e7ecef; overflow:hidden; }
.ci-reach__fill { position:absolute; top:0; bottom:0; left:0; background:linear-gradient(135deg,var(--primary-dark),#0f7355); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; font-size:1.1rem; min-width:54px; }
.ci-reach__bar-label { position:absolute; right:.9rem; top:50%; transform:translateY(-50%); color:#5b6770; font-weight:700; font-size:.9rem; }
.ci-reach__legend { display:flex; flex-wrap:wrap; gap:1rem 1.5rem; margin-top:1.1rem; }
.ci-reach__stat strong { display:block; font-size:1.5rem; color:var(--primary-dark); line-height:1.05; }
.ci-reach__stat span { font-size:.85rem; color:#5b6770; }

/* ===== Grade de formatos (padrão IAB) ===== */
.ci-adcard { background:#fff; border:1px solid #e7ebee; border-radius:12px; padding:1rem; transition:box-shadow .15s ease, transform .15s ease; }
.ci-adcard:hover { box-shadow:0 8px 20px rgba(0,0,0,.07); transform:translateY(-2px); }
.ci-adcard__size { display:inline-block; background:#eef6f2; color:var(--primary-dark); font-weight:800; font-size:.8rem; padding:.2rem .5rem; border-radius:6px; }
.ci-adcard__title { font-weight:700; color:#2b333a; font-size:1rem; margin:.55rem 0 .1rem; }
.ci-adcard__pos { font-size:.82rem; color:#6b7680; }

/* ===== Perfil da audiência + métricas ===== */
.ci-audience { list-style:none; padding:0; margin:0; }
.ci-audience li { margin-bottom:1rem; }
.ci-audience li:last-child { margin-bottom:0; }
.ci-audience__row { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:.3rem; }
.ci-audience__label { font-weight:600; color:#2b333a; font-size:.95rem; }
.ci-audience__pct { font-weight:800; color:var(--primary-dark); font-size:.95rem; }
.ci-audience__track { height:12px; border-radius:999px; background:#e7ecef; overflow:hidden; }
.ci-audience__fill { height:100%; border-radius:999px; background:linear-gradient(135deg,var(--primary-dark),#0f7355); }
.ci-metric { background:#f8f9fa; border:1px solid #e7ebee; border-radius:12px; padding:1.1rem .75rem; }
.ci-metric__value { font-size:1.9rem; font-weight:800; color:var(--primary-dark); line-height:1.05; margin:0 0 .2rem; }
.ci-metric__label { font-size:.82rem; color:#5b6770; margin:0; }

/* ===== Ecossistema (marcas do grupo) ===== */
.ci-brand { display:flex; flex-direction:column; background:#fff; border:1px solid #e7ebee; border-radius:14px; padding:1.15rem; text-decoration:none; transition:box-shadow .15s ease, transform .15s ease, border-color .15s ease; }
.ci-brand:hover { box-shadow:0 10px 24px rgba(0,0,0,.08); transform:translateY(-3px); border-color:var(--primary); }
.ci-brand__name { font-weight:800; color:var(--primary-dark); font-size:1.05rem; }
.ci-brand__domain { font-size:.78rem; color:#8a97a6; margin-bottom:.5rem; }
.ci-brand__desc { font-size:.86rem; color:#54606a; line-height:1.4; flex:1 1 auto; }
.ci-brand__cta { margin-top:.7rem; font-weight:700; font-size:.82rem; color:var(--secondary); }

/* ===== Liderança (team) ===== */
.ci-team { display:flex; flex-direction:column; gap:2.5rem; }
.ci-member { display:flex; gap:1.75rem; align-items:flex-start; }
.ci-member--right { flex-direction:row-reverse; }
.ci-member__photo { width:200px; height:200px; flex:0 0 200px; border-radius:16px; object-fit:cover; box-shadow:0 10px 26px rgba(0,0,0,.12); }
.ci-member__name { color:var(--primary-dark); font-weight:800; font-size:1.4rem; margin:0; }
.ci-member__role { color:var(--secondary); font-weight:700; text-transform:uppercase; font-size:.8rem; letter-spacing:.03em; margin:.15rem 0 .6rem; }
.ci-member__tags { list-style:none; display:flex; flex-wrap:wrap; gap:.4rem; padding:0; margin:0 0 .8rem; }
.ci-member__tags li { background:#eef6f2; color:var(--primary-dark); border-radius:999px; padding:.2rem .6rem; font-size:.75rem; font-weight:700; }
.ci-member__linkedin { display:inline-flex; align-items:center; gap:.35rem; margin:0 0 .9rem; padding:.28rem .7rem; border-radius:999px; background:#eef3f8; color:#0a66c2; font-weight:700; font-size:.8rem; text-decoration:none; transition:background .15s ease; }
.ci-member__linkedin:hover { background:#dceaf7; color:#0a66c2; }
.ci-member__bio { color:#444; line-height:1.65; margin-bottom:.7rem; }
@media (max-width:767px){ .ci-member, .ci-member--right { flex-direction:column; } .ci-member__photo { width:150px; height:150px; flex-basis:150px; } }

/* ===== Trajetória (timeline) ===== */
.ci-timeline { list-style:none; padding:0; margin:0; position:relative; }
.ci-timeline::before { content:""; position:absolute; left:7px; top:6px; bottom:6px; width:2px; background:#dde6e2; }
.ci-timeline__item { position:relative; padding:0 0 1.6rem 2.2rem; }
.ci-timeline__item:last-child { padding-bottom:0; }
.ci-timeline__item::before { content:""; position:absolute; left:0; top:5px; width:16px; height:16px; border-radius:50%; background:var(--primary-dark); border:3px solid #fff; box-shadow:0 0 0 2px var(--primary-dark); }
.ci-timeline__year { display:inline-block; font-weight:800; color:var(--primary-dark); font-size:1.05rem; margin-bottom:.15rem; }
.ci-timeline__title { font-weight:700; color:#2b333a; font-size:1.05rem; margin:.05rem 0 .25rem; }
.ci-timeline__desc { color:#5b6770; font-size:.92rem; line-height:1.55; max-width:640px; }
