/**
 * TECNOHOSTING v2 — Design System Completo
 * ==========================================
 * /assets/css/main.css
 *
 * ÍNDICE
 *  1. Variáveis (Tokens)
 *  2. Reset & Base
 *  3. Tipografia
 *  4. Layout
 *  5. Navegação
 *  6. Hero
 *  7. Seção Problema (dores do cliente)
 *  8. Equação de Valor
 *  9. 4 Pilares
 * 10. Posicionamento no Mercado
 * 11. Diferenciais (vs Mercado)
 * 12. Planos
 * 13. Segmentos
 * 14. Ecossistema / Parceiros
 * 15. Sobre / Timeline
 * 16. FAQ
 * 17. Blog
 * 18. CTA Final
 * 19. Footer
 * 20. Componentes Utilitários
 * 21. Animações
 * 22. Responsivo
 */

/* ============================================================
   1. VARIÁVEIS
   ============================================================ */
:root {
  /* Fundo */
  --bg-0:   #080c18;
  --bg-1:   #0c1020;
  --bg-2:   #101527;
  --bg-card:#13192e;
  --bg-card-h:#192034;

  /* Bordas */
  --b-1: #1a2340;
  --b-2: #243052;

  /* Cores de marca */
  --verde:   #00d4aa;
  --verde-r: 0,212,170;
  --azul:    #1a7fff;
  --azul-r:  26,127,255;
  --amber:   #f5a623;
  --amber-r: 245,166,35;
  --coral:   #e8604c;   /* novo — tomado da paleta dos slides */
  --coral-r: 232,96,76;

  /* Texto */
  --tx-1:  #eef2ff;
  --tx-2:  #8898c0;
  --tx-3:  #4a5878;
  --branco:#ffffff;

  /* Fontes */
  --f-display: 'Syne', sans-serif;
  --f-body:    'DM Sans', sans-serif;
  --f-mono:    'JetBrains Mono', monospace;

  /* Espaçamentos */
  --s-xs:  .5rem;
  --s-sm:  1rem;
  --s-md:  2rem;
  --s-lg:  4rem;
  --s-xl:  8rem;

  /* Bordas */
  --r-sm:  6px;
  --r-md:  14px;
  --r-lg:  22px;
  --r-pill:100px;

  /* Sombras */
  --sh-md: 0 8px 32px rgba(0,0,0,.45);
  --sh-lg: 0 20px 64px rgba(0,0,0,.55);
  --glow-v:0 0 48px rgba(var(--verde-r),.18);
  --glow-a:0 0 48px rgba(var(--azul-r),.15);
  --glow-c:0 0 48px rgba(var(--coral-r),.15);

  /* Transições */
  --t-fast: .15s ease;
  --t-mid:  .3s ease;
  --t-slow: .65s cubic-bezier(.16,1,.3,1);

  --max-w: 1200px;
  --max-txt: 740px;
}

/* ============================================================
   2. RESET & BASE
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--bg-0);
  color:var(--tx-1);
  font-family:var(--f-body);
  font-size:1rem;
  line-height:1.7;
  overflow-x:hidden;
  background-image:
    radial-gradient(ellipse at 15% 0%,  rgba(var(--azul-r),.07) 0%,transparent 55%),
    radial-gradient(ellipse at 85% 100%,rgba(var(--verde-r),.06) 0%,transparent 55%);
}
img{max-width:100%;height:auto;display:block}
a{color:var(--verde);text-decoration:none;transition:color var(--t-fast)}
a:hover{color:var(--branco)}
ul,ol{list-style:none}
button,input,textarea,select{font-family:inherit;font-size:inherit}

/* ============================================================
   3. TIPOGRAFIA
   ============================================================ */
h1,h2,h3,h4,h5,h6{
  font-family:var(--f-display);
  font-weight:700;
  line-height:1.15;
  color:var(--branco);
  letter-spacing:-.025em;
}
h1{font-size:clamp(2.6rem,6.5vw,5.2rem)}
h2{font-size:clamp(1.9rem,4vw,3.1rem)}
h3{font-size:clamp(1.2rem,2.5vw,1.75rem)}
h4{font-size:1.15rem}
p{color:var(--tx-2);margin-bottom:1rem}
p:last-child{margin-bottom:0}

/* Label / eyebrow */
.th-label{
  font-family:var(--f-mono);
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--verde);
  display:inline-block;
  margin-bottom:.6rem;
}
.th-label.amber{color:var(--amber)}
.th-label.coral{color:var(--coral)}

/* Gradiente de texto */
.g-verde{
  background:linear-gradient(130deg,var(--verde),var(--azul));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.g-coral{
  background:linear-gradient(130deg,var(--coral),var(--amber));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}

/* ============================================================
   4. LAYOUT
   ============================================================ */
.th-container{max-width:var(--max-w);margin:0 auto;padding:0 var(--s-md)}
.th-section{padding:var(--s-xl) 0;position:relative}
.th-section-alt{background:var(--bg-1)}
.th-section-alt2{background:var(--bg-2)}

.th-section-header{text-align:center;max-width:var(--max-txt);margin:0 auto var(--s-lg)}
.th-section-header p{font-size:1.1rem;margin-top:.85rem}

.th-divisor{
  width:52px;height:3px;
  background:linear-gradient(90deg,var(--verde),var(--azul));
  border-radius:var(--r-pill);
  margin:1.25rem auto 0;
}
.th-divisor-l{margin-left:0}

/* Grid genérico */
.th-grid{display:grid;gap:1.5rem}
.th-grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.th-grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.th-grid-4{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}

/* ============================================================
   5. NAVEGAÇÃO
   ============================================================ */
#th-header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  padding:1.2rem 0;
  transition:all var(--t-mid);
  background:transparent;
}
#th-header.scrolled{
  background:rgba(8,12,24,.92);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--b-1);
  padding:.8rem 0;
  box-shadow:var(--sh-md);
}
.th-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--s-md)}

/* Logo */
.th-logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;flex-shrink:0}
.th-logo-icon{
  width:38px;height:38px;
  background:linear-gradient(135deg,var(--verde),var(--azul));
  border-radius:var(--r-sm);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--f-display);font-weight:800;font-size:.95rem;
  color:var(--bg-0);letter-spacing:-.05em;
  transition:transform var(--t-mid),box-shadow var(--t-mid);
}
.th-logo:hover .th-logo-icon{transform:scale(1.06) rotate(-3deg);box-shadow:var(--glow-v)}
.th-logo-txt{font-family:var(--f-display);font-weight:700;font-size:1.05rem;color:var(--branco);line-height:1.1;letter-spacing:-.03em}
.th-logo-txt span{display:block;font-size:.62rem;font-weight:400;font-family:var(--f-body);color:var(--verde);letter-spacing:.1em;text-transform:uppercase}

