/* ============================================================
   Parada Cury Advogados — site-style.css
   CSS extraido do site (site/index.html) para o blog do child theme.
   Paleta EXTRAIDA do :root real do site (neutros quentes + dourado #B0894C).
   Inclui o bloco kit-proof !important (contra o Elementor Global Kit).
   Gerado pelo blog-theme-builder (Posicione-see), MODO A.
   ============================================================ */

:root{
  --bg:#F6F2EA;
  --surface:#FBF8F2;
  --surface-tint:#F1EBDF;
  --white:#FFFFFF;
  --ink:#211C16;
  --ink-green:#2B2620;
  --muted:#574C40;
  --muted-2:#6E5F4E;
  --accent:#B0894C;
  --accent-hover:#96723A;
  --accent-deep:#7A5E2E;
  --accent-soft:#D8CDBB;
  --card-dark:#2B2620;
  --card-darker:#201C16;
  --lavender:#A99B85;
  --border:rgba(43,38,32,.12);
  --border-soft:rgba(0,0,0,.06);
  --radius-lg:28px;
  --radius-md:20px;
  --radius-sm:14px;
  --maxw:1280px;
  --font-headings:"Inter",system-ui,sans-serif;
  --font-body:"Inter",system-ui,sans-serif;
}

/* ===== BASE ===== */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);background:var(--bg);color:var(--ink);line-height:1.5;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
ul{list-style:none}
.container{max-width:var(--maxw);margin:0 auto;padding:0 30px}

/* ===== TYPOGRAPHY ===== */
h1,h2,h3,h4,h5,h6{font-family:var(--font-headings);font-weight:500;color:var(--ink-green);letter-spacing:-.02em;line-height:1.12;text-wrap:balance;overflow-wrap:break-word;word-break:break-word}
.lead{font-size:18px;color:var(--muted);line-height:1.55}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:#2B2620;font-size:15px;font-weight:500;letter-spacing:-.01em;padding:15px 26px;border-radius:60px;border:none;cursor:pointer;transition:background .25s ease,transform .25s ease}
.btn:hover{background:var(--accent-hover);transform:translateY(-2px)}
.btn .arw{width:16px;height:16px;flex:none;stroke:#2B2620}
.btn:hover .arw{transform:translateX(3px)}

/* ===== HEADER (identico a home) ===== */
.site-header{position:sticky;top:0;z-index:100;background:rgba(234,240,239,.82);backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--border-soft)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:84px}
.logo img{height:30px;width:auto}
.nav-links{display:flex;align-items:center;gap:36px}
.nav-links a{font-size:17px;color:var(--muted);transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--ink-green)}
.header-cta{display:flex;align-items:center;gap:16px}
.hamburger{display:none;width:46px;height:46px;border-radius:12px;border:1px solid var(--border);background:var(--white);align-items:center;justify-content:center;cursor:pointer}
.hamburger span{display:block;width:20px;height:2px;background:var(--ink-green);position:relative}
.hamburger span::before,.hamburger span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:var(--ink-green);transition:.3s}
.hamburger span::before{top:-6px}.hamburger span::after{top:6px}

