/*
Theme Name: Tiago Neves Child
Theme URI: https://tiagoneves.net/
Description: Tema filho com novo visual dark/light para o blog do Tiago Neves - DBA, Performance, SQL Server e PostgreSQL. v1.2 com integração à Biblioteca de Mídia.
Author: Tiago Neves
Author URI: https://tiagoneves.net/
Template: publishable-mag
Version: 1.2.0
Text Domain: tiagoneves-child
*/
/* ============================================================
   TIAGO NEVES - BLOG REDESIGN
   Cole este CSS em: Aparência > Personalizar > CSS Adicional
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600&family=Sora:wght@300;400;600;700&display=swap');

/* RESET DENTRO DO CONTAINER */
.tn-blog *{box-sizing:border-box;margin:0;padding:0;}
.tn-blog{font-family:'Sora',sans-serif;border-radius:12px;overflow:hidden;transition:background .35s,color .35s;max-width:1200px;margin:0 auto;}
.tn-blog.dark{background:#0a0e1a;color:#c9d1e0;}
.tn-blog.light{background:#f5f7fc;color:#2a3550;}

/* HEADER */
.tn-hdr{display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 1.5rem;position:relative;}
.tn-blog.dark .tn-hdr{background:#0d1220;border-bottom:1px solid #1a2540;}
.tn-blog.light .tn-hdr{background:#fff;border-bottom:1px solid #dde3f0;}
.tn-hdr::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#1a6fff 0%,#00d4a8 50%,transparent 100%);}

.tn-logo{display:flex;align-items:center;gap:10px;cursor:pointer;text-decoration:none;}
.tn-logo-icon{width:32px;height:32px;background:#1a6fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-size:13px;font-weight:600;color:#fff;}
.tn-logo-name{font-size:14px;font-weight:700;line-height:1.1;}
.tn-blog.dark .tn-logo-name{color:#e8edf5;}
.tn-blog.light .tn-logo-name{color:#0f1e3c;}
.tn-logo-sub{font-size:10px;font-family:'JetBrains Mono',monospace;letter-spacing:.08em;line-height:1.1;}
.tn-blog.dark .tn-logo-sub{color:#4a7ab5;}
.tn-blog.light .tn-logo-sub{color:#7a96c2;}

.tn-nav{display:flex;gap:1.2rem;align-items:center;list-style:none;}
.tn-nav a{font-size:11px;font-weight:400;text-decoration:none;letter-spacing:.06em;text-transform:uppercase;transition:color .2s;cursor:pointer;}
.tn-blog.dark .tn-nav a{color:#6a7fa8;}
.tn-blog.light .tn-nav a{color:#8a9cc0;}
.tn-nav a:hover,.tn-nav a.active,.tn-nav .current-menu-item a{color:#1a6fff;}

/* THEME TOGGLE */
.tn-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;padding:5px 10px;border-radius:20px;transition:background .2s;border:none;}
.tn-blog.dark .tn-toggle{background:#1a2540;}
.tn-blog.light .tn-toggle{background:#eef1f8;}
.tn-toggle-label{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;}
.tn-blog.dark .tn-toggle-label{color:#4a7ab5;}
.tn-blog.light .tn-toggle-label{color:#7a96c2;}
.tn-toggle-track{width:36px;height:20px;border-radius:10px;position:relative;transition:background .3s;}
.tn-blog.dark .tn-toggle-track{background:#1a6fff;}
.tn-blog.light .tn-toggle-track{background:#dde3f0;}
.tn-toggle-thumb{position:absolute;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:left .3s;}
.tn-blog.dark .tn-toggle-thumb{left:19px;}
.tn-blog.light .tn-toggle-thumb{left:3px;}

/* HERO */
.tn-hero{padding:2rem 1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap;}
.tn-blog.dark .tn-hero{background:#0d1220;border-bottom:1px solid #1a2540;}
.tn-blog.light .tn-hero{background:#fff;border-bottom:1px solid #dde3f0;}
.tn-hero-label{font-family:'JetBrains Mono',monospace;font-size:10px;color:#00d4a8;letter-spacing:.15em;text-transform:uppercase;margin-bottom:6px;}
.tn-hero-title{font-size:22px;font-weight:700;line-height:1.2;max-width:400px;}
.tn-blog.dark .tn-hero-title{color:#e8edf5;}
.tn-blog.light .tn-hero-title{color:#0f1e3c;}
.tn-hero-title span{color:#1a6fff;}
.tn-hero-desc{font-size:12px;margin-top:8px;max-width:380px;line-height:1.6;}
.tn-blog.dark .tn-hero-desc{color:#5a7099;}
.tn-blog.light .tn-hero-desc{color:#6a82a8;}

.tn-stats{display:flex;gap:1.5rem;flex-shrink:0;}
.tn-stat{text-align:center;}
.tn-stat-num{font-family:'JetBrains Mono',monospace;font-size:24px;font-weight:600;color:#1a6fff;line-height:1;}
.tn-stat-label{font-family:'JetBrains Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.1em;margin-top:4px;}
.tn-blog.dark .tn-stat-label{color:#3d5580;}
.tn-blog.light .tn-stat-label{color:#9aaccc;}

/* CONTENT LAYOUT */
.tn-content{display:grid;grid-template-columns:1fr 260px;min-height:500px;}
.tn-posts-col{padding:1.5rem 2rem;}
.tn-blog.dark .tn-posts-col{border-right:1px solid #1a2540;}
.tn-blog.light .tn-posts-col{border-right:1px solid #dde3f0;}

.tn-sec-hdr{display:flex;align-items:center;gap:8px;margin-bottom:1rem;padding-bottom:.6rem;}
.tn-blog.dark .tn-sec-hdr{border-bottom:1px solid #1a2540;}
.tn-blog.light .tn-sec-hdr{border-bottom:1px solid #dde3f0;}
.tn-sec-tag{font-family:'JetBrains Mono',monospace;font-size:10px;color:#00d4a8;letter-spacing:.12em;text-transform:uppercase;}
.tn-sec-line{flex:1;height:1px;}
.tn-blog.dark .tn-sec-line{background:#1a2540;}
.tn-blog.light .tn-sec-line{background:#dde3f0;}

/* POSTS */
.tn-post{padding:1.25rem 0;display:grid;grid-template-columns:1fr auto;gap:1rem;cursor:pointer;transition:padding .2s;text-decoration:none;color:inherit;}
.tn-post:hover{padding-left:6px;}
.tn-blog.dark .tn-post{border-bottom:1px solid #141b2e;}
.tn-blog.light .tn-post{border-bottom:1px solid #eef1f8;}
.tn-post:last-child{border-bottom:none;}
.tn-pmeta{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap;}
.tn-ptag{font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:3px 7px;border-radius:3px;}
.tn-blog.dark .tn-ptag{background:#0f2040;color:#1a6fff;border:1px solid #1a3060;}
.tn-blog.light .tn-ptag{background:#e6f0ff;color:#1a6fff;border:1px solid #b5d0ff;}
.tn-pdate{font-family:'JetBrains Mono',monospace;font-size:10px;}
.tn-blog.dark .tn-pdate{color:#3d5580;}
.tn-blog.light .tn-pdate{color:#9aaccc;}
.tn-ptitle{font-size:14px;font-weight:600;line-height:1.3;margin-bottom:5px;}
.tn-blog.dark .tn-ptitle{color:#d0daf0;}
.tn-blog.light .tn-ptitle{color:#1a2a4a;}
.tn-pexcerpt{font-size:12px;line-height:1.6;}
.tn-blog.dark .tn-pexcerpt{color:#4a6080;}
.tn-blog.light .tn-pexcerpt{color:#8a9cba;}
.tn-parrow{display:flex;align-items:flex-start;padding-top:2px;font-size:15px;transition:color .2s;}
.tn-blog.dark .tn-parrow{color:#1a3060;}
.tn-blog.light .tn-parrow{color:#c0cce0;}
.tn-post:hover .tn-parrow{color:#1a6fff;}

/* SIDEBAR */
.tn-sidebar{padding:1.5rem 1rem;overflow:hidden;transition:background .35s;}
.tn-blog.dark .tn-sidebar{background:#080c18;}
.tn-blog.light .tn-sidebar{background:#f0f3fa;}
.tn-sb-block{margin-bottom:1.75rem;}
.tn-sb-title{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.75rem;padding-bottom:.5rem;}
.tn-blog.dark .tn-sb-title{color:#3d5580;border-bottom:1px solid #141b2e;}
.tn-blog.light .tn-sb-title{color:#9aaccc;border-bottom:1px solid #dde3f0;}

/* CERTIFICATIONS */
.tn-certs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.tn-cert{width:100%;aspect-ratio:1;object-fit:contain;border-radius:6px;transition:transform .2s;cursor:pointer;padding:3px;}
.tn-cert:hover{transform:scale(1.08);}
.tn-blog.dark .tn-cert{background:#0d1628;}
.tn-blog.light .tn-cert{background:#fff;}

/* DATA PLUS LOGO */
.tn-dataplus{display:flex;align-items:center;justify-content:center;padding:12px;border-radius:8px;cursor:pointer;transition:all .2s;text-decoration:none;}
.tn-blog.dark .tn-dataplus{background:#0d1628;border:1px solid #1a2540;}
.tn-blog.light .tn-dataplus{background:#fff;border:1px solid #dde3f0;}
.tn-dataplus:hover{border-color:#1a6fff;}
.tn-dataplus img{width:100%;object-fit:contain;max-height:60px;}
.tn-blog.light .tn-dataplus img{filter:brightness(0) saturate(100%) invert(35%) sepia(90%) saturate(500%) hue-rotate(195deg);}

/* NEWSLETTER */
.tn-newsletter{border-radius:8px;padding:12px;}
.tn-blog.dark .tn-newsletter{background:#0d1628;border:1px solid #1a2540;}
.tn-blog.light .tn-newsletter{background:#fff;border:1px solid #dde3f0;}
.tn-newsletter-text{font-size:11px;line-height:1.5;margin-bottom:10px;}
.tn-blog.dark .tn-newsletter-text{color:#4a6a90;}
.tn-blog.light .tn-newsletter-text{color:#6a82a8;}
.tn-newsletter input{width:100%;font-family:'JetBrains Mono',monospace;font-size:11px;padding:7px 10px;border-radius:5px;outline:none;margin-bottom:8px;transition:border-color .2s;}
.tn-blog.dark .tn-newsletter input{background:#060a14;border:1px solid #1a2540;color:#c9d1e0;}
.tn-blog.light .tn-newsletter input{background:#f5f7fc;border:1px solid #dde3f0;color:#1a2a4a;}
.tn-newsletter input:focus{border-color:#1a6fff;}
.tn-newsletter button{width:100%;font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:8px;border-radius:5px;cursor:pointer;border:none;background:#1a6fff;color:#fff;transition:background .2s;}
.tn-newsletter button:hover{background:#1558dd;}

/* TAG CLOUD */
.tn-tags{display:flex;flex-wrap:wrap;gap:6px;}
.tn-tag{font-family:'JetBrains Mono',monospace;font-size:10px;padding:4px 8px;border-radius:3px;cursor:pointer;transition:all .15s;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;}
.tn-blog.dark .tn-tag{background:#0d1628;color:#4a6a90;border:1px solid #1a2540;}
.tn-blog.light .tn-tag{background:#e8edf8;color:#6a82a8;border:1px solid #cdd5e8;}
.tn-blog.dark .tn-tag:hover{background:#0f2040;color:#1a6fff;border-color:#1a3060;}
.tn-blog.light .tn-tag:hover{background:#d8e4ff;color:#1a6fff;border-color:#b5c8ff;}

/* AUTHOR CARD */
.tn-author{display:flex;align-items:center;gap:10px;margin-bottom:10px;}
.tn-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#1a6fff,#00d4a8);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:#fff;flex-shrink:0;}
.tn-aname{font-size:13px;font-weight:600;line-height:1.2;}
.tn-blog.dark .tn-aname{color:#c9d1e0;}
.tn-blog.light .tn-aname{color:#1a2a4a;}
.tn-arole{font-family:'JetBrains Mono',monospace;font-size:9px;text-transform:uppercase;letter-spacing:.08em;}
.tn-blog.dark .tn-arole{color:#3d5580;}
.tn-blog.light .tn-arole{color:#9aaccc;}
.tn-abio{font-size:11px;line-height:1.6;margin-top:8px;}
.tn-blog.dark .tn-abio{color:#3d5580;}
.tn-blog.light .tn-abio{color:#8a9cba;}
.tn-social{display:flex;gap:6px;margin-top:10px;}
.tn-social a{font-family:'JetBrains Mono',monospace;font-size:9px;padding:4px 8px;border-radius:3px;cursor:pointer;transition:all .15s;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;}
.tn-blog.dark .tn-social a{border:1px solid #1a2540;color:#3d5580;}
.tn-blog.light .tn-social a{border:1px solid #dde3f0;color:#8a9cba;}
.tn-blog.dark .tn-social a:hover{border-color:#1a3060;color:#1a6fff;}
.tn-blog.light .tn-social a:hover{border-color:#b5c8ff;color:#1a6fff;}

/* PAGINATION */
.tn-pag{display:flex;justify-content:center;gap:6px;padding:1.5rem;}
.tn-blog.dark .tn-pag{border-top:1px solid #1a2540;}
.tn-blog.light .tn-pag{border-top:1px solid #dde3f0;}
.tn-pag a,.tn-pag span{font-family:'JetBrains Mono',monospace;font-size:11px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;cursor:pointer;text-decoration:none;transition:all .15s;}
.tn-blog.dark .tn-pag a,.tn-blog.dark .tn-pag span{border:1px solid #1a2540;color:#3d5580;}
.tn-blog.light .tn-pag a,.tn-blog.light .tn-pag span{border:1px solid #dde3f0;color:#9aaccc;}
.tn-blog.dark .tn-pag a:hover,.tn-blog.dark .tn-pag .current{background:#0f2040;color:#1a6fff;border-color:#1a3060;}
.tn-blog.light .tn-pag a:hover,.tn-blog.light .tn-pag .current{background:#e6f0ff;color:#1a6fff;border-color:#b5c8ff;}

/* INNER PAGES (Serviços, Sobre, Contato) */
.tn-inner{padding:2rem 1.5rem;max-width:860px;}
.tn-ip-label{font-family:'JetBrains Mono',monospace;font-size:10px;color:#00d4a8;letter-spacing:.15em;text-transform:uppercase;margin-bottom:8px;}
.tn-ip-title{font-size:26px;font-weight:700;line-height:1.2;margin-bottom:1rem;}
.tn-blog.dark .tn-ip-title{color:#e8edf5;}
.tn-blog.light .tn-ip-title{color:#0f1e3c;}
.tn-ip-title span{color:#1a6fff;}
.tn-ip-desc{font-size:14px;line-height:1.8;margin-bottom:1.5rem;}
.tn-blog.dark .tn-ip-desc{color:#6a82a8;}
.tn-blog.light .tn-ip-desc{color:#4a6080;}

/* SERVIÇOS */
.tn-srv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:2rem;}
.tn-srv{padding:1.25rem;border-radius:8px;transition:border-color .2s;}
.tn-blog.dark .tn-srv{background:#0d1220;border:1px solid #1a2540;}
.tn-blog.light .tn-srv{background:#fff;border:1px solid #dde3f0;}
.tn-srv:hover{border-color:#1a6fff;}
.tn-srv-icon{font-size:22px;color:#1a6fff;margin-bottom:10px;}
.tn-srv-title{font-size:14px;font-weight:600;margin-bottom:6px;}
.tn-blog.dark .tn-srv-title{color:#d0daf0;}
.tn-blog.light .tn-srv-title{color:#1a2a4a;}
.tn-srv-desc{font-size:12px;line-height:1.6;}
.tn-blog.dark .tn-srv-desc{color:#4a6080;}
.tn-blog.light .tn-srv-desc{color:#8a9cba;}

/* SOBRE */
.tn-about{display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:start;margin-bottom:2rem;}
.tn-avatar-big{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#1a6fff,#00d4a8);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:22px;color:#fff;flex-shrink:0;}
.tn-about-name{font-size:22px;font-weight:700;margin-bottom:4px;}
.tn-blog.dark .tn-about-name{color:#e8edf5;}
.tn-blog.light .tn-about-name{color:#0f1e3c;}
.tn-about-role{font-family:'JetBrains Mono',monospace;font-size:11px;color:#1a6fff;margin-bottom:12px;}
.tn-cert-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:1rem;}
.tn-cert-sm{width:64px;height:64px;object-fit:contain;border-radius:6px;padding:4px;}
.tn-blog.dark .tn-cert-sm{background:#0d1628;}
.tn-blog.light .tn-cert-sm{background:#fff;}

/* CONTATO */
.tn-contact-note{font-size:13px;line-height:1.7;margin-bottom:1.5rem;}
.tn-blog.dark .tn-contact-note{color:#6a82a8;}
.tn-blog.light .tn-contact-note{color:#4a6080;}
.tn-leadster{padding:2rem 1.5rem;border-radius:8px;text-align:center;}
.tn-blog.dark .tn-leadster{background:#0d1220;border:1px solid #1a2540;}
.tn-blog.light .tn-leadster{background:#fff;border:1px solid #dde3f0;}
.tn-leadster-badge{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;border-radius:3px;margin-bottom:14px;display:inline-block;}
.tn-blog.dark .tn-leadster-badge{background:#0f2040;color:#1a6fff;border:1px solid #1a3060;}
.tn-blog.light .tn-leadster-badge{background:#e6f0ff;color:#1a6fff;border:1px solid #b5d0ff;}
.tn-leadster-title{font-size:16px;font-weight:600;margin-bottom:8px;}
.tn-blog.dark .tn-leadster-title{color:#d0daf0;}
.tn-blog.light .tn-leadster-title{color:#1a2a4a;}
.tn-leadster-desc{font-size:12px;line-height:1.6;margin-bottom:18px;max-width:480px;margin-left:auto;margin-right:auto;}
.tn-blog.dark .tn-leadster-desc{color:#4a6080;}
.tn-blog.light .tn-leadster-desc{color:#8a9cba;}
.tn-leadster-btn{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:12px 24px;border-radius:6px;border:none;background:#1a6fff;color:#fff;cursor:pointer;transition:background .2s;text-decoration:none;display:inline-block;}
.tn-leadster-btn:hover{background:#1558dd;color:#fff;}

.tn-contact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-top:1.5rem;}
.tn-ci{padding:.9rem;border-radius:6px;display:flex;align-items:center;gap:10px;text-decoration:none;}
.tn-blog.dark .tn-ci{background:#0d1220;border:1px solid #1a2540;}
.tn-blog.light .tn-ci{background:#fff;border:1px solid #dde3f0;}
.tn-ci:hover{border-color:#1a6fff;}
.tn-ci-icon{font-size:18px;color:#1a6fff;}
.tn-ci-label{font-size:10px;line-height:1.3;}
.tn-blog.dark .tn-ci-label{color:#6a82a8;}
.tn-blog.light .tn-ci-label{color:#8a9cba;}
.tn-ci-val{font-family:'JetBrains Mono',monospace;font-size:11px;color:#1a6fff;}

/* RESPONSIVE */
@media (max-width:768px){
  .tn-content{grid-template-columns:1fr;}
  .tn-blog.dark .tn-posts-col{border-right:none;border-bottom:1px solid #1a2540;}
  .tn-blog.light .tn-posts-col{border-right:none;border-bottom:1px solid #dde3f0;}
  .tn-hero{flex-direction:column;align-items:flex-start;}
  .tn-about{grid-template-columns:1fr;}
  .tn-nav{display:none;}
  .tn-hdr{padding:0 1rem;}
}


/* ============================================================
   v1.2 - MELHORIAS E AJUSTES PROFISSIONAIS
   - Imagens com fundo transparente (gerenciadas pelo Customizer)
   - Tamanhos controlados via CSS (object-fit)
   - Limpeza de elementos do tema pai
   ============================================================ */

/* Imagens sem fundo (agora são PNG transparentes via Biblioteca de Mídia) */
.tn-blog.dark .tn-cert,
.tn-blog.dark .tn-cert-sm,
.tn-blog.light .tn-cert,
.tn-blog.light .tn-cert-sm {
    background: transparent;
}

/* Data Plus: sem filtros artificiais */
.tn-blog.light .tn-dataplus img,
.tn-blog.dark .tn-dataplus img {
    filter: none;
}
.tn-blog.light .tn-dataplus {
    background: rgba(26, 111, 255, 0.04);
}
.tn-blog.dark .tn-dataplus {
    background: rgba(26, 111, 255, 0.06);
}

/* ============================================================
   CERTIFICAÇÕES - TAMANHOS GARANTIDOS
   O WordPress entrega o tamanho da imagem original, mas o CSS
   força o tamanho final independente de qual imagem foi enviada
   ============================================================ */

/* Sidebar (3 colunas, ~64px cada) */
.tn-certs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}
.tn-cert {
    width: 100%;
    aspect-ratio: 1;
    height: auto;
    object-fit: contain;  /* mantém proporção sem distorcer */
    object-position: center;
    border-radius: 6px;
    padding: 4px;
    transition: transform 0.2s;
    cursor: pointer;
}
.tn-cert:hover {
    transform: scale(1.08);
}

/* Página Sobre — grid responsivo com tamanho máximo */
.tn-cert-strip {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(80px, 100px));
    gap: 14px;
    max-width: 600px;
    margin-top: 1rem;
}
.tn-cert-sm {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1;
    max-width: 100px;
    object-fit: contain;
    object-position: center;
    padding: 6px;
    border-radius: 6px;
}

/* Data Plus — tamanho máximo controlado */
.tn-dataplus img {
    max-width: 100%;
    max-height: 60px;
    width: auto;
    height: auto;
    object-fit: contain;
}

/* ============================================================
   LIMPEZA DE ELEMENTOS DO TEMA PAI (Publishable Mag)
   ============================================================ */

/* Esconde título da página injetado pelo tema pai (evita duplicar) */
.page-template-page-contato .entry-title,
.page-template-page-contato .page-title,
.page-template-page-contato .entry-header,
.page-template-page-servicos .entry-title,
.page-template-page-servicos .page-title,
.page-template-page-servicos .entry-header,
.page-template-page-sobre .entry-title,
.page-template-page-sobre .page-title,
.page-template-page-sobre .entry-header {
    display: none !important;
}

/* Esconde botões de compartilhamento social (Jetpack/Sharedaddy) */
.page-template-page-contato .sharedaddy,
.page-template-page-contato .sd-sharing-enabled,
.page-template-page-contato .sd-block,
.page-template-page-contato .jp-relatedposts,
.page-template-page-contato .post-likes-widget-placeholder,
.page-template-page-servicos .sharedaddy,
.page-template-page-servicos .sd-sharing-enabled,
.page-template-page-servicos .sd-block,
.page-template-page-sobre .sharedaddy,
.page-template-page-sobre .sd-sharing-enabled,
.page-template-page-sobre .sd-block {
    display: none !important;
}

/* Esconde "Editar" e meta-dados */
.page-template-page-contato .edit-link,
.page-template-page-contato .post-edit-link,
.page-template-page-contato .entry-meta,
.page-template-page-servicos .edit-link,
.page-template-page-servicos .post-edit-link,
.page-template-page-servicos .entry-meta,
.page-template-page-sobre .edit-link,
.page-template-page-sobre .post-edit-link,
.page-template-page-sobre .entry-meta {
    display: none !important;
}


/* ============================================================
   v1.3 - RODAPÉ + AJUSTES PÁGINA CONTATO
   ============================================================ */

/* RODAPÉ próprio do tema filho */
.tn-footer {
    font-family: 'Sora', sans-serif;
    padding: 2rem 1.5rem;
    margin-top: 2rem;
    border-top: 1px solid;
    text-align: center;
    transition: all .35s;
}

/* Modo dark */
body.tn-mode-dark .tn-footer,
.tn-blog.dark + .tn-footer,
.tn-footer.dark {
    background: #080c18;
    color: #6a82a8;
    border-top-color: #1a2540;
}

/* Modo light */
body.tn-mode-light .tn-footer,
.tn-blog.light + .tn-footer,
.tn-footer.light {
    background: #f0f3fa;
    color: #4a6080;
    border-top-color: #dde3f0;
}


.tn-footer {
    background: #080c18;
    color: #6a82a8;
    border-top-color: #1a2540;
}

.tn-footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.tn-footer-brand {
    font-size: 13px;
    font-weight: 600;
    color: #1a6fff;
    letter-spacing: 0.02em;
}

.tn-footer-tagline {
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    opacity: 0.7;
}

/* Garante que o footer NÃO recebe estilos do tema pai */
.tn-footer * {
    color: inherit !important;
    text-decoration: none !important;
}

/* Esconde rodapé do tema pai Publishable Mag */
body .site-footer,
body .footer-widgets,
body #colophon,
body .site-info {
    display: none !important;
}

/* ============================================================
   v1.3 - REGRAS FINAIS DO FOOTER (sobrepõe as anteriores)
   ============================================================ */

/* Dark é o padrão */
.tn-footer {
    background: #080c18 !important;
    color: #6a82a8 !important;
    border-top: 1px solid #1a2540 !important;
}
.tn-footer .tn-footer-brand {
    color: #1a6fff !important;
}
.tn-footer .tn-footer-tagline {
    color: #6a82a8 !important;
    opacity: 0.8;
}

/* Light mode (quando body.tn-mode-light está ativo OU footer.light) */
body.tn-mode-light .tn-footer,
.tn-footer.light {
    background: #f0f3fa !important;
    color: #4a6080 !important;
    border-top-color: #dde3f0 !important;
}
body.tn-mode-light .tn-footer .tn-footer-brand,
.tn-footer.light .tn-footer-brand {
    color: #1a6fff !important;
}
body.tn-mode-light .tn-footer .tn-footer-tagline,
.tn-footer.light .tn-footer-tagline {
    color: #6a82a8 !important;
}

/* Esconde definitivamente o footer do tema pai (Publishable Mag) */
body .site-footer,
body .footer-widgets,
body #colophon,
body .site-info,
body footer.entry-footer,
body .footer-nav {
    display: none !important;
}


/* ============================================================
   v1.4 - WHATSAPP (substitui Leadster)
   ============================================================ */

/* Bloco WhatsApp na página de Contato (substitui .tn-leadster) */
.tn-whatsapp-box {
    padding: 2.5rem 1.5rem;
    border-radius: 12px;
    text-align: center;
    border: 1px solid;
    position: relative;
    overflow: hidden;
}

.tn-blog.dark .tn-whatsapp-box {
    background: linear-gradient(135deg, #0d1220 0%, #0a1f1a 100%);
    border-color: #1a4a3a;
}
.tn-blog.light .tn-whatsapp-box {
    background: linear-gradient(135deg, #fff 0%, #e8f7f1 100%);
    border-color: #b5e0d0;
}

/* Detalhe verde no canto */
.tn-whatsapp-box::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
    background: linear-gradient(90deg, #25D366 0%, #128C7E 100%);
}

.tn-whatsapp-badge {
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 5px 12px;
    border-radius: 4px;
    margin-bottom: 16px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
}
.tn-blog.dark .tn-whatsapp-badge {
    background: rgba(37, 211, 102, 0.12);
    color: #25D366;
    border: 1px solid rgba(37, 211, 102, 0.25);
}
.tn-blog.light .tn-whatsapp-badge {
    background: rgba(37, 211, 102, 0.1);
    color: #128C7E;
    border: 1px solid rgba(37, 211, 102, 0.3);
}

.tn-whatsapp-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
}
.tn-blog.dark .tn-whatsapp-title { color: #e8edf5; }
.tn-blog.light .tn-whatsapp-title { color: #0f1e3c; }

.tn-whatsapp-desc {
    font-size: 13px;
    line-height: 1.7;
    margin-bottom: 22px;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}
.tn-blog.dark .tn-whatsapp-desc { color: #6a82a8; }
.tn-blog.light .tn-whatsapp-desc { color: #5a6a8a; }

.tn-whatsapp-btn {
    font-family: 'Sora', sans-serif;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.02em;
    padding: 14px 28px;
    border-radius: 8px;
    border: none;
    background: #25D366;
    color: #fff !important;
    cursor: pointer;
    transition: all 0.25s;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
}
.tn-whatsapp-btn i {
    font-size: 20px;
}
.tn-whatsapp-btn:hover {
    background: #128C7E;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(37, 211, 102, 0.4);
    color: #fff !important;
}

/* ============================================================
   BOTÃO FLUTUANTE DO WHATSAPP (em todas as páginas)
   ============================================================ */
.tn-whatsapp-float {
    position: fixed;
    bottom: 24px;
    right: 24px;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #25D366;
    color: #fff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    text-decoration: none !important;
    box-shadow: 0 4px 16px rgba(37, 211, 102, 0.45), 0 2px 6px rgba(0, 0, 0, 0.15);
    z-index: 9999;
    transition: all 0.3s;
    cursor: pointer;
}
.tn-whatsapp-float:hover {
    background: #128C7E;
    transform: scale(1.08);
    box-shadow: 0 6px 24px rgba(37, 211, 102, 0.55), 0 3px 8px rgba(0, 0, 0, 0.2);
    color: #fff !important;
}
.tn-whatsapp-float i {
    color: #fff;
    font-size: 32px;
}

/* Animação de pulso ao redor do botão */
.tn-whatsapp-float-pulse {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    border-radius: 50%;
    background: rgba(37, 211, 102, 0.4);
    animation: tn-whatsapp-pulse 2s infinite;
    z-index: -1;
}
@keyframes tn-whatsapp-pulse {
    0%   { transform: scale(1);   opacity: 0.7; }
    70%  { transform: scale(1.5); opacity: 0; }
    100% { transform: scale(1.5); opacity: 0; }
}

/* Mobile: botão um pouco menor e mais perto da borda */
@media (max-width: 768px) {
    .tn-whatsapp-float {
        width: 54px;
        height: 54px;
        bottom: 16px;
        right: 16px;
        font-size: 28px;
    }
    .tn-whatsapp-float i { font-size: 28px; }
}


/* ============================================================
   v1.5 - DATA PLUS CENTRALIZADA NA PÁGINA SERVIÇOS
   ============================================================ */

.tn-dataplus-center {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid;
    text-align: center;
}
.tn-blog.dark .tn-dataplus-center { border-top-color: #1a2540; }
.tn-blog.light .tn-dataplus-center { border-top-color: #dde3f0; }

.tn-dataplus-label {
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    margin-bottom: 1.25rem;
}
.tn-blog.dark .tn-dataplus-label { color: #3d5580; }
.tn-blog.light .tn-dataplus-label { color: #9aaccc; }

/* Logo Data Plus maior e centralizada */
.tn-dataplus-large {
    display: inline-flex;
    max-width: 280px;
    width: auto;
    padding: 20px 28px;
    margin: 0 auto;
}
.tn-dataplus-large img {
    max-height: 80px;
    max-width: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
}


/* ============================================================
   v1.6 - BREADCRUMBS (SEO)
   ============================================================ */

.tn-breadcrumbs {
    font-family: 'JetBrains Mono', monospace;
    font-size: 10px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 1rem 1.5rem;
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.tn-blog.dark .tn-breadcrumbs { color: #4a6080; border-bottom: 1px solid #141b2e; }
.tn-blog.light .tn-breadcrumbs { color: #8a9cba; border-bottom: 1px solid #eef1f8; }

.tn-breadcrumbs a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s;
}
.tn-breadcrumbs a:hover { color: #1a6fff; }
.tn-breadcrumbs span { opacity: 0.5; }
.tn-breadcrumbs .current { color: #1a6fff; }


/* ============================================================
   v1.7 - MARCA D'ÁGUA NO HERO
   SVG decorativo com ícones de dados e cloud
   ============================================================ */

.tn-hero {
    position: relative;
    overflow: hidden;
}

.tn-hero-watermark {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 65%;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    z-index: 1;
}

.tn-blog.dark .tn-hero-watermark {
    color: #1a6fff;
    opacity: 0.25;
}
.tn-blog.light .tn-hero-watermark {
    color: #1a6fff;
    opacity: 0.18;
}

.tn-hero-watermark svg {
    width: 100%;
    height: 100%;
    max-height: 280px;
}

/* Conteúdo do hero precisa ficar acima da marca d'água */
.tn-hero-content,
.tn-stats {
    position: relative;
    z-index: 2;
}

/* No mobile, esconde a marca d'água para não atrapalhar */
@media (max-width: 768px) {
    .tn-hero-watermark {
        display: none;
    }
}


/* ============================================================
   v1.8 - MARCAS D'ÁGUA EM PÁGINAS INTERNAS + ÍCONES CANTO
   ============================================================ */

/* Container das páginas com marca d'água */
.tn-page-with-watermark {
    position: relative;
    overflow: hidden;
}

/* Marca d'água absoluta posicionada no topo direito da página */
.tn-page-watermark {
    position: absolute;
    top: 0;
    right: 0;
    width: 65%;
    max-width: 700px;
    height: 280px;
    pointer-events: none;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.tn-blog.dark .tn-page-watermark {
    color: #1a6fff;
    opacity: 0.25;
}
.tn-blog.light .tn-page-watermark {
    color: #1a6fff;
    opacity: 0.18;
}

.tn-page-watermark svg {
    width: 100%;
    height: 100%;
}

/* Conteúdo da página acima da marca d'água */
.tn-page-content {
    position: relative;
    z-index: 2;
}

/* Esconde marca d'água no mobile */
@media (max-width: 768px) {
    .tn-page-watermark {
        display: none;
    }
}

/* ============================================================
   CARDS DE SERVIÇOS: ÍCONE NO CANTO + BORDA HOVER
   ============================================================ */

/* Substitui o ícone antigo (.tn-srv-icon que ficava no topo) */
.tn-srv {
    position: relative;
    border-left: 3px solid transparent;
    transition: all 0.25s ease;
    padding-left: 1.25rem;
}

.tn-blog.dark .tn-srv:hover {
    border-left-color: #1a6fff;
    border-top-color: #1a2540;
    border-right-color: #1a2540;
    border-bottom-color: #1a2540;
}
.tn-blog.light .tn-srv:hover {
    border-left-color: #1a6fff;
    border-top-color: #dde3f0;
    border-right-color: #dde3f0;
    border-bottom-color: #dde3f0;
}

/* Esconde o ícone antigo (no topo) */
.tn-srv > .tn-srv-icon {
    display: none;
}

/* Ícone no canto superior direito (novo posicionamento) */
.tn-srv-icon-corner {
    position: absolute;
    top: 14px;
    right: 14px;
    font-size: 20px;
    color: #1a6fff;
    opacity: 0.6;
    transition: opacity 0.2s;
}
.tn-srv:hover .tn-srv-icon-corner {
    opacity: 1;
}

/* Garante espaço para o ícone não sobrepor o título */
.tn-srv .tn-srv-title {
    padding-right: 30px;
}