/* Menu */
.th-menu{display:flex;align-items:center;gap:1.8rem}
.th-menu a{font-size:.87rem;font-weight:500;color:var(--tx-2);position:relative;padding-bottom:2px}
.th-menu a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--verde);transition:width var(--t-mid)}
.th-menu a:hover{color:var(--branco)}
.th-menu a:hover::after{width:100%}
.th-nav-cta{
  background:linear-gradient(135deg,var(--verde),#00b38e);
  color:var(--bg-0)!important;font-weight:600!important;
  padding:.48rem 1.2rem;border-radius:var(--r-pill);
}
.th-nav-cta::after{display:none!important}
.th-nav-cta:hover{color:var(--bg-0)!important;transform:translateY(-1px);box-shadow:0 4px 18px rgba(var(--verde-r),.4)}

/* Hamburguer */
.th-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;background:none;border:none;z-index:1001}
.th-toggle span{display:block;width:24px;height:2px;background:var(--branco);border-radius:2px;transition:all var(--t-mid);transform-origin:left center}
.th-toggle.ativo span:nth-child(1){transform:rotate(45deg) translateY(-1px)}
.th-toggle.ativo span:nth-child(2){opacity:0;transform:translateX(-8px)}
.th-toggle.ativo span:nth-child(3){transform:rotate(-45deg) translateY(1px)}

/* ============================================================
   6. HERO
   ============================================================ */
#th-hero{
  min-height:100vh;display:flex;align-items:center;
  position:relative;overflow:hidden;padding-top:80px;
}
.th-hero-grade{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(26,35,64,.45) 1px,transparent 1px),
    linear-gradient(90deg,rgba(26,35,64,.45) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:radial-gradient(ellipse at center,black 40%,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse at center,black 40%,transparent 80%);
}
.th-orbe{position:absolute;border-radius:50%;filter:blur(80px);opacity:.32;animation:orbe-float 9s ease-in-out infinite alternate}
.th-orbe-1{width:520px;height:520px;background:radial-gradient(circle,rgba(var(--verde-r),.6),transparent 70%);top:-120px;left:-180px;animation-delay:0s}
.th-orbe-2{width:420px;height:420px;background:radial-gradient(circle,rgba(var(--azul-r),.5),transparent 70%);top:35%;right:-130px;animation-delay:-3s}
.th-orbe-3{width:320px;height:320px;background:radial-gradient(circle,rgba(var(--coral-r),.35),transparent 70%);bottom:8%;left:28%;animation-delay:-6s}
@keyframes orbe-float{from{transform:translate(0,0) scale(1)}to{transform:translate(28px,-18px) scale(1.08)}}

/* Canvas */
#th-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}

.th-hero-inner{position:relative;z-index:2;max-width:820px}

.th-hero-badge{
  display:inline-flex;align-items:center;gap:.5rem;
  background:rgba(var(--verde-r),.1);border:1px solid rgba(var(--verde-r),.3);
  color:var(--verde);font-size:.76rem;font-weight:600;letter-spacing:.06em;
  padding:.38rem .95rem;border-radius:var(--r-pill);margin-bottom:1.4rem;
  font-family:var(--f-mono);
}
.th-dot{width:6px;height:6px;background:var(--verde);border-radius:50%;animation:pulsar 2s ease-in-out infinite}
@keyframes pulsar{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.6)}}

.th-hero-titulo{font-size:clamp(2.8rem,7vw,5.6rem);font-weight:800;line-height:1.03;margin-bottom:1.4rem;letter-spacing:-.04em}
.th-hero-sub{font-size:clamp(1.05rem,2vw,1.25rem);color:var(--tx-2);max-width:580px;margin-bottom:2.2rem;line-height:1.75}

.th-btn-grupo{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:2.8rem}

/* Métricas hero */
.th-metricas{display:flex;gap:2.5rem;flex-wrap:wrap}
.th-metrica{display:flex;flex-direction:column}
.th-metrica-n{font-family:var(--f-display);font-size:2rem;font-weight:800;color:var(--branco);line-height:1}
.th-metrica-l{font-size:.78rem;color:var(--tx-2);margin-top:.2rem}

/* Scroll indicator */
.th-scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.45rem;z-index:2}
.th-scroll-mouse{width:22px;height:36px;border:2px solid rgba(var(--verde-r),.4);border-radius:11px;display:flex;justify-content:center;padding-top:5px}
.th-scroll-mouse::after{content:'';width:3px;height:7px;background:var(--verde);border-radius:2px;animation:scroll-anim 2s ease-in-out infinite}
@keyframes scroll-anim{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(12px)}}
.th-scroll-txt{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tx-3);font-family:var(--f-mono)}

/* ============================================================
   7. BUTTONS
   ============================================================ */
.th-btn{
  display:inline-flex;align-items:center;gap:.5rem;
  font-weight:600;font-size:.95rem;padding:.82rem 1.7rem;
  border-radius:var(--r-pill);border:none;cursor:pointer;
  transition:all var(--t-mid);text-decoration:none;white-space:nowrap;
  font-family:var(--f-body);
}
.th-btn-p{background:linear-gradient(135deg,var(--verde),#00b38e);color:var(--bg-0)}
.th-btn-p:hover{color:var(--bg-0);transform:translateY(-2px);box-shadow:0 8px 24px rgba(var(--verde-r),.4)}
.th-btn-s{background:transparent;color:var(--tx-1);border:1px solid var(--b-2)}
.th-btn-s:hover{color:var(--branco);border-color:var(--verde);background:rgba(var(--verde-r),.08)}
.th-btn-wpp{background:#25D366;color:#fff}
.th-btn-wpp:hover{color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px rgba(37,211,102,.4)}
.th-btn-lg{padding:.95rem 2.2rem;font-size:1.05rem}
.th-btn svg{flex-shrink:0;transition:transform var(--t-fast)}
.th-btn:hover svg{transform:translateX(3px)}

/* ============================================================
   8. SEÇÃO: O PROBLEMA (dores do cliente)
   ============================================================ */
#th-problema{background:var(--bg-1);overflow:hidden}

.th-problema-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4rem;
  align-items:center;
}
.th-dores{display:flex;flex-direction:column;gap:.9rem;margin-top:2rem}
.th-dor{
  display:flex;align-items:center;gap:1rem;
  background:rgba(var(--coral-r),.07);
  border:1px solid rgba(var(--coral-r),.18);
  border-radius:var(--r-md);
  padding:1rem 1.25rem;
  transition:all var(--t-mid);
  cursor:default;
}
.th-dor:hover{background:rgba(var(--coral-r),.13);border-color:rgba(var(--coral-r),.32);transform:translateX(4px)}
.th-dor-icone{font-size:1.3rem;flex-shrink:0}
.th-dor p{font-size:.9rem;color:var(--tx-1);margin:0}

.th-solucao-box{
  background:linear-gradient(135deg,rgba(var(--verde-r),.06),rgba(var(--azul-r),.06));
  border:1px solid var(--b-2);
  border-radius:var(--r-lg);
  padding:2.5rem;
  position:relative;
  overflow:hidden;
}
.th-solucao-box::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--verde),var(--azul));
}
.th-equacao{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:2rem 0}
.th-eq-item{
  background:var(--bg-card);border:1px solid var(--b-1);
  border-radius:var(--r-md);padding:1.2rem 1.5rem;
  text-align:center;flex:1;min-width:120px;
}
.th-eq-item.destaque{
  background:linear-gradient(135deg,rgba(var(--verde-r),.15),rgba(var(--azul-r),.1));
  border-color:rgba(var(--verde-r),.35);
}
.th-eq-emoji{font-size:1.6rem;display:block;margin-bottom:.35rem}
.th-eq-titulo{font-family:var(--f-display);font-size:.9rem;font-weight:700;color:var(--branco)}
.th-eq-desc{font-size:.75rem;color:var(--tx-2);margin-top:.2rem}
.th-eq-op{font-size:1.8rem;color:var(--verde);font-weight:700;flex-shrink:0}

