/* Perfectum Limpezas — extensões v1.40 (carrega depois de styles-1280.css; reutiliza as variáveis e componentes existentes) */
.skip-link{position:absolute;left:-999px;top:8px;z-index:100;background:#24c8ff;color:#001018;padding:10px 16px;border-radius:10px;font-weight:800}
.skip-link:focus{left:12px}
:where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--cyan-2);outline-offset:3px}

/* ---------- Navegação com submenus ---------- */
.nav-center{gap:26px}
.has-sub{position:relative}
.sub-toggle{background:none;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font:inherit}
.sub-toggle::before{content:"";order:2;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7}
.sub-menu{position:absolute;left:-16px;top:calc(100% + 12px);min-width:290px;padding:10px;display:none;background:#071c2a;border:1px solid rgba(36,200,255,.2);border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.45);z-index:60}
.has-sub.open>.sub-menu{display:grid;gap:2px}
@media (hover:hover) and (min-width:1101px){.has-sub:hover>.sub-menu,.has-sub:focus-within>.sub-menu{display:grid;gap:2px}.has-sub::after{content:"";position:absolute;left:0;right:0;top:100%;height:14px}}
.sub-menu a{display:block;padding:11px 14px;border-radius:12px;color:#d7e7f1;font-size:14px;font-weight:600}
.sub-menu a:hover,.sub-menu a:focus-visible{background:rgba(36,200,255,.1);color:#fff}
.sub-menu .sub-all{margin-top:6px;border-top:1px solid rgba(255,255,255,.07);border-radius:0 0 12px 12px;color:var(--cyan-2);font-weight:800}
.mobile-menu .mm-group{display:grid;gap:0;padding:6px 0 4px;border-bottom:1px solid rgba(255,255,255,.05)}
.mobile-menu .mm-group>span{font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan-2);padding:8px 0 2px}
.mobile-menu .mm-group a{padding:9px 0 9px 12px;font-size:15px;color:#d7e7f1}
@media (max-width:1100px){.nav-center,.nav-actions{display:none}.menu-toggle{display:block;margin-left:auto}}

/* ---------- Breadcrumb ---------- */
.crumbs{padding:18px 0 0;font-size:13px;color:var(--muted)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.crumbs li+li::before{content:"/";margin-right:6px;color:var(--muted-2)}
.crumbs a{color:#cfe3ee}.crumbs a:hover{color:var(--cyan-2)}
.crumbs [aria-current]{color:var(--muted)}

/* ---------- Hero de serviço / região ---------- */
.pf-hero{padding:34px 0 50px;background:linear-gradient(180deg,rgba(7,28,42,.78),rgba(4,17,27,.98)),radial-gradient(circle at 15% 10%,rgba(24,200,255,.12),transparent 30%)}
.pf-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center;margin-top:22px}
.pf-hero h1{margin:0;font-size:clamp(34px,4.4vw,62px);line-height:1.03;letter-spacing:-.045em;font-weight:900}
.pf-hero h1 .accent{color:var(--cyan)}
.pf-hero .lead{margin:20px 0 0;max-width:640px;color:var(--muted);font-size:18px}
.pf-hero-media{border-radius:var(--radius-xl);overflow:hidden;border:1px solid rgba(36,200,255,.16);box-shadow:var(--shadow)}
.pf-hero-media img{width:100%;height:auto;aspect-ratio:10/7.2;object-fit:cover}
.pf-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.pf-chips span{padding:9px 14px;border:1px solid rgba(36,200,255,.18);border-radius:999px;background:rgba(8,24,38,.7);color:#dcebf5;font-size:12px;font-weight:700}

/* ---------- Seções ---------- */
.pf-section{padding:68px 0;border-top:1px solid rgba(255,255,255,.03)}
.pf-section.alt{background:#061725}
.pf-head{max-width:760px;margin-bottom:28px}
.pf-head h2{margin:0;font-size:clamp(28px,3.2vw,44px);line-height:1.06;letter-spacing:-.04em;font-weight:900}
.pf-head h2 .accent{color:var(--cyan)}
.pf-head p{margin:14px 0 0;color:var(--muted);font-size:17px}
.pf-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pf-card{padding:26px;background:linear-gradient(180deg,rgba(10,34,52,.92),rgba(7,24,38,.96));border:1px solid rgba(36,200,255,.14);border-radius:var(--radius-lg);box-shadow:var(--shadow)}
.pf-card h3{margin:0 0 10px;font-size:21px;font-weight:900;letter-spacing:-.03em}
.pf-card p{margin:0;color:var(--muted)}
.pf-card .list-clean{margin-top:4px}
.pf-prose p{color:#c6dae6;font-size:17px;margin:0 0 16px;max-width:820px}
.pf-steps{counter-reset:s;display:grid;gap:12px;margin:0;padding:0;list-style:none}
.pf-steps li{counter-increment:s;position:relative;padding:16px 18px 16px 62px;background:rgba(8,24,38,.7);border:1px solid rgba(36,200,255,.12);border-radius:16px;color:#d8e8f2}
.pf-steps li::before{content:counter(s);position:absolute;left:16px;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(36,200,255,.12);border:1px solid rgba(36,200,255,.3);color:var(--cyan-2);font-weight:900;font-size:14px}
.pf-diffs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pf-diffs .pf-card strong{display:block;font-size:19px;margin-bottom:8px}
.pf-diffs .pf-card span{color:var(--muted);font-size:15px}
.pf-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pf-link-card{display:block;padding:22px;border-radius:var(--radius-lg);background:linear-gradient(180deg,rgba(10,34,52,.92),rgba(7,24,38,.96));border:1px solid rgba(36,200,255,.14);transition:.2s ease}
.pf-link-card:hover,.pf-link-card:focus-visible{transform:translateY(-3px);border-color:rgba(36,200,255,.4)}
.pf-link-card h3{margin:0 0 8px;font-size:20px;font-weight:900;letter-spacing:-.03em}
.pf-link-card p{margin:0 0 14px;color:var(--muted);font-size:15px}
.pf-link-card b{color:var(--cyan-2);font-size:14px}
.pf-link-grid.four{grid-template-columns:repeat(4,1fr)}
.pf-links-inline{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.pf-links-inline a{padding:9px 14px;border:1px solid rgba(36,200,255,.22);border-radius:999px;color:#dcebf5;font-size:14px;font-weight:700}
.pf-links-inline a:hover{border-color:var(--cyan);color:#fff}

/* ---------- FAQ ---------- */
.pf-faq{display:grid;gap:12px;max-width:900px}
.pf-faq details{border:1px solid rgba(36,200,255,.14);border-radius:16px;background:#071b2a;padding:0 20px}
.pf-faq summary{cursor:pointer;list-style:none;padding:18px 28px 18px 0;font-weight:800;font-size:17px;position:relative}
.pf-faq summary::-webkit-details-marker{display:none}
.pf-faq summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:24px;color:var(--cyan)}
.pf-faq details[open] summary::after{content:"–"}
.pf-faq details p{margin:0 0 18px;color:var(--muted)}

/* ---------- Faixa do slogan ---------- */
.pf-slogan{padding:54px 0;text-align:center;background:linear-gradient(90deg,rgba(3,15,24,.96),rgba(8,36,58,.9));border-top:1px solid rgba(36,200,255,.14);border-bottom:1px solid rgba(36,200,255,.1)}
.pf-slogan p{margin:0;font-size:clamp(26px,3.6vw,46px);font-weight:900;letter-spacing:-.04em;line-height:1.1}
.pf-slogan p span{color:var(--cyan)}
.pf-slogan small{display:block;margin-top:12px;color:var(--muted);font-size:15px}

/* ---------- CTA + formulário ---------- */
.pf-cta{padding:70px 0;background:linear-gradient(90deg,rgba(3,15,24,.97),rgba(3,16,26,.85)),url('assets/mockups/hero-wide.webp') center/cover no-repeat;border-top:1px solid rgba(36,200,255,.14)}
.pf-cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:start}
.pf-cta h2{margin:0;font-size:clamp(28px,3.4vw,46px);line-height:1.05;letter-spacing:-.04em;font-weight:900}
.pf-cta h2 .accent{color:var(--cyan)}
.pf-cta p.sub{margin:16px 0 0;color:var(--muted);font-size:17px}
.pf-cta .cta-direct{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.pf-form{padding:24px}
.pf-form .field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#9ab5c6 50%),linear-gradient(135deg,#9ab5c6 50%,transparent 50%);background-position:calc(100% - 20px) 21px,calc(100% - 15px) 21px;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}
.pf-form .field textarea{min-height:84px}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted);line-height:1.45}
.consent input{margin-top:3px;width:18px;height:18px;min-height:0;accent-color:#24c8ff;flex:none}
.consent a{color:var(--cyan-2);text-decoration:underline}
.form-status{min-height:1px}
.form-status a{color:var(--cyan-2);text-decoration:underline}
.form-status.success{padding:12px 14px;border:1px solid rgba(90,218,176,.35);border-radius:12px;background:rgba(90,218,176,.08);color:#c8f5e6}
.form-status.error{padding:12px 14px;border:1px solid rgba(255,159,160,.4);border-radius:12px;background:rgba(255,159,160,.08)}
.form-hint{margin:12px 0 0;font-size:12px;color:var(--muted-2)}
.btn[disabled]{opacity:.7;cursor:progress;transform:none}

/* ---------- Artigos ---------- */
.pf-article-grid{display:grid;grid-template-columns:minmax(0,760px) 320px;gap:48px;align-items:start;justify-content:center}
.pf-article h2{margin:36px 0 12px;font-size:clamp(23px,2.4vw,30px);letter-spacing:-.03em;line-height:1.15;font-weight:900}
.pf-article p{color:#c6dae6;font-size:17px;margin:0 0 16px}
.pf-article ul{margin:0 0 18px;padding-left:20px;color:#c6dae6;display:grid;gap:8px;font-size:17px}
.pf-article .lead{font-size:20px;color:#e3f0f8}
.pf-aside{position:sticky;top:120px;display:grid;gap:16px}
.pf-meta{color:var(--muted-2);font-size:13px;margin-top:14px}
.pf-hero.article{padding-bottom:30px}
.pf-hero.article h1{font-size:clamp(30px,3.8vw,52px);max-width:900px}

@media (max-width:1100px){.pf-link-grid.four{grid-template-columns:repeat(2,1fr)}.pf-article-grid{grid-template-columns:1fr}.pf-aside{position:static}}
@media (max-width:900px){.pf-hero-grid,.pf-cta-grid,.pf-two,.pf-diffs,.pf-link-grid{grid-template-columns:1fr}.pf-hero-media{order:-1}.pf-hero-media img{aspect-ratio:16/10}.pf-section{padding:52px 0}}
@media (max-width:560px){.pf-link-grid.four{grid-template-columns:1fr}.pf-hero .lead{font-size:16px}.pf-card{padding:20px}.pf-form{padding:18px}.pf-cta{padding:52px 0}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pf-link-card,.btn{transition:none}}

.nav-actions .btn{white-space:nowrap;padding:12px 16px}

/* Barra de contato rápido (somente celular) */
.pf-mobilebar{display:none}
@media(max-width:700px){
.pf-mobilebar{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:78;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:rgba(4,17,27,.96);border-top:1px solid rgba(37,201,255,.18);backdrop-filter:blur(8px)}
.pf-mobilebar a{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:12px;font-weight:700;font-size:14px;color:#e9f6fb;text-decoration:none;background:#0b2b40;border:1px solid rgba(37,201,255,.22)}
.pf-mobilebar .pf-mb-wa{background:#1fa855;border-color:#1fa855;color:#fff}
.floating-wa{display:none!important}
body{padding-bottom:68px}
}
@media(max-width:700px){.perfectum-chat-launcher{opacity:0;pointer-events:none;transform:scale(.8)}body.pf-scrolled .perfectum-chat-launcher{opacity:1;pointer-events:auto;transform:none}}

/* Nota no Google */
.pf-gr{padding:8px 0 28px}
.pf-gr-box{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;max-width:560px;margin:0 auto;padding:16px 22px;border-radius:18px;background:#0b2b40;border:1px solid rgba(37,201,255,.22);color:#e9f6fb;text-decoration:none}
.pf-gr-box:hover{border-color:rgba(37,201,255,.5)}
.pf-gr-score{font-size:34px;font-weight:800;color:#fff;line-height:1}
.pf-gr-stars{color:#ffc83d;font-size:20px;letter-spacing:2px}
.pf-gr-txt{display:grid;text-align:left}.pf-gr-txt small{color:#8fb3c4;font-size:12px}
.pf-gr-qs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.pf-gr-q{margin:0;padding:18px;border-radius:16px;background:#081a29;border:1px solid rgba(37,201,255,.14)}
.pf-gr-q span{color:#ffc83d;letter-spacing:2px}.pf-gr-q blockquote{margin:8px 0 10px;color:#dcecf3;font-size:15px;line-height:1.5}
.pf-gr-q figcaption{color:#8fb3c4;font-size:12px}
@media(max-width:700px){.pf-gr-qs{grid-template-columns:1fr}}
