/* ============================================================
   ADS MktCom — Single Post Template
   Light + Dark mode, tipografia otimizada para leitura/SEO.
   Variáveis em :root; tema escuro em [data-adsmkt-theme="dark"].
   ============================================================ */

:root{
  --ad-bg:#ffffff;
  --ad-surface:#ffffff;
  --ad-surface-2:#F8FAFC;
  --ad-text:#0F172A;
  --ad-text-soft:#334155;
  --ad-muted:#64748B;
  --ad-faint:#94A3B8;
  --ad-border:#E2E8F0;
  --ad-border-soft:#F1F5F9;
  --ad-primary:#7C3AED;
  --ad-primary-2:#06B6D4;
  --ad-accent-1:#A78BFA;
  --ad-accent-2:#22D3EE;
  --ad-deep:#07101F;
  --ad-grad:linear-gradient(135deg,#7C3AED,#06B6D4);
  --ad-grad-accent:linear-gradient(120deg,#A78BFA,#22D3EE);
  --ad-shadow:0 20px 50px rgba(7,16,31,.12);
  --ad-radius:16px;
  --ad-maxw:1180px;
  --ad-read:720px;
  --ad-sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --ad-display:'Sora',var(--ad-sans);
  --ad-serif:'Lora',Georgia,'Times New Roman',serif;
}

[data-adsmkt-theme="dark"]{
  --ad-bg:#0A1322;
  --ad-surface:#0F1B2E;
  --ad-surface-2:#0C1626;
  --ad-text:#E8EDF4;
  --ad-text-soft:#C2CDDA;
  --ad-muted:#8A99AC;
  --ad-faint:#6B7A8E;
  --ad-border:#1E2D43;
  --ad-border-soft:#172339;
  --ad-shadow:0 20px 50px rgba(0,0,0,.45);
}

.adsmkt-single *,
.adsmkt-single *::before,
.adsmkt-single *::after{box-sizing:border-box}

.adsmkt-single{
  background:var(--ad-bg);
  color:var(--ad-text);
  font-family:var(--ad-sans);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  transition:background .3s ease,color .3s ease;
}
.adsmkt-container{max-width:var(--ad-maxw);margin:0 auto;padding:0 24px}

/* ---------- Barra de progresso ---------- */
.adsmkt-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--ad-grad);z-index:1200;transition:width .1s linear}

/* ---------- Alternar tema ---------- */
.adsmkt-theme-toggle{
  position:fixed;right:22px;bottom:22px;z-index:1100;width:48px;height:48px;border-radius:50%;
  border:1px solid var(--ad-border);background:var(--ad-surface);color:var(--ad-text);
  display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--ad-shadow);
  transition:transform .2s ease,background .3s ease,color .3s ease;
}
.adsmkt-theme-toggle:hover{transform:translateY(-2px)}
.adsmkt-theme-toggle .ico-moon{display:none}
[data-adsmkt-theme="dark"] .adsmkt-theme-toggle .ico-sun{display:none}
[data-adsmkt-theme="dark"] .adsmkt-theme-toggle .ico-moon{display:block}

/* ---------- HERÓI ---------- */
.adsmkt-hero{position:relative;background:var(--ad-deep);padding:120px 0 56px;overflow:hidden}
.adsmkt-hero__glow{position:absolute;top:-30%;right:-6%;width:560px;height:560px;border-radius:50%;
  background:radial-gradient(circle,rgba(124,58,237,.22) 0%,transparent 62%);pointer-events:none}
.adsmkt-hero__inner{position:relative;z-index:1;max-width:860px}
.adsmkt-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:rgba(255,255,255,.5);margin-bottom:18px}
.adsmkt-breadcrumb a{color:var(--ad-accent-1);text-decoration:none}
.adsmkt-breadcrumb a:hover{text-decoration:underline}
.adsmkt-breadcrumb .is-current{color:rgba(255,255,255,.7);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:280px}
.adsmkt-cat-badge{display:inline-block;background:var(--ad-grad);color:#fff;font-size:11px;font-weight:700;
  padding:5px 13px;border-radius:100px;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;margin-bottom:20px}