/* ============================================================
   9. CARD GENÉRICO
   ============================================================ */
.th-card{
  background:var(--bg-card);border:1px solid var(--b-1);
  border-radius:var(--r-lg);padding:2rem;
  transition:all var(--t-mid);position:relative;overflow:hidden;
}
.th-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--verde),var(--azul));opacity:0;transition:opacity var(--t-mid)}
.th-card:hover{background:var(--bg-card-h);border-color:var(--b-2);transform:translateY(-4px);box-shadow:var(--sh-lg),var(--glow-v)}
.th-card:hover::before{opacity:1}

.th-card-icone{
  width:52px;height:52px;border-radius:var(--r-md);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:1.2rem;font-size:1.3rem;
  background:rgba(var(--verde-r),.1);border:1px solid rgba(var(--verde-r),.2);
  transition:all var(--t-mid);
}
.th-card:hover .th-card-icone{background:rgba(var(--verde-r),.2);transform:scale(1.06)}
.th-card-icone.azul{background:rgba(var(--azul-r),.1);border-color:rgba(var(--azul-r),.2)}
.th-card:hover .th-card-icone.azul{background:rgba(var(--azul-r),.2)}
.th-card-icone.amber{background:rgba(var(--amber-r),.1);border-color:rgba(var(--amber-r),.2)}
.th-card-icone.coral{background:rgba(var(--coral-r),.1);border-color:rgba(var(--coral-r),.2)}
.th-card h3{font-size:1.1rem;margin-bottom:.65rem}
.th-card p{font-size:.87rem;line-height:1.6}

/* ============================================================
   10. SEÇÃO: 4 PILARES
   ============================================================ */
#th-pilares{}
.th-pilares-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  border:1px solid var(--b-1);
  border-radius:var(--r-lg);
  overflow:hidden;
}
.th-pilar{
  padding:2.2rem 1.75rem;
  border-right:1px solid var(--b-1);
  transition:all var(--t-mid);
  cursor:default;
  position:relative;
  overflow:hidden;
}
.th-pilar:last-child{border-right:none}
.th-pilar::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;transition:all var(--t-mid)}
.th-pilar-1::before{background:var(--verde)}
.th-pilar-2::before{background:var(--azul)}
.th-pilar-3::before{background:var(--amber)}
.th-pilar-4::before{background:var(--coral)}
.th-pilar:hover{background:var(--bg-card-h)}
.th-pilar-num{
  font-family:var(--f-display);font-size:2.8rem;font-weight:800;
  line-height:1;opacity:.12;margin-bottom:.8rem;
  display:block;
}
.th-pilar-1 .th-pilar-num{color:var(--verde)}
.th-pilar-2 .th-pilar-num{color:var(--azul)}
.th-pilar-3 .th-pilar-num{color:var(--amber)}
.th-pilar-4 .th-pilar-num{color:var(--coral)}
.th-pilar h3{font-size:1rem;margin-bottom:.6rem}
.th-pilar p{font-size:.82rem;line-height:1.65}

/* ============================================================
   11. POSICIONAMENTO NO MERCADO
   ============================================================ */
#th-posicionamento{background:var(--bg-1)}
.th-pos-grid{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:1.5rem;align-items:stretch}
.th-pos-card{
  background:var(--bg-card);border:1px solid var(--b-1);
  border-radius:var(--r-lg);padding:2rem;text-align:center;
  opacity:.6;filter:grayscale(.5);
  transition:all var(--t-mid);
}
.th-pos-card:hover{opacity:.8;filter:grayscale(0)}
.th-pos-card.sweet-spot{
  opacity:1;filter:none;
  background:linear-gradient(135deg,rgba(var(--verde-r),.07),rgba(var(--azul-r),.07));
  border-color:rgba(var(--verde-r),.4);
  box-shadow:var(--sh-lg),var(--glow-v);
  transform:scale(1.03);
}
.th-pos-emoji{font-size:2.5rem;margin-bottom:1rem}
.th-pos-card h3{font-size:1.05rem;margin-bottom:.6rem}
.th-pos-card p{font-size:.83rem}

/* ============================================================
   12. SEÇÃO: COMPARATIVO (vs Mercado)
   ============================================================ */
#th-comparativo{background:var(--bg-2)}
.th-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:860px;margin:0 auto}

.th-compare-lado{
  border-radius:var(--r-lg);
  padding:2.2rem;
}
.th-compare-lado.neg{
  background:rgba(255,255,255,.03);
  border:1px solid var(--b-1);
}
.th-compare-lado.pos{
  background:linear-gradient(135deg,rgba(var(--verde-r),.08),rgba(var(--azul-r),.06));
  border:1px solid rgba(var(--verde-r),.3);
}
.th-compare-titulo{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--b-1);font-family:var(--f-mono)}
.th-compare-lado.neg .th-compare-titulo{color:var(--tx-3)}
.th-compare-lado.pos .th-compare-titulo{color:var(--verde)}
.th-compare-item{display:flex;align-items:flex-start;gap:.75rem;padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.04)}
.th-compare-item:last-child{border-bottom:none}
.th-compare-icon{font-size:1rem;flex-shrink:0;margin-top:2px}
.th-compare-item p{font-size:.85rem;margin:0}

/* ============================================================
   13. SEÇÃO: PLANOS
   ============================================================ */
#th-planos{background:var(--bg-1)}
.th-planos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:start}

.th-plano{
  background:var(--bg-card);border:1px solid var(--b-1);
  border-radius:var(--r-lg);padding:2.2rem 1.8rem;
  position:relative;overflow:hidden;
  transition:all var(--t-mid);
}
.th-plano::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--b-2);transition:all var(--t-mid)}
.th-plano:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);border-color:var(--b-2)}

