/*
Theme Name: Axos Premium Motion Gold
Theme URI: https://aspiraweb.com.br/
Author: Aspiraweb
Author URI: https://aspiraweb.com.br/
Description: Tema WordPress premium com motion graphics, visual fintech/SaaS, dashboard animado, logo Axos, paleta ouro/preto, SEO técnico, dados estruturados, navegação agêntica, otimizações PageSpeed/Core Web Vitals e conteúdo local para dentistas, sitemap XML inteligente e llms.txt compatível com formato Markdown recomendado.
Version: 1.0.15
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: axos-premium-motion
Tags: custom-colors, custom-logo, featured-images, one-column, responsive-layout, landing-page
*/

:root {
      --bg: #050816;
      --bg-2: #080d22;
      --panel: rgba(255,255,255,.065);
      --panel-2: rgba(255,255,255,.09);
      --line: rgba(255,255,255,.13);
      --text: #f8fafc;
      --muted: #a1a8ba;
      --muted-2: #70788f;
      --blue: #3b82f6;
      --blue-2: #60a5fa;
      --green: #22c55e;
      --green-2: #86efac;
      --cyan: #22d3ee;
      --danger: #f97316;
      --shadow: 0 30px 90px rgba(0,0,0,.38);
      --radius: 28px;
      --max: 1180px;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      background: var(--bg);
      color: var(--text);
      overflow-x: hidden;
    }
    body::before {
      content: "";
      position: fixed;
      inset: 0;
      pointer-events: none;
      background:
        radial-gradient(circle at 12% 6%, rgba(59,130,246,.24), transparent 28%),
        radial-gradient(circle at 88% 16%, rgba(34,197,94,.16), transparent 30%),
        radial-gradient(circle at 50% 95%, rgba(34,211,238,.13), transparent 32%),
        linear-gradient(180deg, #050816 0%, #070b1d 55%, #050816 100%);
      z-index: -4;
    }
    body::after {
      content: "";
      position: fixed;
      inset: 0;
      pointer-events: none;
      background-image:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
      background-size: 64px 64px;
      mask-image: linear-gradient(to bottom, rgba(0,0,0,.75), transparent 70%);
      z-index: -3;
    }

    a { color: inherit; text-decoration: none; }
    button, input, textarea { font: inherit; }
    .container { max-width: var(--max); margin: 0 auto; padding: 0 22px; }
    .section { padding: 116px 0; position: relative; }
    .eyebrow {
      display: inline-flex; align-items: center; gap: 10px;
      color: var(--green-2); font-weight: 800; letter-spacing: .08em;
      text-transform: uppercase; font-size: .78rem;
      padding: 10px 14px; border: 1px solid rgba(34,197,94,.23);
      background: rgba(34,197,94,.06); border-radius: 999px;
    }
    .eyebrow::before {
      content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--green);
      box-shadow: 0 0 20px rgba(34,197,94,.85);
    }
    .section-title { margin: 18px 0 14px; font-size: clamp(2.2rem, 4.2vw, 4.7rem); line-height: .96; letter-spacing: -.07em; }
    .section-lead { max-width: 720px; color: var(--muted); font-size: clamp(1.02rem, 1.7vw, 1.18rem); line-height: 1.7; margin: 0; }
    .gradient-text { background: linear-gradient(90deg, #fff, #9dccff 42%, #86efac 78%); -webkit-background-clip: text; background-clip: text; color: transparent; }

    .glass {
      background: linear-gradient(145deg, rgba(255,255,255,.105), rgba(255,255,255,.045));
      border: 1px solid var(--line);
      box-shadow: var(--shadow);
      backdrop-filter: blur(20px);
    }
    .btn {
      display: inline-flex; align-items: center; justify-content: center; gap: 10px;
      border-radius: 999px; padding: 14px 20px; border: 1px solid rgba(255,255,255,.14);
      color: #fff; font-weight: 800; min-height: 50px;
      transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
      cursor: pointer;
    }
    .btn:hover { transform: translateY(-2px); border-color: rgba(96,165,250,.5); }
    .btn-primary {
      background: linear-gradient(135deg, var(--blue), var(--green));
      box-shadow: 0 0 42px rgba(34,197,94,.24), 0 18px 42px rgba(59,130,246,.18);
    }
    .btn-primary:hover { box-shadow: 0 0 54px rgba(34,197,94,.34), 0 24px 60px rgba(59,130,246,.24); }
    .btn-ghost { background: rgba(255,255,255,.055); }
    .btn-small { padding: 10px 15px; min-height: 42px; font-size: .92rem; }

    .site-header {
      position: fixed; top: 0; left: 0; right: 0; z-index: 100;
      transition: background .25s ease, border-color .25s ease, backdrop-filter .25s ease;
      border-bottom: 1px solid transparent;
    }
    .site-header.scrolled {
      background: rgba(5,8,22,.72); backdrop-filter: blur(18px); border-color: rgba(255,255,255,.09);
    }
    .nav { height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 22px; }
    .brand { display: inline-flex; align-items: center; gap: 12px; font-weight: 900; letter-spacing: -.04em; font-size: 1.07rem; }
    .brand-mark {
      width: 38px; height: 38px; border-radius: 13px; display: grid; place-items: center;
      background: linear-gradient(135deg, rgba(59,130,246,.9), rgba(34,197,94,.9));
      box-shadow: 0 0 34px rgba(59,130,246,.28);
      font-weight: 900;
    }
    .nav-links { display: flex; align-items: center; gap: 24px; color: var(--muted); font-weight: 650; font-size: .92rem; }
    .nav-links a { transition: color .2s ease; }
    .nav-links a:hover { color: #fff; }
    .nav-actions { display: flex; align-items: center; gap: 10px; }
    .menu-toggle { display: none; background: transparent; color: #fff; border: 0; font-size: 1.5rem; }

    .hero { padding: 154px 0 70px; min-height: 100vh; display: grid; align-items: center; }
    .hero-grid { display: grid; grid-template-columns: minmax(0,1.02fr) minmax(420px,.98fr); gap: 54px; align-items: center; }
    .hero-copy h1 { margin: 20px 0 22px; font-size: clamp(3.4rem, 8.2vw, 7.8rem); line-height: .86; letter-spacing: -.095em; max-width: 720px; }
    .hero-copy p { color: var(--muted); line-height: 1.75; font-size: clamp(1.04rem, 1.8vw, 1.25rem); max-width: 610px; margin: 0 0 28px; }
    .hero-ctas { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 30px; }
    .proof-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; max-width: 660px; }
    .proof-pill { padding: 15px 14px; border-radius: 20px; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.09); }
    .proof-pill strong { display: block; font-size: 1.28rem; letter-spacing: -.05em; }
    .proof-pill span { display: block; color: var(--muted); font-size: .78rem; margin-top: 3px; }

    .hero-visual { position: relative; min-height: 612px; perspective: 1300px; }
    .orb {
      position: absolute; border-radius: 50%; filter: blur(20px); opacity: .68;
      animation: float 7s ease-in-out infinite;
    }
    .orb.one { width: 220px; height: 220px; background: rgba(59,130,246,.28); top: 8%; right: 4%; }
    .orb.two { width: 180px; height: 180px; background: rgba(34,197,94,.2); bottom: 8%; left: 4%; animation-delay: -2s; }
    .dashboard {
      position: absolute; inset: 54px 8px 44px 18px; border-radius: 34px; padding: 22px;
      transform: rotateX(8deg) rotateY(-13deg) rotateZ(1deg);
      transform-style: preserve-3d;
      animation: dashboardFloat 6s ease-in-out infinite;
      overflow: hidden;
    }
    .dashboard::before {
      content: ""; position: absolute; inset: -2px;
      background: linear-gradient(120deg, transparent, rgba(96,165,250,.20), transparent 52%, rgba(34,197,94,.17), transparent);
      transform: translateX(-70%); animation: sheen 5s ease-in-out infinite;
    }
    .dash-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; position: relative; z-index: 2; }
    .dash-dots { display: flex; gap: 8px; }
    .dash-dots span { width: 10px; height: 10px; border-radius: 50%; background: rgba(255,255,255,.25); }
    .dash-dots span:nth-child(1) { background: #fb7185; }
    .dash-dots span:nth-child(2) { background: #fbbf24; }
    .dash-dots span:nth-child(3) { background: #34d399; }
    .dash-label { font: 700 .82rem/1 JetBrains Mono, monospace; color: var(--muted); }
    .dash-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 14px; position: relative; z-index: 2; }
    .dash-card { border-radius: 24px; background: rgba(6,11,30,.72); border: 1px solid rgba(255,255,255,.1); padding: 18px; min-height: 130px; }
    .dash-card h3 { margin: 0 0 10px; color: var(--muted); font-size: .82rem; font-weight: 700; }
    .dash-card .value { font-size: 2rem; font-weight: 900; letter-spacing: -.07em; }
    .up { color: var(--green-2); font-weight: 900; font-size: .86rem; }
    .chart { height: 150px; display: flex; align-items: end; gap: 9px; margin-top: 18px; }
    .bar { flex: 1; border-radius: 10px 10px 4px 4px; background: linear-gradient(to top, rgba(59,130,246,.45), rgba(34,197,94,.9)); transform-origin: bottom; animation: grow 3s ease-in-out infinite alternate; }
    .bar:nth-child(1) { height: 36%; animation-delay: -.4s; }
    .bar:nth-child(2) { height: 58%; animation-delay: -.8s; }
    .bar:nth-child(3) { height: 44%; animation-delay: -1.2s; }
    .bar:nth-child(4) { height: 72%; animation-delay: -1.6s; }
    .bar:nth-child(5) { height: 62%; animation-delay: -2s; }
    .bar:nth-child(6) { height: 86%; animation-delay: -2.4s; }
    .status-list { display: grid; gap: 12px; margin-top: 12px; }
    .status-item { display: flex; justify-content: space-between; gap: 12px; color: var(--muted); font-size: .86rem; }
    .status-item strong { color: var(--green-2); }
    .floating-card {
      position: absolute; z-index: 4; border-radius: 24px; padding: 16px 18px;
      background: rgba(8,13,34,.76); border: 1px solid rgba(255,255,255,.12); backdrop-filter: blur(18px);
      box-shadow: 0 24px 70px rgba(0,0,0,.35); animation: float 6s ease-in-out infinite;
    }
    .floating-card strong { display: block; font-size: 1.28rem; letter-spacing: -.055em; }
    .floating-card span { color: var(--muted); font-size: .78rem; }
    .float-1 { top: 90px; left: 0; }
    .float-2 { right: 0; bottom: 106px; animation-delay: -2.2s; }
    .float-3 { left: 36px; bottom: 30px; animation-delay: -4s; }

    .logos { overflow: hidden; margin-top: 34px; border-radius: 26px; border: 1px solid rgba(255,255,255,.10); background: rgba(255,255,255,.04); }
    .logos-track { display: flex; gap: 14px; width: max-content; padding: 18px 14px; animation: marquee 26s linear infinite; }
    .logo-chip { min-width: max-content; padding: 12px 18px; color: rgba(255,255,255,.72); border: 1px solid rgba(255,255,255,.1); border-radius: 999px; background: rgba(255,255,255,.045); font-weight: 750; }

    .feature-grid { margin-top: 46px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .card { position: relative; overflow: hidden; border-radius: var(--radius); padding: 26px; min-height: 270px; transition: transform .25s ease, border-color .25s ease, background .25s ease; }
    .card:hover { transform: translateY(-8px); border-color: rgba(96,165,250,.36); background: linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.055)); }
    .card::after { content: ""; position: absolute; inset: auto -20% -36% auto; width: 180px; height: 180px; border-radius: 50%; background: rgba(59,130,246,.13); filter: blur(10px); }
    .icon-badge { width: 50px; height: 50px; border-radius: 18px; display: grid; place-items: center; background: rgba(59,130,246,.15); border: 1px solid rgba(96,165,250,.22); font-size: 1.4rem; margin-bottom: 24px; }
    .card h3 { margin: 0 0 12px; font-size: 1.27rem; letter-spacing: -.045em; }
    .card p { margin: 0; color: var(--muted); line-height: 1.65; }
    .mini-meter { position: absolute; left: 26px; right: 26px; bottom: 24px; height: 7px; border-radius: 999px; background: rgba(255,255,255,.08); overflow: hidden; }
    .mini-meter span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--blue), var(--green)); width: 62%; animation: meter 3.4s ease-in-out infinite alternate; }

    .timeline-wrap { margin-top: 52px; display: grid; grid-template-columns: .82fr 1.18fr; gap: 34px; align-items: start; }
    .timeline-panel { position: sticky; top: 100px; border-radius: 34px; padding: 30px; }
    .timeline-panel h3 { font-size: 2rem; letter-spacing: -.07em; margin: 0 0 14px; }
    .timeline-panel p { color: var(--muted); line-height: 1.7; margin: 0 0 22px; }
    .timeline { position: relative; display: grid; gap: 18px; }
    .timeline::before { content: ""; position: absolute; top: 20px; bottom: 20px; left: 34px; width: 2px; background: linear-gradient(to bottom, var(--blue), var(--green)); opacity: .45; }
    .step { position: relative; display: grid; grid-template-columns: 70px 1fr; gap: 18px; align-items: start; }
    .step-number { width: 70px; height: 70px; border-radius: 24px; display: grid; place-items: center; font-weight: 900; color: #fff; background: linear-gradient(135deg, rgba(59,130,246,.75), rgba(34,197,94,.75)); border: 1px solid rgba(255,255,255,.14); box-shadow: 0 20px 50px rgba(59,130,246,.18); z-index: 2; }
    .step-card { border-radius: 28px; padding: 24px; min-height: 130px; }
    .step-card h3 { margin: 0 0 9px; letter-spacing: -.04em; }
    .step-card p { color: var(--muted); line-height: 1.6; margin: 0; }

    .system-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 30px; align-items: center; }
    .benefit-list { display: grid; gap: 14px; margin: 26px 0; }
    .benefit { display: flex; align-items: center; gap: 12px; color: var(--muted); }
    .benefit b { color: #fff; }
    .check { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: rgba(34,197,94,.13); color: var(--green-2); border: 1px solid rgba(34,197,94,.28); font-size: .8rem; flex: 0 0 auto; }
    .terminal { border-radius: 34px; overflow: hidden; background: rgba(3,7,18,.82); border: 1px solid rgba(255,255,255,.12); box-shadow: var(--shadow); }
    .terminal-head { display: flex; justify-content: space-between; align-items: center; padding: 16px 18px; border-bottom: 1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.045); }
    .terminal-title { font: 800 .82rem/1 JetBrains Mono, monospace; color: var(--muted); }
    .terminal pre { min-height: 420px; margin: 0; padding: 24px; white-space: pre-wrap; color: #c7d2fe; font: 600 .88rem/1.8 JetBrains Mono, monospace; }
    .cursor { display: inline-block; width: 10px; height: 1.1em; background: var(--green-2); transform: translateY(3px); animation: blink 1s steps(2) infinite; }

    .services-grid { margin-top: 48px; display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
    .service-card { min-height: 220px; border-radius: 26px; padding: 22px; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.10); transition: transform .25s ease, background .25s ease, border-color .25s ease; }
    .service-card:hover { transform: translateY(-7px); background: rgba(255,255,255,.085); border-color: rgba(34,197,94,.35); }
    .service-card.featured { grid-column: span 2; background: linear-gradient(135deg, rgba(59,130,246,.18), rgba(34,197,94,.13)); border-color: rgba(34,197,94,.28); }
    .service-card .service-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
    .service-card h3 { margin: 0 0 10px; letter-spacing: -.045em; }
    .service-card p { margin: 0; color: var(--muted); line-height: 1.55; font-size: .94rem; }
    .arrow { color: var(--green-2); }

    .niche-grid { margin-top: 44px; display: grid; grid-template-columns: repeat(5,1fr); gap: 14px; }
    .niche { border-radius: 24px; padding: 18px; min-height: 150px; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.1); transition: transform .25s ease, border-color .25s ease, background .25s ease; }
    .niche:hover { transform: translateY(-6px); border-color: rgba(96,165,250,.35); background: rgba(255,255,255,.08); }
    .niche span { display: block; font-size: 1.4rem; margin-bottom: 16px; }
    .niche strong { display: block; letter-spacing: -.035em; }
    .niche small { display: block; color: var(--muted); margin-top: 8px; line-height: 1.45; }

    .compare-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 44px; }
    .compare-card { border-radius: 34px; padding: 30px; position: relative; overflow: hidden; }
    .compare-card h3 { font-size: 2rem; letter-spacing: -.07em; margin: 0 0 22px; }
    .compare-card.before { background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.10); }
    .compare-card.after { background: linear-gradient(135deg, rgba(59,130,246,.14), rgba(34,197,94,.13)); border: 1px solid rgba(34,197,94,.25); }
    .compare-list { display: grid; gap: 14px; }
    .compare-item { display: flex; align-items: center; gap: 12px; color: var(--muted); }
    .bad, .good { width: 25px; height: 25px; border-radius: 50%; display: grid; place-items: center; flex: 0 0 auto; }
    .bad { background: rgba(249,115,22,.12); color: #fdba74; }
    .good { background: rgba(34,197,94,.12); color: var(--green-2); }

    .testimonials { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin-top: 46px; }
    .testimonial { border-radius: 30px; padding: 26px; min-height: 310px; }
    .stars { color: #facc15; letter-spacing: .08em; margin-bottom: 18px; }
    .testimonial p { color: #dbe4ff; line-height: 1.7; margin: 0 0 24px; }
    .person { display: flex; align-items: center; gap: 12px; }
    .avatar { width: 48px; height: 48px; border-radius: 18px; display: grid; place-items: center; background: linear-gradient(135deg, var(--blue), var(--green)); font-weight: 900; }
    .person strong { display: block; }
    .person span { color: var(--muted); font-size: .85rem; }

    .cta { padding: 94px 0; }
    .cta-panel { border-radius: 42px; padding: clamp(34px, 6vw, 70px); text-align: center; position: relative; overflow: hidden; }
    .cta-panel::before { content: ""; position: absolute; inset: -30%; background: radial-gradient(circle, rgba(34,197,94,.18), transparent 30%), radial-gradient(circle at 70% 20%, rgba(59,130,246,.22), transparent 25%); animation: rotateBg 16s linear infinite; }
    .cta-panel > * { position: relative; z-index: 2; }
    .cta h2 { font-size: clamp(2.4rem, 5.5vw, 5.6rem); line-height: .95; letter-spacing: -.085em; margin: 16px auto; max-width: 920px; }
    .cta p { color: var(--muted); font-size: 1.14rem; line-height: 1.7; max-width: 690px; margin: 0 auto 28px; }

    .site-footer { padding: 64px 0 32px; border-top: 1px solid rgba(255,255,255,.09); background: rgba(0,0,0,.14); }
    .footer-grid { display: grid; grid-template-columns: 1.3fr repeat(3,.8fr); gap: 36px; }
    .footer-brand p { color: var(--muted); line-height: 1.7; max-width: 350px; }
    .footer-col h4 { margin: 0 0 16px; }
    .footer-col a { display: block; color: var(--muted); margin: 10px 0; font-size: .94rem; }
    .footer-bottom { margin-top: 44px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.08); color: var(--muted-2); font-size: .9rem; display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; }

    .reveal { opacity: 0; transform: translateY(34px); transition: opacity .75s ease, transform .75s ease; }
    .reveal.in { opacity: 1; transform: translateY(0); }

    @keyframes float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-18px); } }
    @keyframes dashboardFloat { 0%,100% { transform: rotateX(8deg) rotateY(-13deg) rotateZ(1deg) translateY(0); } 50% { transform: rotateX(8deg) rotateY(-13deg) rotateZ(1deg) translateY(-16px); } }
    @keyframes sheen { 0%, 45% { transform: translateX(-80%); } 100% { transform: translateX(80%); } }
    @keyframes grow { from { transform: scaleY(.72); opacity: .75; } to { transform: scaleY(1); opacity: 1; } }
    @keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
    @keyframes meter { from { width: 35%; } to { width: 92%; } }
    @keyframes blink { 0%, 45% { opacity: 1; } 46%, 100% { opacity: 0; } }
    @keyframes rotateBg { to { transform: rotate(360deg); } }

    @media (max-width: 1050px) {
      .hero-grid, .timeline-wrap, .system-grid { grid-template-columns: 1fr; }
      .hero-visual { min-height: 560px; max-width: 650px; width: 100%; margin: 0 auto; }
      .feature-grid, .testimonials { grid-template-columns: repeat(2,1fr); }
      .services-grid { grid-template-columns: repeat(2,1fr); }
      .niche-grid { grid-template-columns: repeat(3,1fr); }
      .timeline-panel { position: relative; top: 0; }
    }
    @media (max-width: 820px) {
      .nav-links, .nav-actions .btn-ghost { display: none; }
      .menu-toggle { display: block; }
      .nav-links.open { display: grid; position: absolute; top: 76px; left: 14px; right: 14px; padding: 18px; background: rgba(5,8,22,.92); border: 1px solid rgba(255,255,255,.12); border-radius: 22px; backdrop-filter: blur(18px); }
      .hero { padding-top: 122px; }
      .proof-row { grid-template-columns: repeat(2,1fr); }
      .feature-grid, .testimonials, .compare-grid, .footer-grid { grid-template-columns: 1fr; }
      .niche-grid { grid-template-columns: repeat(2,1fr); }
      .section { padding: 84px 0; }
      .hero-copy h1 { font-size: clamp(3rem, 16vw, 5.4rem); }
    }
    @media (max-width: 560px) {
      .container { padding: 0 16px; }
      .hero-visual { min-height: 490px; }
      .dashboard { inset: 70px 0 58px 0; padding: 16px; border-radius: 28px; transform: none; animation: float 6s ease-in-out infinite; }
      .dash-grid { grid-template-columns: 1fr; }
      .dash-card:nth-child(3), .dash-card:nth-child(4) { display: none; }
      .floating-card { padding: 12px 14px; }
      .float-1 { top: 18px; left: 6px; }
      .float-2 { bottom: 18px; right: 6px; }
      .float-3 { display: none; }
      .services-grid, .niche-grid { grid-template-columns: 1fr; }
      .service-card.featured { grid-column: span 1; }
      .terminal pre { font-size: .76rem; min-height: 360px; }
    }

