/* =====================================================
   PHF ADVOGADOS — style.css
   Design: navy escuro + dourado, foco em conversão.
   Zero dependências externas (fontes/ícones locais) para
   máxima velocidade e Core Web Vitals.
   ===================================================== */

:root{
  --navy:#0c1322;
  --navy-2:#111c31;
  --navy-3:#182741;
  --gold:#c8a45c;
  --gold-light:#e3c98f;
  --ink:#1c2430;
  --muted:#5c6675;
  --muted-dark:#a7abb5;
  --bg:#f7f8fa;
  --white:#ffffff;
  --green:#25d366;
  --green-dark:#1eb85a;
  --red:#c0392b;
  --radius:14px;
  --shadow:0 10px 30px rgba(12,19,34,.10);
  --shadow-lg:0 18px 50px rgba(12,19,34,.18);
  --transition:.25s cubic-bezier(.4,0,.2,1);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px;overflow-x:hidden}
body{overflow-x:hidden}
body{
  font-family:'Segoe UI',system-ui,-apple-system,Roboto,Arial,sans-serif;
  color:var(--ink);background:var(--bg);line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%;display:block}
a{color:var(--gold);text-decoration:none}
.container{max-width:1140px;margin:0 auto;padding:0 22px}
.text-muted{color:var(--muted)}
.disclaimer{color:var(--muted);font-size:.82rem;margin-top:14px}

h1,h2,h3,h4{font-family:Georgia,'Times New Roman',serif;line-height:1.22;color:var(--navy)}
h2{font-size:clamp(1.5rem,3.2vw,2.15rem)}
h3{font-size:1.15rem}

.skip-link{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:10px 16px;z-index:200}
.skip-link:focus{left:10px}

.section-label{
  display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gold);margin-bottom:12px;
}
.section-label.gold{color:var(--gold-light)}