.th-plano.dest{
  border-color:var(--verde);
  background:linear-gradient(150deg,#0f1e2e,#0f1929);
  box-shadow:0 0 0 1px rgba(var(--verde-r),.3),var(--glow-v);
  transform:scale(1.03);
}
.th-plano.dest::before{background:linear-gradient(90deg,var(--verde),var(--azul))}
.th-plano.dest:hover{transform:scale(1.03) translateY(-4px)}

.th-badge{
  position:absolute;top:1.4rem;right:1.4rem;
  background:linear-gradient(135deg,var(--verde),var(--azul));
  color:var(--bg-0);font-size:.67rem;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;padding:.22rem .7rem;border-radius:var(--r-pill);
}
.th-plano-nome{font-family:var(--f-display);font-size:1.35rem;font-weight:700;color:var(--branco);margin-bottom:.2rem}
.th-plano-obj{font-size:.82rem;color:var(--tx-2);margin-bottom:1.4rem}
.th-plano-preco{margin-bottom:1.4rem}
.th-preco-from{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--tx-3);display:block;margin-bottom:.15rem}
.th-preco-valor{font-family:var(--f-display);font-size:2.4rem;font-weight:800;color:var(--branco);line-height:1}
.th-preco-valor .moeda{font-size:1.3rem;vertical-align:top;margin-top:.28rem;display:inline-block;color:var(--verde)}
.th-preco-valor .periodo{font-size:.85rem;color:var(--tx-2);font-weight:400}
.th-plano-lista{margin:1.5rem 0;display:flex;flex-direction:column;gap:.55rem}
.th-plano-item{display:flex;align-items:flex-start;gap:.55rem;font-size:.85rem;color:var(--tx-2);line-height:1.4}
.th-plano-item.hl{color:var(--branco);font-weight:500}
.th-check-ico{width:18px;height:18px;border-radius:50%;background:rgba(var(--verde-r),.14);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.th-check-ico::after{content:'✓';font-size:.62rem;color:var(--verde);font-weight:700}
.th-plano-mentor{border-top:1px solid var(--b-1);padding-top:1.1rem;margin-top:.4rem}
.th-mentor-tag{font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;color:var(--amber);font-weight:600;margin-bottom:.4rem;font-family:var(--f-mono)}
.th-mentor-info{font-size:.85rem;color:var(--tx-1)}

/* Barra de horas de mentoria (visual) */
.th-horas-bar{margin-top:1.4rem;padding:1rem 1.25rem;background:rgba(var(--verde-r),.05);border:1px solid rgba(var(--verde-r),.12);border-radius:var(--r-md)}
.th-horas-label{font-size:.7rem;font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tx-3);margin-bottom:.5rem}
.th-horas-track{height:6px;background:var(--b-1);border-radius:3px;overflow:hidden}
.th-horas-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--verde),var(--azul));transition:width 1.2s cubic-bezier(.16,1,.3,1)}

/* ============================================================
   14. SEGMENTOS
   ============================================================ */
#th-segmentos{}
.th-seg-card{
  background:var(--bg-card);border:1px solid var(--b-1);border-radius:var(--r-lg);
  padding:1.75rem;display:flex;align-items:flex-start;gap:1rem;
  transition:all var(--t-mid);cursor:default;
}
.th-seg-card:hover{border-color:var(--b-2);background:var(--bg-card-h);transform:translateY(-2px);box-shadow:var(--sh-md)}
.th-seg-emoji{font-size:1.9rem;flex-shrink:0;line-height:1;margin-top:2px}
.th-seg-card h3{font-size:1rem;margin-bottom:.3rem}
.th-seg-card p{font-size:.84rem;margin:0}

/* ============================================================
   15. ECOSSISTEMA / PARCEIROS
   ============================================================ */
#th-ecossistema{background:var(--bg-1)}
.th-eco-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.th-eco-items{display:flex;flex-direction:column;gap:1rem}
.th-eco-item{
  display:flex;align-items:flex-start;gap:1rem;
  padding:1.2rem 1.4rem;
  background:var(--bg-card);border:1px solid var(--b-1);
  border-radius:var(--r-md);transition:all var(--t-mid);
}
.th-eco-item:hover{border-color:var(--b-2);transform:translateX(4px)}
.th-eco-icon{
  width:44px;height:44px;border-radius:var(--r-sm);
  background:rgba(var(--verde-r),.1);border:1px solid rgba(var(--verde-r),.2);
  display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;flex-shrink:0;
}
.th-eco-item h4{font-size:.95rem;margin-bottom:.2rem;color:var(--branco)}
.th-eco-item p{font-size:.82rem;margin:0}

/* Stack técnico */
.th-tech-stack{margin-top:2rem}
.th-tech-titulo{font-size:.72rem;font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tx-3);margin-bottom:.75rem}
.th-tech-tags{display:flex;flex-wrap:wrap;gap:.5rem}
.th-tech-tag{
  background:rgba(var(--azul-r),.1);color:var(--azul);
  border:1px solid rgba(var(--azul-r),.2);
  font-size:.75rem;font-family:var(--f-mono);
  padding:.25rem .7rem;border-radius:var(--r-pill);
  transition:all var(--t-fast);
}
.th-tech-tag:hover{background:rgba(var(--azul-r),.2)}

/* ============================================================
   16. SOBRE / TIMELINE
   ============================================================ */
#th-sobre{}
.th-sobre-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.th-timeline{display:flex;flex-direction:column;gap:0;position:relative}
.th-timeline::before{content:'';position:absolute;left:16px;top:24px;bottom:0;width:1px;background:linear-gradient(180deg,var(--verde),var(--azul),transparent)}
.th-tl-item{display:flex;gap:1.4rem;padding-bottom:2rem;opacity:0;transform:translateX(-18px);transition:all .5s ease}
.th-tl-item.visivel{opacity:1;transform:translateX(0)}
.th-tl-dot{width:33px;height:33px;border-radius:50%;background:var(--bg-1);border:2px solid var(--verde);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;font-size:.82rem}
.th-tl-body h4{font-size:.97rem;margin-bottom:.35rem;color:var(--branco)}
.th-tl-body p{font-size:.84rem;margin:0}

/* Stats */
.th-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.8rem}
.th-stat{background:var(--bg-card);border:1px solid var(--b-1);border-radius:var(--r-md);padding:1.2rem;text-align:center;transition:all var(--t-mid)}
.th-stat:hover{border-color:var(--b-2);transform:translateY(-2px)}
.th-stat-n{font-family:var(--f-display);font-size:1.9rem;font-weight:800;color:var(--verde);line-height:1}
.th-stat-l{font-size:.73rem;color:var(--tx-2);margin-top:.2rem}

/* Propósito box */
.th-proposito{
  background:linear-gradient(135deg,rgba(var(--verde-r),.05),rgba(var(--azul-r),.05));
  border:1px solid var(--b-2);border-radius:var(--r-lg);
  padding:2rem;margin-top:1.5rem;
  position:relative;
}
.th-proposito::before{content:'❝';position:absolute;top:-1.2rem;left:1.5rem;font-size:3rem;color:rgba(var(--verde-r),.3);line-height:1;font-family:Georgia,serif}
.th-proposito p{font-size:1rem;color:var(--tx-1);font-style:italic;line-height:1.75;margin:0}

/* ============================================================
   17. FAQ
   ============================================================ */
#th-faq{background:var(--bg-1)}
.th-faq-wrapper{display:grid;grid-template-columns:1fr 1.6fr;gap:4rem;align-items:start}
.th-faq-item{border-bottom:1px solid var(--b-1)}
.th-faq-q{width:100%;background:none;border:none;color:var(--branco);font-family:var(--f-body);font-size:.97rem;font-weight:500;text-align:left;padding:1.15rem 0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;transition:color var(--t-fast)}
.th-faq-q:hover{color:var(--verde)}
.th-faq-ico{width:24px;height:24px;border-radius:50%;border:1px solid var(--b-2);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem;color:var(--verde);transition:all var(--t-mid);font-style:normal}
.th-faq-item.aberto .th-faq-ico{transform:rotate(45deg);background:rgba(var(--verde-r),.1)}
.th-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--t-mid)}
.th-faq-item.aberto .th-faq-a{grid-template-rows:1fr}
.th-faq-a-inner{overflow:hidden;padding-bottom:0;transition:padding var(--t-mid)}
.th-faq-item.aberto .th-faq-a-inner{padding-bottom:1.1rem}
.th-faq-a p{font-size:.88rem;line-height:1.7}