/* Ajuste de logo Axos: usa a marca real em PNG transparente no header e footer. */
.brand-logo-link {
  gap: 0;
  min-width: 0;
}

.brand-logo-link img,
.brand-logo-link .custom-logo {
  display: block;
  width: auto;
  height: 48px;
  max-width: 186px;
  object-fit: contain;
  filter: drop-shadow(0 8px 22px rgba(238, 205, 119, .16));
}

.site-header.scrolled .brand-logo-link img,
.site-header.scrolled .brand-logo-link .custom-logo {
  height: 43px;
}

.footer-logo-link img,
.footer-logo-link .custom-logo {
  height: 58px;
  max-width: 224px;
}

@media (max-width: 760px) {
  .brand-logo-link img,
  .brand-logo-link .custom-logo {
    height: 39px;
    max-width: 150px;
  }

  .site-header.scrolled .brand-logo-link img,
  .site-header.scrolled .brand-logo-link .custom-logo {
    height: 37px;
  }

  .footer-logo-link img,
  .footer-logo-link .custom-logo {
    height: 50px;
    max-width: 190px;
  }
}


/* =========================================================
   Axos Premium Motion Gold — ajustes de identidade ouro
   Paleta: preto corporativo + ouro sofisticado + champagne
   ========================================================= */