.adsmkt-title{font-family:var(--ad-display);color:#fff;font-size:clamp(30px,4.2vw,48px);font-weight:800;
  line-height:1.12;letter-spacing:-.02em;margin:0 0 24px;text-wrap:balance}
.adsmkt-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.adsmkt-meta__author{display:flex;align-items:center;gap:11px;text-decoration:none}
.adsmkt-meta__avatar{width:44px;height:44px;border-radius:50%;border:2px solid rgba(124,58,237,.6);display:block}
.adsmkt-meta__authtext{display:flex;flex-direction:column;line-height:1.3}
.adsmkt-meta__name{color:#fff;font-weight:600;font-size:14px}
.adsmkt-meta__role{color:rgba(255,255,255,.5);font-size:12px}
.adsmkt-meta__divider{width:1px;height:30px;background:rgba(255,255,255,.15)}
.adsmkt-meta__date,.adsmkt-meta__reading{color:rgba(255,255,255,.6);font-size:13px}
.adsmkt-meta__dot{color:rgba(255,255,255,.3)}

/* ---------- LAYOUT ---------- */
.adsmkt-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:52px;align-items:start;padding-top:48px;padding-bottom:72px}
.adsmkt-main{min-width:0;max-width:var(--ad-read);margin:0 auto;width:100%}

/* ---------- Imagem em destaque ---------- */
.adsmkt-featured{margin:0 0 36px;border-radius:var(--ad-radius);overflow:hidden;box-shadow:var(--ad-shadow)}
.adsmkt-featured__img{width:100%;height:auto;display:block}
.adsmkt-featured__cap{font-size:12.5px;color:var(--ad-faint);padding:10px 4px 0;text-align:center}

/* ---------- Conteúdo / tipografia ---------- */
.adsmkt-content{font-size:18px;line-height:1.8;color:var(--ad-text-soft)}
.adsmkt-content > p:first-of-type{font-family:var(--ad-serif);font-size:21px;line-height:1.6;color:var(--ad-text);font-weight:500;margin-bottom:28px}
.adsmkt-content p{margin:0 0 22px}
.adsmkt-content h2{font-family:var(--ad-display);font-size:28px;font-weight:700;line-height:1.25;letter-spacing:-.01em;color:var(--ad-text);margin:46px 0 16px;scroll-margin-top:90px}
.adsmkt-content h3{font-family:var(--ad-display);font-size:21px;font-weight:600;line-height:1.3;color:var(--ad-text);margin:34px 0 12px;scroll-margin-top:90px}
.adsmkt-content h4{font-family:var(--ad-display);font-size:17px;font-weight:600;color:var(--ad-text);margin:26px 0 10px}
.adsmkt-content a:not(.adsmkt-cta__btn){color:var(--ad-primary);text-decoration:underline;text-underline-offset:2px}
[data-adsmkt-theme="dark"] .adsmkt-content a:not(.adsmkt-cta__btn){color:var(--ad-accent-1)}
.adsmkt-content ul,.adsmkt-content ol{margin:0 0 22px;padding-left:24px}
.adsmkt-content li{margin:0 0 10px}
.adsmkt-content img{max-width:100%;height:auto;border-radius:12px;margin:14px 0}
.adsmkt-content blockquote{font-family:var(--ad-serif);font-style:italic;font-size:22px;line-height:1.55;color:var(--ad-text);
  border-left:4px solid var(--ad-primary);padding:6px 0 6px 24px;margin:32px 0}