/* ============================================================
   18. BLOG
   ============================================================ */
.th-blog-card{background:var(--bg-card);border:1px solid var(--b-1);border-radius:var(--r-lg);overflow:hidden;transition:all var(--t-mid)}
.th-blog-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);border-color:var(--b-2)}
.th-blog-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,var(--bg-1),var(--b-2));overflow:hidden;position:relative}
.th-blog-thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow)}
.th-blog-card:hover .th-blog-thumb img{transform:scale(1.05)}
.th-blog-body{padding:1.4rem}
.th-blog-cat{font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--verde);margin-bottom:.45rem;font-family:var(--f-mono)}
.th-blog-card h3{font-size:1.05rem;margin-bottom:.6rem;transition:color var(--t-fast)}
.th-blog-card:hover h3{color:var(--verde)}
.th-blog-card p{font-size:.84rem;margin-bottom:.8rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.th-blog-meta{font-size:.73rem;color:var(--tx-3)}

/* ============================================================
   19. CTA FINAL
   ============================================================ */
#th-cta{
  background:linear-gradient(135deg,#06101a,#060c1a);
  text-align:center;position:relative;overflow:hidden;
}
#th-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgba(var(--verde-r),.12),transparent 60%),radial-gradient(ellipse at 70% 50%,rgba(var(--azul-r),.1),transparent 60%)}
.th-cta-inner{position:relative;z-index:1;max-width:660px;margin:0 auto}
#th-cta h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:1.1rem}
#th-cta p{font-size:1.1rem;margin-bottom:1.8rem}

/* ============================================================
   20. FOOTER
   ============================================================ */
#th-footer{background:var(--bg-1);border-top:1px solid var(--b-1);padding:4rem 0 2rem}
.th-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.th-footer-sobre p{font-size:.84rem;max-width:300px;margin-top:.9rem}
.th-footer-col h4{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--tx-3);margin-bottom:.9rem;font-family:var(--f-mono)}
.th-footer-col ul{display:flex;flex-direction:column;gap:.45rem}
.th-footer-col a{font-size:.84rem;color:var(--tx-2);transition:color var(--t-fast)}
.th-footer-col a:hover{color:var(--verde)}
.th-footer-bot{display:flex;align-items:center;justify-content:space-between;padding-top:1.75rem;border-top:1px solid var(--b-1);flex-wrap:wrap;gap:1rem}
.th-footer-bot p{font-size:.78rem;color:var(--tx-3);margin:0}
.th-socials{display:flex;gap:.65rem}
.th-social{width:34px;height:34px;border-radius:var(--r-sm);background:var(--bg-card);border:1px solid var(--b-1);display:flex;align-items:center;justify-content:center;font-size:.85rem;color:var(--tx-2);transition:all var(--t-fast);text-decoration:none}
.th-social:hover{border-color:var(--verde);color:var(--verde);background:rgba(var(--verde-r),.1)}

/* FAB WhatsApp */
.th-fab{position:fixed;bottom:2rem;right:2rem;z-index:900}
.th-fab-btn{width:56px;height:56px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,.4);cursor:pointer;transition:all var(--t-mid);text-decoration:none;color:white;font-size:1.5rem}
.th-fab-btn:hover{color:white;transform:scale(1.1);box-shadow:0 6px 28px rgba(37,211,102,.6)}

/* ============================================================
   21. ANIMAÇÕES DE ENTRADA
   ============================================================ */
.th-up{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s var(--t-slow)}
.th-left{opacity:0;transform:translateX(-28px);transition:opacity .6s ease,transform .6s var(--t-slow)}
.th-right{opacity:0;transform:translateX(28px);transition:opacity .6s ease,transform .6s var(--t-slow)}
.th-up.visivel,.th-left.visivel,.th-right.visivel{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}
.d4{transition-delay:.4s}.d5{transition-delay:.5s}

/* ============================================================
   22. RESPONSIVO
   ============================================================ */
@media(max-width:1100px){
  .th-pilares-grid{grid-template-columns:1fr 1fr}
  .th-pilar{border-bottom:1px solid var(--b-1)}
  .th-pilar:nth-child(2n){border-right:none}
  .th-pilar:nth-child(n+3){border-bottom:none}
  .th-planos-grid{grid-template-columns:1fr}
  .th-plano.dest{transform:scale(1)}
  .th-plano.dest:hover{transform:translateY(-4px)}
  .th-pos-grid{grid-template-columns:1fr}
  .th-footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
  .th-eco-grid{grid-template-columns:1fr;gap:2.5rem}
  .th-sobre-grid{grid-template-columns:1fr;gap:3rem}
  .th-problema-grid{grid-template-columns:1fr;gap:2.5rem}
}
@media(max-width:768px){
  :root{--s-xl:5rem;--s-lg:3rem}
  .th-menu{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(8,12,24,.97);backdrop-filter:blur(20px);flex-direction:column;justify-content:center;align-items:center;gap:2.5rem;transform:translateX(100%);transition:transform var(--t-slow);z-index:999}
  .th-menu.aberto{transform:translateX(0)}
  .th-menu a{font-size:1.2rem}
  .th-toggle{display:flex;z-index:1001}
  .th-footer-grid{grid-template-columns:1fr;gap:1.8rem}
  .th-footer-bot{flex-direction:column;text-align:center}
  .th-compare-grid{grid-template-columns:1fr}
  .th-faq-wrapper{grid-template-columns:1fr}
  .th-btn-grupo{flex-direction:column;align-items:flex-start}
}
@media(max-width:480px){
  .th-container{padding:0 1rem}
  .th-btn-grupo .th-btn{width:100%;justify-content:center}
  .th-metricas{flex-direction:column;gap:1rem}
  .th-pilares-grid{grid-template-columns:1fr}
  .th-pilar{border-right:none;border-bottom:1px solid var(--b-1)}
  .th-pilar:last-child{border-bottom:none}
}

/* ============================================================
   BLOG — home.php / single.php
   ============================================================ */

/* Hero do Blog */
.th-blog-hero{
  padding:8rem 0 4rem;min-height:50vh;display:flex;
  align-items:center;position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--bg-0),var(--bg-1));
}
.th-blog-hero-bg{
  position:absolute;inset:0;
  background:
    radial-gradient(ellipse at 20% 50%,rgba(var(--verde-r),.08),transparent 60%),
    radial-gradient(ellipse at 80% 20%,rgba(var(--azul-r),.06),transparent 60%);
}
.th-blog-hero-inner{position:relative;z-index:1;max-width:700px}
.th-blog-hero-inner h1{margin:.35rem 0 .85rem}
.th-blog-hero-inner p{font-size:1.05rem;margin-bottom:1.6rem}