:root {
  --bg: #050507;
  --bg-2: #0D0A04;
  --panel: rgba(255,255,255,.055);
  --panel-2: rgba(255,255,255,.085);
  --line: rgba(229,199,107,.20);
  --text: #fffaf0;
  --muted: #c8bea6;
  --muted-2: #8f856e;
  --blue: #8C6A1D;
  --blue-2: #E5C76B;
  --green: #C9A227;
  --green-2: #F2D675;
  --cyan: #FFF4C4;
  --danger: #D98B2B;
  --gold: #C9A227;
  --gold-2: #E5C76B;
  --gold-3: #8C6A1D;
  --champagne: #FFF4C4;
  --shadow: 0 30px 90px rgba(0,0,0,.52);
}

body {
  background: #050507;
}

body::before {
  background:
    radial-gradient(circle at 14% 8%, rgba(201,162,39,.22), transparent 28%),
    radial-gradient(circle at 86% 12%, rgba(229,199,107,.14), transparent 31%),
    radial-gradient(circle at 50% 95%, rgba(140,106,29,.20), transparent 36%),
    linear-gradient(180deg, #050507 0%, #100c05 55%, #050507 100%);
}

body::after {
  background-image:
    linear-gradient(rgba(229,199,107,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(229,199,107,.045) 1px, transparent 1px);
}

.site-header.scrolled {
  background: rgba(5,5,7,.78);
  border-color: rgba(229,199,107,.18);
}

.nav-links a:hover,
.footer-col a:hover,
.arrow,
.up {
  color: var(--gold-2);
}

.eyebrow {
  color: var(--gold-2);
  border-color: rgba(229,199,107,.30);
  background: rgba(201,162,39,.075);
  box-shadow: inset 0 0 0 1px rgba(255,244,196,.035);
}

.eyebrow::before {
  background: var(--gold);
  box-shadow: 0 0 22px rgba(229,199,107,.95);
}

.gradient-text {
  background: linear-gradient(90deg, #fff, #fff4c4 35%, #e5c76b 68%, #c9a227 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.glass {
  background:
    linear-gradient(145deg, rgba(255,244,196,.105), rgba(255,255,255,.035)),
    rgba(8,6,3,.55);
  border-color: rgba(229,199,107,.20);
  box-shadow: 0 28px 90px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,244,196,.08);
}

.btn {
  border-color: rgba(229,199,107,.22);
}

.btn:hover {
  border-color: rgba(229,199,107,.65);
  box-shadow: 0 0 24px rgba(201,162,39,.18);
}

.btn-primary {
  color: #111006;
  background: linear-gradient(135deg, #fff4c4 0%, #e5c76b 32%, #c9a227 68%, #8c6a1d 100%);
  box-shadow: 0 0 44px rgba(201,162,39,.30), 0 18px 46px rgba(229,199,107,.16);
  text-shadow: 0 1px 0 rgba(255,255,255,.22);
}

.btn-primary:hover {
  box-shadow: 0 0 60px rgba(229,199,107,.42), 0 24px 70px rgba(201,162,39,.22);
}

.btn-ghost {
  background: rgba(255,244,196,.055);
}

.brand-logo-link img,
.brand-logo-link .custom-logo {
  filter: drop-shadow(0 8px 24px rgba(229,199,107,.20));
}

.orb.one {
  background: rgba(201,162,39,.26);
}

.orb.two {
  background: rgba(229,199,107,.18);
}

.dashboard::before {
  background: linear-gradient(120deg, transparent, rgba(255,244,196,.22), transparent 52%, rgba(201,162,39,.19), transparent);
}

.dashboard,
.dash-card,
.terminal,
.cta-panel,
.compare-card,
.testimonial,
.timeline-panel,
.step-card {
  border-color: rgba(229,199,107,.18);
}

.dash-card {
  background: rgba(9,8,5,.76);
}

.dash-card .value,
.proof-pill strong,
.stat-number {
  color: var(--champagne);
}

.bar {
  background: linear-gradient(to top, rgba(140,106,29,.62), rgba(201,162,39,.94), rgba(255,244,196,.88));
  box-shadow: 0 0 22px rgba(201,162,39,.20);
}

.floating-card {
  border-color: rgba(229,199,107,.22);
  background: rgba(12,9,4,.80);
}

.floating-card strong,
.terminal pre {
  color: #fff4c4;
}

.proof-pill {
  background: rgba(255,244,196,.045);
  border-color: rgba(229,199,107,.15);
}

.trust {
  border-color: rgba(229,199,107,.16);
  background: rgba(0,0,0,.16);
}

.card:hover,
.service-card:hover,
.niche:hover {
  border-color: rgba(229,199,107,.45);
  box-shadow: 0 24px 70px rgba(201,162,39,.12);
}

.card::after {
  background: rgba(201,162,39,.15);
}

.icon-badge {
  background: rgba(201,162,39,.14);
  border-color: rgba(229,199,107,.30);
  box-shadow: inset 0 0 24px rgba(229,199,107,.06);
}

.step-number,
.avatar {
  color: #111006;
  background: linear-gradient(135deg, #fff4c4, #c9a227 62%, #8c6a1d);
  border-color: rgba(255,244,196,.28);
  box-shadow: 0 22px 58px rgba(201,162,39,.18);
}

.check,
.good {
  color: var(--champagne);
  background: rgba(201,162,39,.14);
  border: 1px solid rgba(229,199,107,.25);
}

.service-card.featured,
.compare-card.after {
  background:
    radial-gradient(circle at 18% 0%, rgba(255,244,196,.12), transparent 30%),
    linear-gradient(135deg, rgba(201,162,39,.15), rgba(140,106,29,.10));
  border-color: rgba(229,199,107,.30);
}

.terminal-head {
  background: rgba(255,244,196,.055);
  border-bottom-color: rgba(229,199,107,.14);
}

.terminal-title,
.dash-label {
  color: #d8c786;
}

.cursor {
  background: var(--gold-2);
}

.stars {
  color: var(--gold-2);
  text-shadow: 0 0 16px rgba(229,199,107,.24);
}

.cta-panel::before {
  background:
    radial-gradient(circle, rgba(201,162,39,.20), transparent 30%),
    radial-gradient(circle at 70% 20%, rgba(255,244,196,.16), transparent 25%);
}

.site-footer {
  border-top-color: rgba(229,199,107,.16);
  background: rgba(0,0,0,.22);
}

.footer-bottom {
  border-top-color: rgba(229,199,107,.12);
}

::selection {
  background: rgba(229,199,107,.35);
  color: #fff;
}


/* =========================================================
   Axos Premium Motion Gold — ajuste fino do tamanho do logo v1.0.3
   O logo original foi recortado para remover espaço transparente.
   As alturas abaixo também podem ser controladas pelo Customizer.
   ========================================================= */
:root {
  --axos-header-logo-height: 62px;
  --axos-header-logo-scrolled-height: 54px;
  --axos-footer-logo-height: 78px;
  --axos-mobile-logo-height: 46px;
  --axos-mobile-footer-logo-height: 60px;
}

.nav {
  height: 92px;
  transition: height .25s ease;
}

.site-header.scrolled .nav {
  height: 84px;
}

.brand-logo-link {
  display: inline-flex;
  align-items: center;
  line-height: 0;
  flex: 0 0 auto;
}

.brand-logo-link img,
.brand-logo-link .custom-logo {
  display: block;
  width: auto;
  height: var(--axos-header-logo-height);
  max-height: var(--axos-header-logo-height);
  max-width: 260px;
  object-fit: contain;
}

.site-header.scrolled .brand-logo-link img,
.site-header.scrolled .brand-logo-link .custom-logo {
  height: var(--axos-header-logo-scrolled-height);
  max-height: var(--axos-header-logo-scrolled-height);
}

.footer-logo-link img,
.footer-logo-link .custom-logo {
  height: var(--axos-footer-logo-height);
  max-height: var(--axos-footer-logo-height);
  max-width: 320px;
}

.hero {
  padding-top: 176px;
}

@media (max-width: 980px) {
  .brand-logo-link img,
  .brand-logo-link .custom-logo {
    max-width: 220px;
  }
}

@media (max-width: 820px) {
  .nav {
    height: 78px;
  }

  .site-header.scrolled .nav {
    height: 74px;
  }

  .nav-links.open {
    top: 78px;
  }

  .brand-logo-link img,
  .brand-logo-link .custom-logo,
  .site-header.scrolled .brand-logo-link img,
  .site-header.scrolled .brand-logo-link .custom-logo {
    height: var(--axos-mobile-logo-height);
    max-height: var(--axos-mobile-logo-height);
    max-width: 178px;
  }

  .footer-logo-link img,
  .footer-logo-link .custom-logo {
    height: var(--axos-mobile-footer-logo-height);
    max-height: var(--axos-mobile-footer-logo-height);
    max-width: 235px;
  }

  .hero {
    padding-top: 132px;
  }
}

@media (max-width: 430px) {
  .brand-logo-link img,
  .brand-logo-link .custom-logo,
  .site-header.scrolled .brand-logo-link img,
  .site-header.scrolled .brand-logo-link .custom-logo {
    height: 42px;
    max-height: 42px;
    max-width: 160px;
  }
}


/* =========================================================
   Axos Premium Motion Gold — correção anti-estouro do logo v1.0.4
   Objetivo: impedir que logos grandes/gerados pelo Customizer quebrem o header.
   ========================================================= */
:root {
  --axos-header-logo-height: 44px;
  --axos-header-logo-scrolled-height: 40px;
  --axos-footer-logo-height: 64px;
  --axos-mobile-logo-height: 34px;
  --axos-mobile-footer-logo-height: 52px;
}

.site-header {
  overflow: visible;
}

.site-header .container.nav,
.nav {
  min-height: 72px;
  height: 72px;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 18px;
  transition: height .25s ease, min-height .25s ease;
}

.site-header.scrolled .container.nav,
.site-header.scrolled .nav {
  min-height: 68px;
  height: 68px;
}

.brand,
.brand-logo-link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  line-height: 0;
  min-width: 0;
  flex: 0 1 auto;
  max-width: clamp(138px, 20vw, 190px);
  overflow: hidden;
}

.brand-logo-link img,
.brand-logo-link .custom-logo,
.brand-logo-link .brand-logo-img,
.custom-logo-link img,
img.custom-logo {
  display: block !important;
  width: auto !important;
  height: var(--axos-header-logo-height) !important;
  max-height: var(--axos-header-logo-height) !important;
  max-width: 100% !important;
  object-fit: contain !important;
  object-position: left center !important;
}

.site-header.scrolled .brand-logo-link img,
.site-header.scrolled .brand-logo-link .custom-logo,
.site-header.scrolled .custom-logo-link img,
.site-header.scrolled img.custom-logo {
  height: var(--axos-header-logo-scrolled-height) !important;
  max-height: var(--axos-header-logo-scrolled-height) !important;
}

.nav-links {
  min-width: 0;
  flex: 1 1 auto;
  justify-content: center;
}

.nav-actions {
  flex: 0 0 auto;
  white-space: nowrap;
}

.footer-logo-link,
.footer-brand .brand-logo-link {
  max-width: 260px;
  overflow: hidden;
}

.footer-logo-link img,
.footer-logo-link .custom-logo,
.footer-brand img.custom-logo {
  display: block !important;
  width: auto !important;
  height: var(--axos-footer-logo-height) !important;
  max-height: var(--axos-footer-logo-height) !important;
  max-width: 100% !important;
  object-fit: contain !important;
}

.hero {
  padding-top: 142px;
}

@media (max-width: 1080px) {
  .nav-links {
    gap: 14px;
    font-size: .84rem;
  }

  .brand,
  .brand-logo-link {
    max-width: 160px;
  }

  .nav-actions .btn-small {
    padding: 10px 13px;
    font-size: .82rem;
  }
}

@media (max-width: 860px) {
  .site-header .container.nav,
  .nav,
  .site-header.scrolled .container.nav,
  .site-header.scrolled .nav {
    min-height: 68px;
    height: 68px;
  }

  .brand,
  .brand-logo-link {
    max-width: 142px;
  }

  .brand-logo-link img,
  .brand-logo-link .custom-logo,
  .brand-logo-link .brand-logo-img,
  .custom-logo-link img,
  img.custom-logo,
  .site-header.scrolled .brand-logo-link img,
  .site-header.scrolled .brand-logo-link .custom-logo,
  .site-header.scrolled .custom-logo-link img,
  .site-header.scrolled img.custom-logo {
    height: var(--axos-mobile-logo-height) !important;
    max-height: var(--axos-mobile-logo-height) !important;
    max-width: 100% !important;
  }

  .nav-links.open {
    top: 68px;
  }

  .nav-actions .btn {
    display: none;
  }

  .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .hero {
    padding-top: 112px;
  }
}

@media (max-width: 430px) {
  .site-header .container.nav,
  .nav {
    gap: 10px;
  }

  .brand,
  .brand-logo-link {
    max-width: 126px;
  }

  .brand-logo-link img,
  .brand-logo-link .custom-logo,
  .brand-logo-link .brand-logo-img,
  .custom-logo-link img,
  img.custom-logo {
    height: 31px !important;
    max-height: 31px !important;
  }
}


/* --------------------------------------------------------------------------
   Axos Premium Motion Gold — SEO/FAQ section v1.0.5
   -------------------------------------------------------------------------- */

.faq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 34px;
}

.faq-card {
  padding: 26px;
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(255,244,196,.09), rgba(255,255,255,.035));
  border: 1px solid rgba(229,199,107,.18);
  box-shadow: 0 20px 60px rgba(0,0,0,.22);
}

.faq-card h3 {
  margin: 0 0 10px;
  font-size: 1.08rem;
  letter-spacing: -.02em;
  color: #fff7d6;
}

.faq-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.68;
}