.adsmkt-content figure{margin:24px 0}
.adsmkt-content code{background:var(--ad-surface-2);border:1px solid var(--ad-border);border-radius:6px;padding:2px 6px;font-size:.9em}
.adsmkt-content pre{background:var(--ad-deep);color:#E8EDF4;border-radius:12px;padding:20px;overflow:auto;margin:24px 0}
.adsmkt-content pre code{background:none;border:none;padding:0;color:inherit}

/* Bloco FAQ no conteúdo */
.adsmkt-content .adsmkt-faq{border:1px solid var(--ad-border);border-radius:var(--ad-radius);padding:8px 24px;margin:32px 0;background:var(--ad-surface-2)}
.adsmkt-content .adsmkt-faq h3{margin:18px 0 8px}
.adsmkt-content .adsmkt-faq p{margin-bottom:18px}

/* ---------- CTA ----------
   !important é intencional: garante contraste do texto do botão mesmo se
   regras genéricas de link (ex.: .adsmkt-content a) tiverem especificidade
   maior — bug já visto em produção onde o texto do botão ficava roxo sobre
   fundo em degradê (ilegível). */
.adsmkt-cta__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#6D28D9;color:#fff !important;font-weight:700;
  text-decoration:none !important;border-radius:11px;transition:transform .2s ease,box-shadow .2s ease;text-align:center}