/* Busca hero */
.th-blog-busca{width:100%;max-width:560px}
.th-busca-wrap{display:flex;align-items:center;gap:.5rem;position:relative}
.th-busca-icon{position:absolute;left:1rem;color:var(--tx-3);flex-shrink:0}
.th-busca-input{
  flex:1;padding:.8rem 1rem .8rem 3rem;
  background:rgba(255,255,255,.06);border:1px solid var(--b-2);
  border-radius:var(--r-pill);color:var(--tx-1);font-size:.9rem;
  outline:none;transition:all var(--t-mid);
}
.th-busca-input::placeholder{color:var(--tx-3)}
.th-busca-input:focus{border-color:var(--verde);background:rgba(var(--verde-r),.04)}
.th-busca-btn{white-space:nowrap;flex-shrink:0}

/* Filtros de categoria */
.th-blog-filtros-wrap{
  background:var(--bg-1);border-bottom:1px solid var(--b-1);
  padding:.85rem 0;position:sticky;top:70px;z-index:90;
}
.th-blog-filtros{
  display:flex;gap:.5rem;overflow-x:auto;
  scrollbar-width:none;-ms-overflow-style:none;
  padding-bottom:2px;
}
.th-blog-filtros::-webkit-scrollbar{display:none}
.th-filtro-tag{
  display:inline-flex;align-items:center;gap:.35rem;
  padding:.35rem .9rem;border-radius:var(--r-pill);
  font-size:.8rem;font-weight:500;white-space:nowrap;
  background:var(--bg-card);border:1px solid var(--b-1);
  color:var(--tx-2);transition:all var(--t-fast);text-decoration:none;
}
.th-filtro-tag:hover,.th-filtro-tag.ativo{
  background:rgba(var(--verde-r),.12);
  border-color:rgba(var(--verde-r),.4);color:var(--verde);
}
.th-filtro-count{
  background:rgba(var(--verde-r),.15);color:var(--verde);
  font-size:.68rem;padding:.05rem .4rem;border-radius:var(--r-pill);
}

/* Busca — info resultado */
.th-busca-info{font-size:.88rem;color:var(--tx-2);margin-bottom:2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.th-limpar-busca{color:var(--coral);font-size:.8rem;font-weight:600;border:1px solid rgba(var(--coral-r),.3);padding:.2rem .65rem;border-radius:var(--r-pill);transition:all var(--t-fast)}
.th-limpar-busca:hover{background:rgba(var(--coral-r),.1);color:var(--coral)}

/* Layout blog com sidebar */
.th-blog-layout{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start}
.th-blog-main{}

/* Post em destaque */
.th-post-destaque{
  display:grid;grid-template-columns:1.2fr 1fr;gap:0;
  background:var(--bg-card);border:1px solid var(--b-1);
  border-radius:var(--r-lg);overflow:hidden;
  margin-bottom:2.5rem;
  transition:all var(--t-mid);
}
.th-post-destaque:hover{border-color:var(--b-2);box-shadow:var(--sh-lg)}
.th-dest-thumb{position:relative;overflow:hidden;aspect-ratio:16/10}
.th-dest-thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-slow)}
.th-post-destaque:hover .th-dest-thumb img{transform:scale(1.04)}
.th-dest-badge{
  position:absolute;top:1rem;left:1rem;
  background:linear-gradient(135deg,var(--amber),#e08e00);
  color:var(--bg-0);font-size:.68rem;font-weight:700;
  padding:.22rem .7rem;border-radius:var(--r-pill);
}
.th-dest-body{padding:2rem;display:flex;flex-direction:column;justify-content:center}
.th-dest-body .th-blog-cat{margin-bottom:.5rem}
.th-dest-body h2{font-size:1.4rem;margin-bottom:.65rem;line-height:1.25}
.th-dest-body h2 a{color:var(--branco);text-decoration:none;transition:color var(--t-fast)}
.th-dest-body h2 a:hover{color:var(--verde)}
.th-dest-body p{font-size:.88rem;-webkit-line-clamp:3;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}

/* Grade de posts */
.th-posts-grade{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2.5rem}

/* Card badge de categoria */
.th-card-cat-badge{
  position:absolute;bottom:.75rem;left:.75rem;
  background:rgba(8,12,24,.85);backdrop-filter:blur(8px);
  color:var(--verde);font-size:.68rem;font-weight:600;
  padding:.18rem .6rem;border-radius:var(--r-pill);
  text-decoration:none;border:1px solid rgba(var(--verde-r),.25);
}
.th-blog-thumb{position:relative}

/* Thumbnail placeholder */
.th-thumb-placeholder{
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--bg-1),var(--b-1));
  aspect-ratio:16/9;
}
.th-thumb-placeholder span{font-size:2.5rem;opacity:.4}

/* Meta do post */
.th-post-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.76rem;color:var(--tx-3);margin-top:.6rem}
.th-post-meta time{color:var(--tx-3)}

/* Link "ler mais" */
.th-ler-mais{
  display:inline-flex;align-items:center;gap:.4rem;
  font-size:.82rem;font-weight:600;color:var(--verde);
  margin-top:.9rem;text-decoration:none;
  transition:gap var(--t-fast),color var(--t-fast);
}
.th-ler-mais:hover{color:var(--branco);gap:.65rem}

/* Paginação */
.th-paginacao{margin-top:1rem}
.th-paginacao .page-numbers{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;justify-content:center}
.th-paginacao .page-numbers li a,
.th-paginacao .page-numbers li span{
  display:flex;align-items:center;justify-content:center;
  min-width:40px;height:40px;border-radius:var(--r-sm);
  font-size:.85rem;font-weight:500;
  background:var(--bg-card);border:1px solid var(--b-1);
  color:var(--tx-2);text-decoration:none;transition:all var(--t-fast);
}
.th-paginacao .page-numbers li a:hover{border-color:var(--verde);color:var(--verde)}
.th-paginacao .page-numbers li span.current{background:rgba(var(--verde-r),.15);border-color:var(--verde);color:var(--verde)}

/* Sem posts */
.th-sem-posts{text-align:center;padding:4rem 0}
.th-sem-emoji{font-size:3rem;margin-bottom:1rem}

/* ── SIDEBAR ── */
.th-blog-sidebar{display:flex;flex-direction:column;gap:1.25rem}
.th-sidebar-sticky{position:sticky;top:100px}
.th-widget{background:var(--bg-card);border:1px solid var(--b-1);border-radius:var(--r-lg);padding:1.4rem}
.th-widget-titulo{font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--tx-3);margin-bottom:.85rem;font-family:var(--f-mono);display:block}

/* Busca sidebar */
.th-widget-busca{display:flex;align-items:center;gap:.4rem;background:var(--bg-0);border:1px solid var(--b-2);border-radius:var(--r-md);overflow:hidden;padding:.1rem .1rem .1rem .85rem}
.th-widget-busca input{flex:1;background:transparent;border:none;outline:none;color:var(--tx-1);font-size:.85rem;padding:.45rem 0}
.th-widget-busca button{background:rgba(var(--verde-r),.1);border:none;border-radius:var(--r-sm);padding:.5rem .7rem;cursor:pointer;color:var(--verde);transition:background var(--t-fast)}
.th-widget-busca button:hover{background:rgba(var(--verde-r),.2)}