.seo-helper-note {
  margin-top: 22px;
  color: rgba(255,255,255,.54);
  font-size: .92rem;
}

@media (max-width: 780px) {
  .faq-grid {
    grid-template-columns: 1fr;
  }
}


/* --------------------------------------------------------------------------
   Axos Premium Motion Gold — Navegação agêntica v1.0.6
   -------------------------------------------------------------------------- */

.skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 99999;
  transform: translateY(-140%);
  padding: 12px 16px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ffe7a3, #c9a227 55%, #8c6a1d);
  color: #161000;
  font-weight: 800;
  box-shadow: 0 18px 42px rgba(201,162,39,.35);
  transition: transform .2s ease;
}

.skip-link:focus {
  transform: translateY(0);
  outline: 3px solid rgba(255,255,255,.75);
  outline-offset: 3px;
}

.agentic-contact {
  margin-top: 34px;
  padding: 24px;
  border-radius: 28px;
  background: linear-gradient(145deg, rgba(255,244,196,.10), rgba(255,255,255,.045));
  border: 1px solid rgba(229,199,107,.20);
  text-align: left;
}

.agentic-contact-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.agentic-contact-header h3 {
  margin: 0 0 6px;
  font-size: 1.25rem;
  color: #fff7d6;
  letter-spacing: -.03em;
}

