/*
Theme Name: Altus+ Contabilidade
Theme URI: https://example.com/altus-contabilidade
Author: Altus+ Contabilidade
Description: Tema institucional de página única para a Altus+ Contabilidade, com serviços de Contabilidade, BPO Financeiro e Consultoria em DRE.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: altus-contabilidade
*/

:root {
      --navy: #071426;
      --navy-soft: #0b1b31;
      --navy-deep: #040b15;
      --champagne: #c8aa6d;
      --champagne-light: #ead9b2;
      --white: #ffffff;
      --text: #d3dae4;
      --muted: #aeb8c6;
      --line: rgba(255, 255, 255, 0.10);
      --max: 1120px;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      font-family: Inter, "Helvetica Neue", Arial, sans-serif;
      background: var(--navy);
      color: var(--white);
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
    }

    a {
      color: inherit;
      text-decoration: none;
    }

    .container {
      width: min(90%, var(--max));
      margin-inline: auto;
    }

    header {
      position: sticky;
      top: 0;
      z-index: 20;
      background: rgba(15, 35, 60, 0.96);
      border-bottom: 1px solid rgba(200, 170, 109, 0.30);
      backdrop-filter: blur(12px);
    }

    .nav {
      min-height: 96px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 30px;
    }

    .logo-header {
      display: block;
      width: 198px;
      height: auto;
    }

    .header-actions {
      display: flex;
      align-items: center;
      justify-content: flex-end;
    }

    nav {
      display: flex;
      align-items: center;
      gap: 30px;
      color: var(--muted);
      font-size: 0.84rem;
      letter-spacing: 0.06em;
    }

    nav a {
      transition: color 0.2s ease;
    }

    nav a:hover {
      color: var(--white);
    }

    .hero {
      min-height: 82vh;
      display: flex;
      align-items: center;
      padding: 132px 0 112px;
      background:
        radial-gradient(circle at 76% 28%, rgba(200, 170, 109, 0.08), transparent 30%),
        linear-gradient(180deg, var(--navy), var(--navy-deep));
    }

    .hero-grid {
      display: block;
      max-width: 940px;
      margin-inline: auto;
      text-align: center;
    }

    .hero-shell {
      position: relative;
    }

    .hero-top-action {
      display: flex;
      justify-content: flex-end;
      margin-bottom: 44px;
    }

    .hero-whatsapp {
      min-width: 260px;
      min-height: 58px;
      padding: 0 30px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: var(--champagne);
      color: var(--navy);
      font-size: 0.96rem;
      font-weight: 400;
      letter-spacing: 0.035em;
      transition: transform 0.2s ease, background 0.2s ease;
    }

    .hero-whatsapp:hover {
      background: var(--champagne-light);
      transform: translateY(-2px);
    }

    .eyebrow {
      color: var(--champagne-light);
      text-transform: uppercase;
      letter-spacing: 0.32em;
      font-size: 0.72rem;
      margin-bottom: 28px;
      text-align: center;
    }

    h1 {
      max-width: 820px;
      margin-inline: auto;
      font-size: clamp(2.8rem, 6vw, 5.35rem);
      line-height: 1.08;
      letter-spacing: -0.025em;
      font-weight: 300;
      text-wrap: balance;
    }

    h1 span {
      display: block;
      color: var(--champagne-light);
      margin-top: 12px;
    }

    .hero-copy {
      max-width: 760px;
      margin: 36px auto 0;
      color: var(--text);
      font-size: 1.06rem;
      line-height: 1.90;
      letter-spacing: 0.01em;
      text-align: center;
      text-wrap: pretty;
    }

    .hero-copy strong {
      color: var(--white);
      font-weight: 400;
    }

    section {
      padding: 110px 0;
    }

    .section-header {
      max-width: 780px;
      margin-bottom: 56px;
    }

    h2 {
      font-size: clamp(2rem, 4vw, 3.25rem);
      font-weight: 300;
      line-height: 1.22;
      letter-spacing: -0.02em;
    }

    .section-header p {
      margin-top: 20px;
      color: var(--text);
      max-width: 720px;
    }

    .services {
      background: var(--navy-soft);
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
    }

    .services-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }

    .service {
      min-height: 300px;
      padding: 34px 30px;
      border: 1px solid var(--line);
      border-radius: 22px;
      background: rgba(255, 255, 255, 0.018);
    }

    .service-number {
      display: block;
      color: var(--champagne);
      font-size: 0.75rem;
      letter-spacing: 0.20em;
      margin-bottom: 32px;
    }

    .service h3 {
      font-size: 1.32rem;
      font-weight: 400;
      margin-bottom: 16px;
    }

    .service p {
      color: var(--text);
    }

    .positioning {
      background: linear-gradient(180deg, var(--navy), var(--navy-deep));
    }

    .positioning-grid {
      display: grid;
      grid-template-columns: 0.95fr 1.05fr;
      gap: 70px;
      align-items: start;
    }

    .positioning-copy p {
      margin-top: 22px;
      color: var(--text);
    }

    .audience-list {
      display: grid;
      gap: 16px;
    }

    .audience-item {
      padding: 22px 24px;
      border: 1px solid var(--line);
      border-radius: 16px;
      color: var(--text);
    }

    .audience-item strong {
      display: block;
      color: var(--white);
      font-weight: 400;
      margin-bottom: 5px;
    }

    .audience-item:first-child {
      border-color: rgba(200, 170, 109, 0.38);
    }

    .trust-strip {
      padding: 42px 0;
      background: var(--navy-soft);
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
    }

    .trust-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      text-align: center;
    }

    .trust-grid div {
      color: var(--muted);
      font-size: 0.88rem;
      letter-spacing: 0.06em;
    }

    footer {
      padding: 34px 0;
      background: var(--navy-deep);
      color: rgba(255, 255, 255, 0.48);
      font-size: 0.82rem;
    }

    .footer-content {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
    }

    .footer-logo {
      width: 152px;
      height: auto;
      opacity: 0.95;
    }

    @media (max-width: 900px) {
      nav {
        display: none;
      }

      .header-actions {
        display: block;
      }

      .hero-top-action {
        justify-content: center;
        margin-bottom: 36px;
      }

      .hero-whatsapp {
        min-width: 240px;
      }

      .positioning-grid {
        grid-template-columns: 1fr;
      }

      .services-grid,
      .trust-grid {
        grid-template-columns: 1fr;
      }

      .hero {
        min-height: auto;
        padding: 104px 0 88px;
      }
    }

    @media (max-width: 620px) {
      .container {
        width: min(88%, var(--max));
      }

      section {
        padding: 82px 0;
      }

      .nav {
        min-height: 76px;
      }

      .hero-whatsapp {
        width: 100%;
        min-width: 0;
        min-height: 56px;
      }

      .logo-header {
        width: 176px;
      }

      .hero {
        padding-top: 88px;
      }

      .hero-copy {
        font-size: 1rem;
      }


      .footer-content {
        flex-direction: column;
        align-items: flex-start;
      }
    }

/* Ajustes de integração com WordPress */
body.admin-bar header { top: 32px; }
@media (max-width: 782px) { body.admin-bar header { top: 46px; } }
.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