/* Cats widget */
.th-widget-cats{display:flex;flex-direction:column;gap:.25rem}
.th-widget-cats li a{display:flex;align-items:center;justify-content:space-between;padding:.5rem .65rem;border-radius:var(--r-sm);color:var(--tx-2);font-size:.85rem;text-decoration:none;transition:all var(--t-fast)}
.th-widget-cats li a:hover,.th-widget-cats li.ativo a{background:rgba(var(--verde-r),.08);color:var(--verde)}
.th-cat-count{background:rgba(var(--verde-r),.1);color:var(--verde);font-size:.68rem;padding:.05rem .45rem;border-radius:var(--r-pill)}

/* Posts recentes */
.th-widget-recentes{display:flex;flex-direction:column;gap:.75rem}
.th-widget-recentes li{display:flex;align-items:center;gap:.65rem}
.th-rec-thumb{width:56px;height:56px;border-radius:var(--r-sm);overflow:hidden;flex-shrink:0;display:block}
.th-rec-thumb img{width:100%;height:100%;object-fit:cover}
.th-rec-info{display:flex;flex-direction:column;gap:.2rem}
.th-rec-titulo{font-size:.83rem;font-weight:500;color:var(--tx-1);text-decoration:none;line-height:1.35;transition:color var(--t-fast);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.th-rec-titulo:hover{color:var(--verde)}
.th-rec-data{font-size:.72rem;color:var(--tx-3)}

/* Tags */
.th-widget-tags{display:flex;flex-wrap:wrap;gap:.4rem}
.th-tag-link{display:inline-block;padding:.25rem .65rem;background:rgba(var(--azul-r),.08);border:1px solid rgba(var(--azul-r),.18);border-radius:var(--r-pill);font-size:.75rem;color:var(--azul);text-decoration:none;transition:all var(--t-fast)}
.th-tag-link:hover{background:rgba(var(--azul-r),.18);color:var(--branco)}

/* CTA widget */
.th-widget-cta{text-align:center;background:linear-gradient(135deg,rgba(var(--verde-r),.07),rgba(var(--azul-r),.05))}
.th-widget-cta-emoji{font-size:2rem;margin-bottom:.6rem}
.th-widget-cta h3{font-size:.97rem;margin-bottom:.35rem}
.th-widget-cta p{font-size:.8rem;margin-bottom:1rem}

/* Autor widget */
.th-widget-autor{display:flex;gap:.85rem;align-items:flex-start}
.th-autor-avatar{border-radius:50%;border:2px solid var(--b-2)}
.th-autor-avatar-lg{border-radius:50%;border:2px solid var(--b-2);flex-shrink:0}

/* ── SINGLE POST ── */

/* Barra de progresso */
.th-progresso-wrap{position:fixed;top:0;left:0;right:0;height:3px;background:var(--b-1);z-index:2000}
.th-progresso-bar{height:100%;background:linear-gradient(90deg,var(--verde),var(--azul));width:0;transition:width .1s linear}

/* Hero do post */
.th-post-hero{padding:8rem 0 3rem;position:relative;overflow:hidden;background:var(--bg-1)}
.th-post-hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 0%,rgba(var(--verde-r),.07),transparent 60%)}
.th-post-hero-inner{position:relative;z-index:1;max-width:760px}
.th-post-titulo{font-size:clamp(1.7rem,4vw,2.8rem);margin:.4rem 0 1rem;line-height:1.2}
.th-post-hero-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:.5rem}
.th-meta-autor{display:flex;align-items:center;gap:.65rem}
.th-meta-nome{font-weight:600;font-size:.88rem;color:var(--branco)}
.th-meta-sep{color:var(--tx-3)}

/* Compartilhar */
.th-compartilhar{display:flex;align-items:center;gap:.5rem}
.th-comp-label{font-size:.75rem;color:var(--tx-3)}
.th-comp-btn{width:32px;height:32px;border-radius:var(--r-sm);background:var(--bg-card);border:1px solid var(--b-1);display:flex;align-items:center;justify-content:center;font-size:.85rem;transition:all var(--t-fast);text-decoration:none}
.th-comp-btn:hover{border-color:var(--verde);background:rgba(var(--verde-r),.1)}

/* Breadcrumb */
.th-breadcrumb{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--tx-3);margin-bottom:.85rem}
.th-breadcrumb a{color:var(--tx-3);text-decoration:none;transition:color var(--t-fast)}
.th-breadcrumb a:hover{color:var(--verde)}

/* Thumbnail principal */
.th-post-thumb-full{margin-bottom:0}
.th-post-thumb-full .th-container{padding:0 2rem}
.th-post-img-principal{width:100%;max-height:480px;object-fit:cover;border-radius:0 0 var(--r-lg) var(--r-lg)}

/* Layout do post */
.th-post-grid{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start}

/* Conteúdo do post */
.th-post-texto{
  font-size:1rem;line-height:1.85;color:var(--tx-1);
}
.th-post-texto h2{font-size:1.65rem;margin:2.2rem 0 .8rem;padding-top:.5rem;border-top:1px solid var(--b-1)}
.th-post-texto h3{font-size:1.3rem;margin:1.8rem 0 .7rem;color:var(--verde)}
.th-post-texto h4{font-size:1.1rem;margin:1.5rem 0 .6rem}
.th-post-texto p{margin-bottom:1.15rem;color:var(--tx-1)}
.th-post-texto a{color:var(--verde);text-decoration:underline;text-underline-offset:2px}
.th-post-texto a:hover{color:var(--branco)}
.th-post-texto ul,.th-post-texto ol{padding-left:1.5rem;margin-bottom:1.15rem}
.th-post-texto li{margin-bottom:.4rem;color:var(--tx-1)}
.th-post-texto ul li{list-style:disc}
.th-post-texto ol li{list-style:decimal}
.th-post-texto blockquote{border-left:3px solid var(--verde);padding:.8rem 1.25rem;background:rgba(var(--verde-r),.05);border-radius:0 var(--r-md) var(--r-md) 0;margin:1.5rem 0}
.th-post-texto blockquote p{font-style:italic;margin:0;color:var(--tx-1)}
.th-post-texto code{background:rgba(var(--azul-r),.1);color:var(--azul);padding:.1rem .4rem;border-radius:4px;font-family:var(--f-mono);font-size:.85em}
.th-post-texto pre{background:var(--bg-1);border:1px solid var(--b-1);border-radius:var(--r-md);padding:1.25rem;overflow-x:auto;margin-bottom:1.25rem}
.th-post-texto pre code{background:none;color:var(--verde);padding:0}
.th-post-texto img{border-radius:var(--r-md);margin:1.25rem 0;max-width:100%}
.th-post-texto table{width:100%;border-collapse:collapse;margin-bottom:1.25rem;font-size:.88rem}
.th-post-texto th{background:var(--bg-card);padding:.65rem .85rem;text-align:left;border:1px solid var(--b-1);color:var(--branco)}
.th-post-texto td{padding:.65rem .85rem;border:1px solid var(--b-1);color:var(--tx-2)}
.th-post-texto tr:nth-child(even) td{background:rgba(255,255,255,.02)}

/* Tags do post */
.th-post-tags{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--b-1)}
.th-tags-label{font-size:.78rem;color:var(--tx-3);font-weight:600;margin-right:.25rem}