/* ===== MOBILE MENU (canonico, portado pra body) ===== */
.mobile-menu{position:fixed;inset:0;z-index:200;background:var(--card-dark);color:#fff;transform:translateX(100%);transition:transform .4s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column;padding:28px 30px}
.mobile-menu.open{transform:translateX(0)}
.mobile-menu-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}
.mobile-menu-top .logo img{height:30px;width:auto}
.mm-close{background:none;border:none;color:#fff;font-size:34px;cursor:pointer;line-height:1}
.mobile-menu nav a{display:block;font-size:28px;color:#fff;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.mobile-menu .btn{margin-top:30px;justify-content:center}
.mobile-menu-meta{margin-top:auto;color:rgba(255,255,255,.6);font-size:14px}
body.menu-open{overflow:hidden}

/* ===== BLOG MAIN ===== */
.gp-blog-main{background:var(--bg);min-height:60vh}
.eyebrow.on-dark{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:rgba(255,255,251,.9);letter-spacing:.01em}
.eyebrow.on-dark .dot{width:9px;height:9px;border-radius:50%;background:var(--accent-soft)}

/* ----- POST SINGLE ----- */
.post-single{padding-bottom:90px}
.post-hero{background:var(--ink);color:#fff;padding:74px 0 48px}
.post-hero-inner{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:860px}
.post-back{font-size:14px;color:var(--accent-soft);font-weight:500}
.post-back:hover{color:#fff}
.post-cat-badge{display:inline-block;background:var(--accent);color:#2B2620;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:6px 14px;border-radius:100px}
.post-title{font-size:44px;line-height:1.12;font-weight:600;letter-spacing:-.02em;color:#fff;max-width:820px}
.post-meta{font-size:14px;color:rgba(255,255,255,.7)}
.post-media{margin-top:-32px;position:relative;z-index:2}
.post-featured{width:100%;border-radius:var(--radius-md);overflow:hidden;box-shadow:0 24px 60px rgba(43,38,32,.18)}
.post-featured-fallback{aspect-ratio:16/8;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--accent) 0%,var(--accent-soft) 60%,var(--bg) 100%);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.65)}
.post-featured-fallback svg{width:64px;height:64px}

.post-body-wrap{max-width:820px;margin:0 auto;padding-top:46px}
.post-body{font-size:18px;line-height:1.72;color:var(--muted)}
.post-body h2{font-size:30px;line-height:1.2;font-weight:600;letter-spacing:-.01em;color:#1a1a1a;margin:44px 0 16px}
.post-body h3{font-size:22px;line-height:1.28;font-weight:600;color:#1a1a1a;margin:32px 0 12px}
.post-body p{margin:0 0 20px}
.post-body ul,.post-body ol{margin:0 0 24px;padding-left:4px;list-style:none;display:flex;flex-direction:column;gap:12px}
.post-body ol{counter-reset:gpli}
.post-body li{position:relative;padding-left:30px;font-size:17px;line-height:1.6;color:var(--muted)}
.post-body ul li::before{content:"";position:absolute;left:6px;top:11px;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.post-body ol li{counter-increment:gpli}
.post-body ol li::before{content:counter(gpli);position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent-deep);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.post-body a{color:#1a1a1a;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px;font-weight:500}
.post-body a:hover{color:var(--accent-deep)}
.post-body strong{color:#1a1a1a;font-weight:700}
.post-body blockquote{margin:30px 0;padding:24px 28px;background:var(--accent-soft);border-left:4px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-style:italic;font-size:20px;line-height:1.5;color:var(--ink-green)}
.post-body blockquote p{margin:0}
.post-body blockquote cite{display:block;margin-top:12px;font-style:normal;font-size:14px;font-weight:600;color:var(--muted-2)}
.post-body h2:first-child,.post-body h3:first-child{margin-top:0}

.post-footer-cta{margin-top:48px;background:var(--card-dark);color:#fff;border-radius:var(--radius-lg);padding:44px 46px}
.post-footer-cta h3{color:#fff;font-size:26px;margin-bottom:12px}
.post-footer-cta p{color:rgba(255,255,255,.82);font-size:16px;line-height:1.6;margin-bottom:24px;max-width:560px}
.btn-post-cta{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:#2B2620;font-size:15px;font-weight:600;padding:15px 28px;border-radius:60px;transition:background .25s ease,transform .25s ease}
.btn-post-cta:hover{background:var(--accent-hover);transform:translateY(-2px)}
.post-back-bottom{display:inline-block;margin-top:36px;color:var(--muted-2)!important}
.post-back-bottom:hover{color:var(--accent-deep)!important}

/* ----- ARCHIVE / BLOG GRID ----- */
.blog-archive-hero{background:var(--ink);color:#fff;padding:74px 0 56px}
.blog-archive-hero .eyebrow.on-dark{margin-bottom:16px}
.blog-archive-title{color:#fff;font-size:46px;line-height:1.08;font-weight:600;letter-spacing:-.02em;margin:0 0 14px;max-width:820px}
.blog-archive-sub{font-size:18px;color:rgba(255,255,255,.8);line-height:1.55;max-width:66ch}
.blog-archive-wrap{padding-top:54px;padding-bottom:90px}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:26px}
.blog-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(43,38,32,.10)}
.blog-card-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--accent-soft)}
.blog-card-img{width:100%;height:100%;object-fit:cover}
.blog-card-fallback{width:100%;height:100%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-soft) 60%,var(--bg) 100%);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7)}
.blog-card-fallback svg{width:52px;height:52px}
.blog-card-badge{position:absolute;top:14px;left:14px;background:var(--accent);color:#2B2620;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:100px}
.blog-card-body{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1}
.blog-card-title{font-size:21px;line-height:1.25;font-weight:600;color:#1a1a1a;margin-bottom:12px}
.blog-card-excerpt{font-size:15px;color:var(--muted);line-height:1.55;margin-bottom:20px;flex:1}
.blog-card-date{font-size:13px;color:var(--muted-2);font-weight:500}
.blog-empty{font-size:18px;color:var(--muted);padding:40px 0}

/* ----- PAGINATION ----- */
.blog-pagination{margin-top:56px}
.blog-pagination .nav-links,.blog-pagination .page-numbers{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;align-items:center}
.blog-pagination .page-numbers{padding:0;list-style:none}
.blog-pagination a.page-numbers,.blog-pagination span.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;border-radius:100px;border:1px solid var(--border);font-size:15px;color:var(--ink-green);background:var(--surface)}
.blog-pagination span.page-numbers.current{background:var(--accent);color:#2B2620;border-color:var(--accent)}
.blog-pagination a.page-numbers:hover{border-color:var(--accent);color:var(--accent-deep)}

/* ===== FOOTER (identico a home) ===== */
.site-footer{background:var(--card-darker);color:#fff;padding:70px 0 40px}
.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.12)}
.footer-brand .logo img{height:34px;margin-bottom:26px}
.footer-brand h2{color:#fff;font-size:44px;letter-spacing:-.04em;line-height:1.1;max-width:360px}
.footer-col h5{font-size:14px;color:rgba(255,255,255,.5);font-weight:500;margin-bottom:20px}
.footer-col a{display:block;font-size:16px;color:rgba(255,255,255,.85);padding:8px 0;transition:color .2s}
.footer-col a:hover{color:#fff}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:28px;flex-wrap:wrap;gap:20px}
.footer-social{display:flex;gap:14px}
.footer-social a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;color:#fff}
.footer-social svg{width:18px;height:18px}
.footer-bottom .copy{font-size:14px;color:rgba(255,255,255,.5)}
.back-top{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.25);border-radius:60px;padding:9px 18px;font-size:14px;color:#fff}
.ps-credit{background:var(--card-darker);text-align:center;padding:0 0 26px;font-size:13px;color:rgba(255,255,255,.4)}
.ps-credit a{color:rgba(255,255,255,.6)}

/* ===== WHATSAPP FLOAT (G-10) ===== */
.whatsapp-float{position:fixed;bottom:24px;right:24px;width:60px;height:60px;background:#25D366;color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 24px rgba(0,0,0,.18),0 2px 8px rgba(37,211,102,.32);z-index:999;transition:transform .25s ease}
.whatsapp-float:hover{transform:scale(1.06)}
.whatsapp-float svg{width:32px;height:32px;fill:#fff}
.whatsapp-float::before{content:"";position:absolute;inset:-6px;border-radius:50%;background:rgba(37,211,102,.32);animation:wa-pulse 2.4s ease-out infinite;z-index:-1}
@keyframes wa-pulse{0%{transform:scale(.9);opacity:.7}100%{transform:scale(1.6);opacity:0}}

/* ============================================================
   BLOCO KIT-PROOF !important — contra o Elementor Global Kit
   (body.elementor-kit-XX a/h1/img vence classes 0,1,0). Porta o padrao
   de override que a home usa; a etapa 7.9 (elementor-prep) reforca depois.
   Incidente matias 2026-07-14 (footer/whatsapp azuis, header sem full-width).
   ============================================================ */
/* header full-width + nav */
.site-header{width:100%!important;max-width:none!important}
.site-footer{width:100%!important;max-width:none!important}   /* banda full-bleed: hello-elementor clampa .site-footer em 1140px (fix 2026-07-17) */
header.site-header{padding:0!important}   /* hello-elementor poe padding-block:1rem no .site-header (header 117px vs 85px da home); a home nao sofre porque o reset escopado #ps-site *{padding:0} mata o default do tema — o blog nao tem #ps-site, entao o kill precisa ser explicito (fix 2026-07-17) */
.header-inner .logo img{height:30px!important;width:auto!important;display:block!important}
.nav-links a,.nav-links a:visited{color:var(--muted)!important}
.nav-links a.active,.nav-links a:hover{color:var(--ink-green)!important}
.nav-blog-link,.nav-blog-link:visited{color:var(--ink-green)!important}
.hamburger{background:var(--white)!important;border:1px solid var(--border)!important;box-shadow:none!important}
.hamburger span,.hamburger span::before,.hamburger span::after{background:var(--ink-green)!important}
/* mobile menu reforco (portado pra body, acima de tudo) */
.mobile-menu{position:fixed!important;z-index:99999!important;background:var(--card-dark)!important}
.mobile-menu nav a,.mobile-menu nav a:visited{color:#fff!important}
.mm-close{color:#fff!important}
/* botoes dourados: texto escuro (AA) */
.btn,.btn:link,.btn:visited,.btn:hover,.btn-post-cta,.btn-post-cta:link,.btn-post-cta:visited{color:#2B2620!important}
.btn .arw{stroke:#2B2620!important}
/* titulos claros sobre hero escuro do blog */
.post-hero .post-title{color:#fff!important}
.blog-archive-hero .blog-archive-title{color:#fff!important}
.post-footer-cta h3{color:#fff!important}
.post-footer-cta p{color:rgba(255,255,255,.82)!important}
.post-hero .post-back,.post-hero .post-back:link{color:var(--accent-soft)!important}
.post-cat-badge,.blog-card-badge{color:#2B2620!important}
.blog-card-title{color:#1a1a1a!important}
/* footer: links brancos, sociais brancos, sem "->" parasita */
.footer-col a,.footer-col a:visited{color:rgba(255,255,255,.85)!important}
.footer-col a:hover{color:#fff!important}
.footer-brand .logo img{height:34px!important;width:auto!important;display:block!important}
.footer-social a,.footer-social a:visited{color:#fff!important}
.footer-social a::after{content:none!important}
.back-top,.back-top:visited{color:#fff!important}
.ps-credit a,.ps-credit a:visited{color:rgba(255,255,255,.6)!important}
/* whatsapp float: verde + icone branco (fill nunca herda o azul do kit) */
.whatsapp-float,.whatsapp-float:visited,.whatsapp-float:hover{color:#fff!important}
.whatsapp-float svg{fill:#fff!important}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (min-width:641px) and (max-width:1024px){
  .post-title{font-size:38px}
  .blog-archive-title{font-size:38px}
  .post-body h2{font-size:26px}
  .footer-brand h2{font-size:34px}
}
@media (max-width:1024px){
  .footer-top{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .nav-links,.header-cta .btn{display:none}
  .hamburger{display:flex}
}
@media (max-width:640px){
  .container{padding:0 20px}
  .post-hero{padding:64px 0 42px}
  .post-title{font-size:30px}
  .blog-archive-title{font-size:30px}
  .post-body{font-size:17px}
  .post-body h2{font-size:24px}
  .post-body h3{font-size:20px}
  .post-footer-cta{padding:32px 26px}
  .post-footer-cta h3{font-size:22px}
  .blog-grid{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr}
  .footer-brand h2{font-size:30px;max-width:none}
  .footer-bottom{flex-direction:column;align-items:flex-start}
}

/* ============================================================
   TIPOGRAFIA-CANONICA blog — TRAVADA (elementor-prep 7.9, 2026-07-17)
   Vence body.elementor-kit-XX (0,1,2) que redefine font-size de p/h2/h3/h1.
   Valores da home real (post-body 18/li 17, h2 30, h3 22, h1 44) — dentro
   dos tetos da tabela tipografia-canonica.md (H1 FHD<=64, H2<=48, H3<=28, body<=22).
   ============================================================ */
.gp-blog-main .post-body p{font-size:18px!important;line-height:1.72!important;font-family:var(--font-body)!important}
.gp-blog-main .post-body li{font-size:17px!important;line-height:1.6!important;font-family:var(--font-body)!important}
.gp-blog-main .post-body h2{font-size:30px!important;line-height:1.2!important;font-family:var(--font-headings)!important}
.gp-blog-main .post-body h3{font-size:22px!important;line-height:1.28!important;font-family:var(--font-headings)!important}
.post-single h1.post-title{font-size:44px!important;font-family:var(--font-headings)!important}
.blog-archive-hero h1.blog-archive-title{font-size:46px!important;font-family:var(--font-headings)!important}
@media (min-width:641px) and (max-width:1024px){
  .post-single h1.post-title{font-size:38px!important}
  .blog-archive-hero h1.blog-archive-title{font-size:38px!important}
  .gp-blog-main .post-body h2{font-size:26px!important}
}
@media (max-width:640px){
  .post-single h1.post-title{font-size:30px!important}
  .blog-archive-hero h1.blog-archive-title{font-size:30px!important}
  .gp-blog-main .post-body p{font-size:17px!important}
  .gp-blog-main .post-body h2{font-size:24px!important}
  .gp-blog-main .post-body h3{font-size:20px!important}
}