.agentic-contact-header p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

.agentic-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  border-radius: 999px;
  padding: 8px 12px;
  color: #fff7d6;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: rgba(201,162,39,.12);
  border: 1px solid rgba(229,199,107,.25);
}

.agentic-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.agentic-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.agentic-field.agentic-field-full {
  grid-column: 1 / -1;
}

.agentic-field label {
  color: rgba(255,255,255,.86);
  font-size: .88rem;
  font-weight: 700;
}

.agentic-field input,
.agentic-field select,
.agentic-field textarea {
  width: 100%;
  border: 1px solid rgba(229,199,107,.20);
  border-radius: 16px;
  padding: 13px 14px;
  color: #fff;
  background: rgba(255,255,255,.065);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.agentic-field select {
  color-scheme: dark;
}

.agentic-field textarea {
  min-height: 110px;
  resize: vertical;
}

.agentic-field input::placeholder,
.agentic-field textarea::placeholder {
  color: rgba(255,255,255,.40);
}

.agentic-field input:focus,
.agentic-field select:focus,
.agentic-field textarea:focus {
  border-color: rgba(229,199,107,.72);
  box-shadow: 0 0 0 4px rgba(201,162,39,.15);
  background: rgba(255,255,255,.085);
}

.agentic-form-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 16px;
}