.adsmkt-cta__btn:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(124,58,237,.4);color:#fff !important}
.adsmkt-cta__btn:visited{color:#fff !important}

.adsmkt-cta--inline{display:flex;align-items:center;gap:18px;background:var(--ad-surface-2);border:1px solid var(--ad-border);
  border-left:3px solid var(--ad-primary);border-radius:14px;padding:20px 22px;margin:34px 0;flex-wrap:wrap}
.adsmkt-cta--inline .adsmkt-cta__icon{width:42px;height:42px;border-radius:11px;background:rgba(124,58,237,.1);color:var(--ad-primary);
  display:flex;align-items:center;justify-content:center;flex-shrink:0}
.adsmkt-cta__inline-body{flex:1;min-width:200px;display:flex;flex-direction:column;gap:3px}
.adsmkt-cta__inline-body strong{font-family:var(--ad-display);font-size:16px;color:var(--ad-text)}
.adsmkt-cta__inline-body span{font-size:13.5px;color:var(--ad-muted)}
.adsmkt-cta--inline .adsmkt-cta__btn{padding:12px 20px;font-size:14px;white-space:nowrap}

.adsmkt-cta--final{position:relative;overflow:hidden;background:linear-gradient(135deg,#07101F,#162847);border-radius:20px;padding:36px;margin:42px 0}
.adsmkt-cta--final .adsmkt-cta__glow{position:absolute;top:-40%;right:-10%;width:340px;height:340px;border-radius:50%;
  background:radial-gradient(circle,rgba(124,58,237,.25) 0%,transparent 62%);pointer-events:none}
.adsmkt-cta--final .adsmkt-cta__content{position:relative}
.adsmkt-cta--final .adsmkt-cta__title{font-family:var(--ad-display);color:#fff;font-size:23px;font-weight:700;margin:0 0 10px}
.adsmkt-cta--final .adsmkt-cta__text{color:rgba(255,255,255,.7);font-size:15px;line-height:1.65;margin:0 0 22px;max-width:520px}
.adsmkt-cta--final .adsmkt-cta__btn{padding:15px 28px;font-size:15px}

.adsmkt-cta--sidebar{background:var(--ad-deep);border:1px solid rgba(124,58,237,.25);border-radius:var(--ad-radius);padding:24px}
.adsmkt-cta--sidebar .adsmkt-cta__kicker{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ad-accent-2);margin-bottom:8px}
.adsmkt-cta--sidebar .adsmkt-cta__title{font-family:var(--ad-display);color:#fff;font-size:17px;font-weight:600;margin:0 0 8px}
.adsmkt-cta--sidebar .adsmkt-cta__text{color:rgba(255,255,255,.62);font-size:13px;line-height:1.6;margin:0 0 16px}
.adsmkt-cta--sidebar .adsmkt-cta__btn{width:100%;justify-content:center;padding:12px;font-size:14px}

/* ---------- Índice (TOC) ---------- */
.adsmkt-sidebar__sticky{position:sticky;top:24px;display:flex;flex-direction:column;gap:20px}
.adsmkt-toc--desktop{border:1px solid var(--ad-border);border-radius:var(--ad-radius);padding:20px;background:var(--ad-surface)}
.adsmkt-toc__title{display:block;font-family:var(--ad-display);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ad-faint);margin-bottom:14px}
.adsmkt-toc__list{display:flex;flex-direction:column;gap:2px;border-left:2px solid var(--ad-border);padding-left:14px}
.adsmkt-toc__list a{font-size:13.5px;color:var(--ad-muted);text-decoration:none;padding:6px 0;line-height:1.4;transition:color .2s ease;border-left:2px solid transparent;margin-left:-16px;padding-left:14px}
.adsmkt-toc__list a:hover{color:var(--ad-primary)}
.adsmkt-toc__list a.is-h3{padding-left:26px;font-size:12.5px}
.adsmkt-toc__list a.is-active{color:var(--ad-primary);font-weight:600;border-left-color:var(--ad-primary)}

.adsmkt-toc--mobile{display:none;border:1px solid var(--ad-border);border-radius:14px;margin-bottom:28px;overflow:hidden;background:var(--ad-surface)}
.adsmkt-toc__head{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;background:none;border:none;
  font-family:var(--ad-display);font-size:14px;font-weight:600;color:var(--ad-text);padding:16px 18px;cursor:pointer}
.adsmkt-toc__head svg{transition:transform .3s ease}
.adsmkt-toc--mobile.is-open .adsmkt-toc__head svg{transform:rotate(180deg)}
.adsmkt-toc--mobile .adsmkt-toc__list{max-height:0;overflow:hidden;transition:max-height .35s ease;border-left:none;padding:0 18px}
.adsmkt-toc--mobile.is-open .adsmkt-toc__list{max-height:60vh;overflow:auto;padding:0 18px 16px}

/* ---------- Etiquetas + compartilhar ---------- */
.adsmkt-tagsbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;
  padding:26px 0;border-top:1px solid var(--ad-border-soft);border-bottom:1px solid var(--ad-border-soft);margin-top:38px}
.adsmkt-tags{display:flex;gap:8px;flex-wrap:wrap}
.adsmkt-tags a{background:rgba(124,58,237,.08);color:var(--ad-primary);font-size:12.5px;font-weight:600;padding:5px 12px;border-radius:7px;text-decoration:none}
[data-adsmkt-theme="dark"] .adsmkt-tags a{background:rgba(167,139,250,.12);color:var(--ad-accent-1)}
.adsmkt-share{display:flex;align-items:center;gap:8px}
.adsmkt-share__label{font-size:13px;color:var(--ad-faint);font-weight:600;margin-right:2px}
.adsmkt-share__btn{width:36px;height:36px;border-radius:9px;border:1px solid var(--ad-border);display:flex;align-items:center;justify-content:center;color:var(--ad-muted);text-decoration:none;transition:.2s ease}
.adsmkt-share__btn:hover{color:var(--ad-primary);border-color:rgba(124,58,237,.3)}

/* ---------- Captura de lead ---------- */
.adsmkt-lead{margin:36px 0;border-radius:20px;background:var(--ad-grad);padding:32px}
.adsmkt-lead__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.adsmkt-lead__copy h3{font-family:var(--ad-display);color:#fff;font-size:20px;font-weight:700;margin:0 0 6px}
.adsmkt-lead__copy p{color:rgba(255,255,255,.82);font-size:14px;margin:0;max-width:420px}
.adsmkt-lead__form{display:flex;gap:8px;flex:1;min-width:260px;max-width:380px}
.adsmkt-lead__form input{flex:1;min-width:0;padding:13px 14px;border:none;border-radius:10px;font-size:14px;font-family:inherit;outline:none}
.adsmkt-lead__form button{background:var(--ad-deep);color:#fff;border:none;border-radius:10px;padding:13px 18px;font-weight:700;font-size:14px;cursor:pointer;white-space:nowrap;font-family:inherit;transition:opacity .2s}
.adsmkt-lead__form button:hover{opacity:.85}

/* ---------- Caixa de autor ---------- */
.adsmkt-authorbox{display:flex;gap:20px;align-items:flex-start;background:var(--ad-surface-2);border:1px solid var(--ad-border);border-radius:18px;padding:28px;margin-top:32px}
.adsmkt-authorbox__avatar{width:72px;height:72px;border-radius:50%;flex-shrink:0;display:block}
.adsmkt-authorbox__kicker{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ad-faint);margin-bottom:4px}
.adsmkt-authorbox__name{font-family:var(--ad-display);font-size:18px;font-weight:600;margin:0 0 3px;color:var(--ad-text)}
.adsmkt-authorbox__role{font-size:13px;color:var(--ad-primary);font-weight:600}
.adsmkt-authorbox__desc{font-size:14px;color:var(--ad-muted);line-height:1.6;margin:10px 0 0}
.adsmkt-authorbox__social{display:flex;gap:14px;margin-top:14px}
.adsmkt-authorbox__link{font-size:13px;font-weight:600;color:var(--ad-primary);text-decoration:none}
.adsmkt-authorbox__link:hover{text-decoration:underline}

/* ---------- Relacionados ---------- */
.adsmkt-related{background:var(--ad-surface-2);border-top:1px solid var(--ad-border);padding:66px 0}
.adsmkt-related__title{font-family:var(--ad-display);font-size:26px;font-weight:700;letter-spacing:-.01em;margin:0 0 26px;color:var(--ad-text)}
.adsmkt-related__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.adsmkt-card{display:block;text-decoration:none;color:inherit;background:var(--ad-surface);border:1px solid var(--ad-border);border-radius:var(--ad-radius);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.adsmkt-card:hover{transform:translateY(-4px);box-shadow:var(--ad-shadow);border-color:rgba(124,58,237,.2)}
.adsmkt-card__thumb{position:relative;height:160px;background:var(--ad-deep);overflow:hidden}
.adsmkt-card__img{width:100%;height:100%;object-fit:cover;display:block}
.adsmkt-card__cat{position:absolute;left:14px;bottom:14px;background:rgba(7,16,31,.7);color:#fff;font-size:10.5px;font-weight:700;padding:4px 10px;border-radius:7px;text-transform:uppercase;letter-spacing:.05em;backdrop-filter:blur(4px)}
.adsmkt-card__body{padding:20px}
.adsmkt-card__meta{font-size:11.5px;color:var(--ad-faint)}
.adsmkt-card__title{font-family:var(--ad-display);font-size:16px;font-weight:600;line-height:1.4;margin:7px 0 10px;color:var(--ad-text)}
.adsmkt-card__link{font-size:12.5px;color:var(--ad-primary);font-weight:700}

/* ---------- Reveal ---------- */
.adsmkt-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.16,.84,.44,1),transform .7s cubic-bezier(.16,.84,.44,1)}
.adsmkt-reveal.is-in{opacity:1;transform:none}

/* ---------- Responsivo ---------- */
@media (max-width:980px){
  .adsmkt-layout{grid-template-columns:1fr;gap:0}
  .adsmkt-sidebar{display:none}
  .adsmkt-toc--mobile{display:block}
  .adsmkt-main{max-width:var(--ad-read)}
}
@media (max-width:680px){
  .adsmkt-hero{padding:104px 0 44px}
  .adsmkt-content{font-size:17px}
  .adsmkt-content > p:first-of-type{font-size:19px}
  .adsmkt-content h2{font-size:24px}
  .adsmkt-related__grid{grid-template-columns:1fr}
  .adsmkt-lead__inner{flex-direction:column;align-items:stretch}
  .adsmkt-lead__form{max-width:none}
  .adsmkt-tagsbar{flex-direction:column;align-items:flex-start}
  .adsmkt-cta--inline{flex-direction:column;align-items:stretch;text-align:center}
  .adsmkt-cta--inline .adsmkt-cta__icon{margin:0 auto}
  .adsmkt-cta--inline .adsmkt-cta__btn{width:100%}
  .adsmkt-cta--final .adsmkt-cta__btn,
  .adsmkt-cta--sidebar .adsmkt-cta__btn{width:100%}
}

/* ---------- Acessibilidade: reduzir movimento ---------- */
@media (prefers-reduced-motion:reduce){
  .adsmkt-reveal{opacity:1;transform:none;transition:none}
  *{scroll-behavior:auto !important}
}