/* CTA no post */
.th-post-cta-box{
  display:flex;align-items:flex-start;gap:1rem;
  background:linear-gradient(135deg,rgba(var(--verde-r),.07),rgba(var(--azul-r),.05));
  border:1px solid rgba(var(--verde-r),.25);
  border-radius:var(--r-lg);padding:1.5rem;margin:2rem 0;
}
.th-post-cta-icon{font-size:2rem;flex-shrink:0;margin-top:2px}
.th-post-cta-box h4{font-size:1.05rem;margin-bottom:.35rem}
.th-post-cta-box p{font-size:.87rem;margin:0}

/* Navegação prev/next */
.th-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--b-1)}
.th-nav-post{display:flex;flex-direction:column;gap:.25rem;padding:1rem;background:var(--bg-card);border:1px solid var(--b-1);border-radius:var(--r-md);text-decoration:none;transition:all var(--t-mid)}
.th-nav-post:hover{border-color:var(--verde);background:rgba(var(--verde-r),.05)}
.th-nav-dir{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--verde);font-family:var(--f-mono)}
.th-nav-titulo{font-size:.88rem;font-weight:500;color:var(--tx-1);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.th-nav-next{text-align:right}

/* TOC */
#th-toc{display:flex;flex-direction:column;gap:.25rem}
#th-toc a{font-size:.82rem;color:var(--tx-2);text-decoration:none;padding:.3rem .5rem;border-radius:var(--r-sm);border-left:2px solid var(--b-1);display:block;transition:all var(--t-fast)}
#th-toc a:hover,#th-toc a.ativo{color:var(--verde);border-left-color:var(--verde);background:rgba(var(--verde-r),.06)}
#th-toc .toc-h3{padding-left:1.2rem;font-size:.78rem}

/* ── CONTATO ── */
.th-contato-page{padding-top:3rem}
.th-contato-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:3.5rem;align-items:start}

/* Seletor de plano */
.th-plano-selector{margin-bottom:1.75rem}
.th-selector-label{font-size:.82rem;font-weight:600;color:var(--tx-2);margin-bottom:.75rem}
.th-plano-opcoes{display:flex;gap:.5rem;flex-wrap:wrap}
.th-plano-opcao{
  display:flex;flex-direction:column;align-items:center;
  padding:.7rem 1rem;border-radius:var(--r-md);
  background:var(--bg-card);border:1px solid var(--b-1);
  cursor:pointer;transition:all var(--t-mid);
  min-width:100px;text-align:center;flex:1;
}
.th-plano-opcao input{display:none}
.th-plano-opcao .th-opcao-nome{font-size:.85rem;font-weight:600;color:var(--tx-2);transition:color var(--t-fast)}
.th-plano-opcao .th-opcao-preco{font-size:.72rem;color:var(--tx-3);margin-top:.15rem;font-family:var(--f-mono)}
.th-plano-opcao:has(input:checked),
.th-plano-opcao.selecionado{
  background:rgba(var(--verde-r),.1);
  border-color:rgba(var(--verde-r),.45);
}
.th-plano-opcao:has(input:checked) .th-opcao-nome,
.th-plano-opcao.selecionado .th-opcao-nome{color:var(--verde)}
.th-plano-opcao:has(input:checked) .th-opcao-preco,
.th-plano-opcao.selecionado .th-opcao-preco{color:var(--verde)}

/* Formulário */
.th-form{display:flex;flex-direction:column;gap:0}
.th-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.th-campo{display:flex;flex-direction:column;gap:.35rem}
.th-campo-full{grid-column:1/-1}
.th-campo-label{font-size:.82rem;font-weight:600;color:var(--tx-1)}
.th-input{
  background:rgba(255,255,255,.04);border:1px solid var(--b-2);
  border-radius:var(--r-md);padding:.75rem 1rem;
  color:var(--tx-1);font-size:.9rem;outline:none;
  transition:all var(--t-mid);width:100%;
}
.th-input::placeholder{color:var(--tx-3)}
.th-input:focus{border-color:var(--verde);background:rgba(var(--verde-r),.04);box-shadow:0 0 0 3px rgba(var(--verde-r),.1)}
.th-input.erro{border-color:var(--coral);box-shadow:0 0 0 3px rgba(var(--coral-r),.1)}
.th-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%234a5878' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}
.th-textarea{resize:vertical;min-height:130px}
.th-campo-erro{font-size:.76rem;color:var(--coral);min-height:1rem;display:block}

.th-form-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}
.th-form-lgpd{font-size:.76rem;color:var(--tx-3);max-width:360px;margin:0}

/* Status do formulário */
.th-form-status{padding:1rem 1.25rem;border-radius:var(--r-md);margin-bottom:1.25rem;font-size:.9rem}
.th-form-status.sucesso{background:rgba(var(--verde-r),.1);border:1px solid rgba(var(--verde-r),.3);color:var(--verde)}
.th-form-status.erro-geral{background:rgba(var(--coral-r),.1);border:1px solid rgba(var(--coral-r),.3);color:var(--coral)}

/* Spinner */
@keyframes th-spin-anim{to{transform:rotate(360deg)}}
.th-spin{animation:th-spin-anim .8s linear infinite}

/* Info cards de contato */
.th-contato-info{display:flex;flex-direction:column;gap:1.25rem}
.th-info-card{background:var(--bg-card);border:1px solid var(--b-1);border-radius:var(--r-lg);padding:1.5rem}
.th-info-card.th-info-wpp{background:linear-gradient(135deg,rgba(37,211,102,.08),rgba(37,211,102,.03));border-color:rgba(37,211,102,.3)}
.th-info-emoji{font-size:1.8rem;margin-bottom:.6rem}
.th-info-card h3{font-size:1rem;margin-bottom:.35rem}
.th-info-card p{font-size:.85rem;margin-bottom:.9rem}
.th-info-card .th-btn{margin-top:.25rem}

/* Horário */
.th-info-horario{background:var(--bg-1)}
.th-horario-lista{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}
.th-horario-item{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;padding:.4rem 0;border-bottom:1px solid var(--b-1)}
.th-horario-item:last-child{border-bottom:none}
.th-horario-item span{color:var(--tx-2)}
.th-horario-item strong{color:var(--branco)}

/* ── RESPONSIVO BLOG + CONTATO ── */
@media(max-width:1024px){
  .th-blog-layout{grid-template-columns:1fr}
  .th-blog-sidebar{display:none}
  .th-post-grid{grid-template-columns:1fr}
  .th-sidebar-sticky{display:none}
  .th-contato-grid{grid-template-columns:1fr}
  .th-post-destaque{grid-template-columns:1fr}
  .th-dest-thumb{aspect-ratio:16/9}
}
@media(max-width:640px){
  .th-posts-grade{grid-template-columns:1fr}
  .th-post-nav{grid-template-columns:1fr}
  .th-form-grid{grid-template-columns:1fr}
  .th-plano-opcoes{grid-template-columns:1fr 1fr}
  .th-form-footer{flex-direction:column;align-items:stretch}
  .th-form-footer .th-btn{justify-content:center}
  .th-post-hero-meta{flex-direction:column;align-items:flex-start}
}