.agentic-form-note {
  margin: 0;
  color: rgba(255,255,255,.58);
  font-size: .86rem;
  line-height: 1.45;
}

.agentic-status {
  margin: 12px 0 0;
  min-height: 1.3em;
  color: #fff7d6;
  font-weight: 700;
  font-size: .92rem;
}

@media (max-width: 780px) {
  .agentic-contact-header,
  .agentic-form-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .agentic-form-grid {
    grid-template-columns: 1fr;
  }

  .agentic-badge {
    width: fit-content;
  }
}


/* --------------------------------------------------------------------------
   Axos Premium Motion Gold — Performance/Core Web Vitals v1.0.7
   -------------------------------------------------------------------------- */

:root {
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

html {
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

code,
pre,
.terminal,
.dash-label {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

img,
svg,
video,
canvas {
  max-width: 100%;
  height: auto;
}

.brand-logo-img {
  aspect-ratio: 296 / 119;
}

.dashboard,
.glass,
.card,
.service-card,
.niche,
.testimonial,
.faq-card,
.agentic-contact,
.cta-panel {
  contain: paint;
}

.floating-card,
.dashboard,
.card,
.service-card,
.niche,
.btn,
.reveal {
  will-change: transform;
}

@supports (content-visibility: auto) {
  main > .section,
  main > .cta {
    content-visibility: auto;
    contain-intrinsic-size: auto 900px;
  }

  main > .hero {
    content-visibility: visible;
  }
}

:focus-visible {
  outline: 3px solid rgba(255, 244, 196, .86);
  outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }

  .reveal {
    opacity: 1 !important;
    transform: none !important;
  }

  .logos-track {
    animation: none !important;
    transform: none !important;
  }
}


/* --------------------------------------------------------------------------
   Axos v1.0.8 — SEO/Lighthouse safety
   Mantém performance, mas evita que auditorias SEO interpretem conteúdo abaixo
   da dobra como omitido/adiado por content-visibility.
   -------------------------------------------------------------------------- */
@supports (content-visibility: auto) {
  main > .section,
  main > .cta,
  main > .hero {
    content-visibility: visible;
    contain-intrinsic-size: auto;
  }
}

/* Links e botões com área mínima confortável para Lighthouse/UX */
.nav-links a,
.footer-col a,
.niche,
.btn {
  min-height: 44px;
}


/* v1.0.9 - Página SEO local: Contabilidade para dentistas em Limeira */
.local-hero {
  padding: 150px 0 96px;
  position: relative;
  overflow: hidden;
}
.local-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 18%, rgba(201,162,39,.26), transparent 32%),
    radial-gradient(circle at 82% 8%, rgba(229,199,107,.14), transparent 28%),
    linear-gradient(180deg, rgba(5,8,22,.2), rgba(5,8,22,1));
  pointer-events: none;
}
.local-hero .container { position: relative; z-index: 1; }
.local-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(320px, .76fr);
  gap: 52px;
  align-items: center;
}
.local-hero h1 {
  margin: 18px 0 20px;
  font-size: clamp(2.6rem, 5.2vw, 5.9rem);
  line-height: .94;
  letter-spacing: -.075em;
}
.local-hero p {
  color: var(--muted);
  font-size: clamp(1.04rem, 1.6vw, 1.22rem);
  line-height: 1.75;
  max-width: 720px;
}
.local-proof-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 30px;
}
.local-proof {
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(229,199,107,.18);
}
.local-proof strong {
  display: block;
  font-size: 1.25rem;
  color: #f8e6a4;
  margin-bottom: 5px;
}
.local-proof span { color: var(--muted); font-size: .92rem; line-height: 1.45; }
.local-panel {
  border-radius: 30px;
  padding: 28px;
  border: 1px solid rgba(229,199,107,.2);
  background: linear-gradient(145deg, rgba(229,199,107,.12), rgba(255,255,255,.04));
}
.local-panel h2 { margin: 0 0 14px; font-size: 1.48rem; }
.local-check-list { display: grid; gap: 12px; margin: 24px 0 0; }
.local-check {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  color: var(--muted);
  line-height: 1.5;
}
.local-check .check { flex: 0 0 auto; }
.local-keyword-bar {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 26px;
}
.local-keyword-bar span {
  border: 1px solid rgba(229,199,107,.16);
  background: rgba(229,199,107,.07);
  color: #f8e6a4;
  border-radius: 999px;
  padding: 9px 12px;
  font-size: .88rem;
  font-weight: 750;
}
.local-content-grid {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 36px;
  align-items: start;
}
.local-sticky {
  position: sticky;
  top: 100px;
}
.local-list-card {
  padding: 26px;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.045);
}
.local-list-card h3 { margin-top: 0; }
.local-list-card ul { margin: 16px 0 0; padding-left: 20px; color: var(--muted); line-height: 1.8; }
.local-rich-text {
  display: grid;
  gap: 22px;
}
.local-rich-block {
  padding: 26px;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.035));
}
.local-rich-block h2,
.local-rich-block h3 { margin-top: 0; }
.local-rich-block p { color: var(--muted); line-height: 1.75; }
.local-rich-block a { color: #f8e6a4; font-weight: 800; }
.local-faq-card {
  padding: 24px;
  border-radius: 24px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(229,199,107,.15);
}
.local-faq-card h3 { margin-top: 0; }
.local-faq-card p { color: var(--muted); line-height: 1.7; margin-bottom: 0; }
@media (max-width: 900px) {
  .local-hero-grid,
  .local-content-grid { grid-template-columns: 1fr; }
  .local-proof-grid { grid-template-columns: 1fr; }
  .local-sticky { position: static; }
  .local-hero { padding-top: 126px; }
}

/* v1.0.10 - Conteúdos relacionados para dentistas em Limeira */
.article-hero {
  padding-bottom: 88px;
}
.cluster-section {
  position: relative;
}
.cluster-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 34px;
}
.cluster-card {
  position: relative;
  min-height: 240px;
  padding: 26px;
  border-radius: 28px;
  background: linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.035));
  border: 1px solid rgba(241, 197, 103, .18);
  box-shadow: 0 22px 70px rgba(0,0,0,.24);
  overflow: hidden;
  transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
}
.cluster-card::before {
  content: "";
  position: absolute;
  inset: -1px;
  background: radial-gradient(circle at top right, rgba(245, 213, 139, .22), transparent 36%);
  pointer-events: none;
}
.cluster-card:hover {
  transform: translateY(-7px);
  border-color: rgba(245, 213, 139, .48);
  box-shadow: 0 28px 90px rgba(213, 168, 64, .14);
}
.cluster-card span {
  position: relative;
  display: inline-flex;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(245, 213, 139, .09);
  border: 1px solid rgba(245, 213, 139, .24);
  color: #f8e6a4;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.cluster-card h3 {
  position: relative;
  margin: 18px 0 10px;
  font-size: 1.32rem;
  line-height: 1.18;
  letter-spacing: -.035em;
}
.cluster-card p {
  position: relative;
  color: var(--muted);
  line-height: 1.68;
  margin: 0 0 20px;
}
.cluster-card a {
  position: relative;
  display: inline-flex;
  color: #f8e6a4;
  font-weight: 900;
  text-decoration: none;
}
.cluster-card a::after {
  content: "→";
  margin-left: 8px;
}
.pillar-card {
  border-color: rgba(245, 213, 139, .42);
  background: linear-gradient(145deg, rgba(214, 169, 73, .16), rgba(255,255,255,.04));
}
.cluster-backlink-box {
  margin-top: 22px;
  padding: 16px;
  border-radius: 18px;
  background: rgba(245, 213, 139, .07);
  border: 1px solid rgba(245, 213, 139, .18);
}
.cluster-backlink-box strong,
.cluster-backlink-box a {
  display: block;
}
.cluster-backlink-box strong {
  color: #fff4c8;
  margin-bottom: 6px;
}
.cluster-backlink-box a,
.local-list-card a {
  color: #f8e6a4;
  font-weight: 800;
  text-decoration: none;
}
.official-sources-box {
  border-color: rgba(245, 213, 139, .22);
}
.article-source-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
}
.article-source-links a {
  display: inline-flex;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  color: #f8e6a4;
  text-decoration: none;
  font-weight: 800;
}
@media (max-width: 900px) {
  .cluster-grid { grid-template-columns: 1fr; }
  .cluster-card { min-height: auto; }
}