/* ================= BOTÕES ================= */
.btn{
  display:inline-flex;align-items:center;gap:10px;justify-content:center;
  padding:14px 26px;border-radius:999px;font-weight:700;font-size:1rem;
  transition:transform var(--transition),box-shadow var(--transition),background var(--transition);
  cursor:pointer;text-align:center;
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn-lg{padding:17px 34px;font-size:1.08rem}
.btn .ico-wa{width:22px;height:22px;flex:none}

.btn-whatsapp{
  background:linear-gradient(135deg,var(--green),var(--green-dark));
  color:#fff;box-shadow:0 8px 24px rgba(37,211,102,.35);
}
.btn-whatsapp:hover{box-shadow:0 12px 32px rgba(37,211,102,.5)}

.btn-outline{
  border:2px solid rgba(200,164,92,.7);color:var(--gold-light);background:transparent;
}
.btn-outline:hover{background:rgba(200,164,92,.12)}
.about .btn-outline{color:var(--gold-light)}

/* pulso sutil nos CTAs principais */
@keyframes pulseBtn{
  0%,100%{box-shadow:0 8px 24px rgba(37,211,102,.35)}
  50%{box-shadow:0 8px 24px rgba(37,211,102,.35),0 0 0 12px rgba(37,211,102,0)}
}
.pulse{animation:pulseBtn 2.4s infinite}

/* ================= HEADER ================= */
.site-header{
  position:sticky;top:0;z-index:100;background:#0e1626;
  border-bottom:1px solid rgba(200,164,92,.18);
  transition:box-shadow var(--transition);
}
.site-header.scrolled{box-shadow:0 8px 30px rgba(0,0,0,.35)}
.header-inner{
  max-width:1240px;margin:0 auto;padding:14px 22px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.logo{font-family:Georgia,serif;font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:.04em}
.logo span{color:var(--gold);font-size:.8em;letter-spacing:.18em}

.nav-toggle{display:none;background:none;border:0;color:#fff;width:44px;height:44px;cursor:pointer}
.nav-toggle svg{width:26px;height:26px;margin:auto}

.main-nav{display:flex;align-items:center;gap:26px}
.main-nav>ul{display:flex;list-style:none;gap:26px}
.nav-group{position:relative}
.group-label{
  color:#e8eaef;font-size:.92rem;font-weight:600;cursor:default;
  padding:10px 2px;display:inline-block;
}
.nav-group>ul{
  position:absolute;top:100%;left:-14px;min-width:230px;list-style:none;
  background:var(--navy-2);border:1px solid rgba(200,164,92,.25);border-radius:12px;
  padding:10px;opacity:0;visibility:hidden;transform:translateY(8px);
  transition:all var(--transition);box-shadow:var(--shadow-lg);
}
.nav-group:hover>ul,.nav-group:focus-within>ul{opacity:1;visibility:visible;transform:translateY(4px)}
.nav-link{display:block;color:#cfd4dd;padding:9px 12px;border-radius:8px;font-size:.92rem}
.nav-link:hover{background:rgba(200,164,92,.14);color:var(--gold-light)}
.nav-cta .btn{padding:11px 20px;font-size:.92rem}
.nav-overlay{display:none}

/* ================= HERO ================= */
.hero{
  position:relative;overflow:hidden;
  background:radial-gradient(1200px 600px at 75% -10%,#1d2f52 0%,var(--navy) 55%);
  color:#e8eaef;padding:96px 0 88px;
}
.hero-glow{
  position:absolute;inset:auto -20% -50% -20%;height:400px;
  background:radial-gradient(closest-side,rgba(200,164,92,.14),transparent);
  pointer-events:none;
}
.hero h1{color:#fff;font-size:clamp(1.9rem,4.6vw,3.1rem);margin:8px 0 18px;max-width:820px}
.hero h1 em{font-style:normal;color:var(--gold-light);border-bottom:3px solid var(--gold)}
.hero p{max-width:640px;color:#c3c9d4;font-size:1.07rem}
.hero-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.hero-trust{
  list-style:none;display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:26px;
  color:#9aa3b2;font-size:.92rem;
}
.rotator{display:inline-block;transition:opacity .25s}
.rotator.fade{opacity:0}

/* ================= FINDER (o que você procura) ================= */
.finder{padding:76px 0;background:var(--white)}
.areas-intro{text-align:center;max-width:680px;margin:0 auto 42px}
.finder-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;
}
.finder-card{
  display:flex;flex-direction:column;gap:8px;padding:24px 22px;
  background:var(--bg);border:1px solid #e5e8ee;border-radius:var(--radius);
  color:var(--ink);transition:all var(--transition);
}
.finder-card:hover{
  transform:translateY(-4px);box-shadow:var(--shadow-lg);
  border-color:rgba(200,164,92,.55);
}
.finder-card strong{font-size:1.02rem;color:var(--navy)}
.fc-ico{font-size:1.6rem}
.fc-go{color:var(--gold);font-weight:700;font-size:.9rem;margin-top:auto}
.finder-card.urgent{background:#fdf2f0;border-color:rgba(192,57,43,.35)}
.finder-card.urgent .fc-go{color:var(--red)}

/* ================= SEÇÕES DE SERVIÇO ================= */
.practice-section{padding:72px 0;background:var(--white)}
.practice-section.alt{background:var(--bg)}
.practice-section.urgent-band{
  background:linear-gradient(135deg,#1a1220,#2a1520);
}
.practice-section.urgent-band h2{color:#fff}
.practice-section.urgent-band p{color:#d5cdd4}
.practice-section.urgent-band .check-list li{color:#d5cdd4}
.practice-section.urgent-band .disclaimer{color:#8d8390}
.practice-grid{max-width:840px}
.audience-tag{
  display:inline-block;background:rgba(200,164,92,.14);color:#8a6d35;
  font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  padding:6px 14px;border-radius:999px;margin-bottom:16px;
}
.audience-tag.red{background:rgba(192,57,43,.16);color:#e07b6d}
.practice-content h2{margin-bottom:16px}
.practice-content>p{color:var(--muted);max-width:680px}
.check-list{list-style:none;margin:22px 0}
.check-list li{
  padding:8px 0 8px 34px;position:relative;color:var(--ink);font-size:1rem;
}
.check-list li::before{
  content:"✓";position:absolute;left:0;top:8px;width:24px;height:24px;
  background:rgba(37,211,102,.15);color:var(--green-dark);border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800;
}
.practice-cta{margin-top:8px}

/* ================= COMO FUNCIONA ================= */
.how{padding:80px 0;background:var(--navy);color:#e8eaef;text-align:center}
.how h2{color:#fff;margin-bottom:44px}
.how-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;text-align:left}
.how-step{
  background:var(--navy-2);border:1px solid rgba(200,164,92,.2);
  border-radius:var(--radius);padding:28px;transition:all var(--transition);
}
.how-step:hover{transform:translateY(-4px);border-color:rgba(200,164,92,.5)}
.how-step .num{
  width:44px;height:44px;border-radius:50%;background:var(--gold);color:var(--navy);
  font-weight:800;font-size:1.1rem;display:flex;align-items:center;justify-content:center;
  margin-bottom:16px;font-family:Georgia,serif;
}
.how-step h3{color:#fff;margin-bottom:8px}
.how-step .text-muted{color:#9aa3b2}
.how-cta{margin-top:42px}

/* ================= SOBRE ================= */
.about{padding:80px 0;background:var(--navy-2);color:#e8eaef}
.about-inner{max-width:760px;text-align:center;margin:0 auto}
.about h2{color:#fff;margin-bottom:16px}
.about p{color:#c3c9d4;margin-bottom:26px}

/* ================= ARTIGOS ================= */
.articles{padding:80px 0;background:var(--white)}
.articles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.article-card{
  background:var(--bg);border:1px solid #e5e8ee;border-radius:var(--radius);
  padding:26px;display:flex;flex-direction:column;gap:12px;
  transition:all var(--transition);
}
.article-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.article-card .tag{
  align-self:flex-start;background:rgba(200,164,92,.16);color:#8a6d35;
  font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  padding:4px 12px;border-radius:999px;
}
.article-card p{color:var(--muted);font-size:.95rem}
.article-card details summary{
  cursor:pointer;color:var(--gold);font-weight:700;font-size:.92rem;list-style:none;
}
.article-card details summary::-webkit-details-marker{display:none}
.article-card details summary::after{content:" ▾"}
.article-card details[open] summary{display:none}
.article-card details p{margin:6px 0 12px}
.link-wa{color:var(--green-dark);font-weight:700;font-size:.92rem}
.articles-note{text-align:center;margin-top:36px;color:var(--muted)}

/* ================= CTA FINAL ================= */
.final-cta{
  padding:84px 0;text-align:center;color:#fff;
  background:linear-gradient(135deg,var(--navy) 0%,#20345c 100%);
}
.final-cta h2{color:#fff;margin-bottom:12px}
.final-cta p{color:#c3c9d4;max-width:560px;margin:0 auto 30px}

/* ================= FOOTER ================= */
.site-footer{background:#0a101c;color:#a7abb5;padding:56px 0 36px}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px;margin-bottom:36px}
.footer-col h4{color:#fff;font-size:1rem;margin-bottom:14px}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:8px}
.footer-col a{color:#a7abb5;font-size:.92rem}
.footer-col a:hover{color:var(--gold-light)}
.footer-muted{color:#7c8492;font-size:.92rem;margin-bottom:8px}
.footer-compliance{border-top:1px solid rgba(255,255,255,.08);padding-top:24px;font-size:.8rem;color:#6d7583}
.footer-compliance p{margin-bottom:8px}

/* ================= WHATSAPP FLUTUANTE ================= */
.wa-float{
  position:fixed;right:20px;bottom:24px;z-index:150;
  display:flex;align-items:center;gap:10px;
  background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;
  border-radius:999px;padding:14px;box-shadow:0 10px 30px rgba(37,211,102,.45);
  transition:all var(--transition);
}
.wa-float svg{width:30px;height:30px;flex:none}
.wa-float-label{
  max-width:0;overflow:hidden;white-space:nowrap;font-weight:700;font-size:.95rem;
  transition:max-width .4s ease,padding .4s ease;
}
.wa-float:hover .wa-float-label{max-width:220px;padding-right:8px}
.wa-float:hover{transform:scale(1.05)}
@keyframes waRing{
  0%{transform:scale(1);opacity:.7}
  100%{transform:scale(1.7);opacity:0}
}
.wa-float-ring{
  position:absolute;inset:0;border-radius:999px;
  border:2px solid var(--green);animation:waRing 1.8s ease-out infinite;
  pointer-events:none;
}

/* ================= BARRA FIXA MOBILE ================= */
.mobile-bar{display:none}

/* ================= EFEITO REVEAL (scroll) ================= */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}
/* sem JS ou com preferência de menos movimento, tudo visível */
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
  html{scroll-behavior:auto}
}
.no-js .reveal{opacity:1;transform:none}

/* ================= RESPONSIVO ================= */
@media (max-width:960px){
  .nav-toggle{display:block}
  .main-nav{
    position:fixed;top:0;right:0;bottom:0;width:min(340px,86vw);
    background:var(--navy-2);flex-direction:column;align-items:stretch;
    padding:80px 24px 32px;gap:8px;transform:translateX(100%);
    transition:transform .3s ease;overflow-y:auto;z-index:120;
  }
  .main-nav.open{transform:none}
  .main-nav>ul{flex-direction:column;gap:6px}
  .group-label{color:var(--gold);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;margin-top:10px}
  .nav-group>ul{
    position:static;opacity:1;visibility:visible;transform:none;
    background:none;border:0;box-shadow:none;padding:0 0 6px;
  }
  .nav-cta{margin-top:18px}
  .nav-overlay.show{
    display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:110;
  }
  .hero{padding:66px 0 90px;text-align:center}
  .hero p{margin:0 auto}
  .hero-ctas{justify-content:center}
  .hero-trust{justify-content:center}

  /* barra fixa de conversão no mobile */
  .mobile-bar{
    display:block;position:fixed;left:0;right:0;bottom:0;z-index:140;
    background:rgba(12,19,34,.95);backdrop-filter:blur(8px);
    padding:10px 14px calc(10px + env(safe-area-inset-bottom));
    border-top:1px solid rgba(200,164,92,.25);
  }
  .mobile-bar-btn{
    display:flex;align-items:center;justify-content:center;gap:10px;
    background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;
    font-weight:800;font-size:1rem;padding:14px;border-radius:999px;
    box-shadow:0 6px 20px rgba(37,211,102,.4);
  }
  .wa-float{bottom:86px;right:14px;padding:12px}
  .wa-float-label{display:none}
  body{padding-bottom:72px}
}

@media (max-width:520px){
  .btn-lg{width:100%}
  .hero-ctas .btn{width:100%}
  .finder-grid{grid-template-columns:1fr}
}
