/*
 * Auto Resgate Cardoso — folha de estilos principal
 * Paleta extraída da logo: amarelo #F8B810 e grafite #383840, com BRANCO como cor de base
 * das páginas (o cabeçalho e o rodapé permanecem grafite porque a logo tem letras brancas).
 * Para trocar as cores do site, edite apenas as variáveis em :root abaixo.
 */

/* ---------- Reset básico ---------- */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; border: 0 solid; }
html { line-height: 1.5; -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
h1, h2, h3, h4 { font-size: inherit; font-weight: inherit; }
ul, ol { list-style: none; }
img, svg, video { display: block; max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; color: inherit; letter-spacing: inherit; background: transparent; border-radius: 0; }
button { cursor: pointer; }
textarea { resize: vertical; }
summary { cursor: pointer; }

/* ---------- Variáveis de cor e tipografia ---------- */
:root {
  --font-sans: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --font-display: "Barlow Condensed", "Arial Narrow", Impact, sans-serif;
  --radius: 0.35rem;

  --background: #ffffff;
  --foreground: #1a1a1f;
  --card: #ffffff;
  --primary: #f8b810;                     /* amarelo da logo */
  --primary-foreground: #1a1a1f;
  --brand-ink: #835600;      /* âmbar escuro: texto/ícones sobre fundo claro */
  --secondary: #f3f4f6;
  --muted-foreground: #5d646c;
  --border: #e3e5e9;
  --input: #cdd1d7;

  --graphite-900: #0c0d12;  /* rodapé / hero */
  --graphite-800: #131319;  /* seções escuras */
  --graphite-700: #0e0f15;
  --surface: #f6f7f9;         /* cinza claríssimo para alternar com o branco */
  --ink-soft: #3d434b;
  --shadow-card: 0 1px 2px rgba(16, 18, 27, .05), 0 12px 32px -14px rgba(16, 18, 27, .16);
}

/* ---------- Base ---------- */
body { background-color: var(--background); color: var(--foreground); font-family: var(--font-sans); letter-spacing: 0; margin: 0; overflow-x: hidden; }
h1, h2, h3 { font-family: var(--font-display); letter-spacing: 0; font-weight: 800; }
h3 { font-weight: 700; }
a { text-decoration: none; }
button, a, input, select, textarea { outline-offset: 3px; }
:focus-visible { outline: 3px solid var(--brand-ink); }
.site-header :focus-visible, .site-footer :focus-visible, .home-hero :focus-visible, .section-dark :focus-visible { outline-color: var(--primary); }
.dropdown :focus-visible, .m-sub :focus-visible { outline-color: var(--brand-ink); }
[hidden] { display: none !important; }

.skip-link { position: absolute; left: 1rem; top: -4rem; z-index: 100; background: var(--primary); color: var(--primary-foreground); padding: .7rem 1rem; font-weight: 800; border-radius: var(--radius); }
.skip-link:focus { top: 1rem; }

/* ---------- Utilitários ---------- */
.shell { width: min(1180px, calc(100% - 2rem)); margin-inline: auto; }
.icon { width: 1.25rem; height: 1.25rem; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.eyebrow { display: inline-flex; color: var(--brand-ink); font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }

/* ---------- Botões ---------- */
.action { display: inline-flex; min-height: 3rem; align-items: center; justify-content: center; gap: .55rem; border-radius: var(--radius); padding: .75rem 1.1rem; font-size: .82rem; font-weight: 800; text-transform: uppercase; transition: transform .2s, background .2s, border-color .2s; }
.action[disabled] { opacity: .65; cursor: wait; }
.action-primary { background: var(--primary); color: var(--primary-foreground); border: 1px solid var(--primary); box-shadow: 0 10px 24px rgba(248, 184, 16, .25); }
.action-primary:hover { transform: translateY(-2px); background: #daa20e; border-color: #daa20e; }
.action-outline { border: 1px solid currentColor; border-color: color-mix(in srgb, currentColor 35%, transparent); color: inherit; background: transparent; }
.action-outline:hover { border-color: currentColor; transform: translateY(-2px); }
.action-ghost { color: var(--foreground); }
.action-ghost:hover { background: var(--secondary); }

/* ---------- Cabeçalho ---------- */
.site-header { position: sticky; top: 0; z-index: 50; background: rgba(21, 22, 27, 0.96); color: #f8f8f8; -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(248, 184, 16, .35); }
.topline { background: var(--primary); color: var(--primary-foreground); font-size: .68rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.topline-inner { min-height: 1.75rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.topline span, .trust-row span, .footer-status { display: inline-flex; align-items: center; gap: .4rem; }
.topline .icon, .trust-row .icon, .footer-status .icon { width: .9rem; height: .9rem; }
.nav-row { min-height: 4.75rem; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: .75rem; }
.brand { min-width: 0; display: block; }
.brand img { width: 10.2rem; height: auto; display: block; }
.desktop-nav { display: none; }
.header-cta { display: none; }
.menu-button { width: 2.75rem; height: 2.75rem; display: grid; place-items: center; border: 1px solid rgba(255, 255, 255, 0.18); border-radius: var(--radius); background: transparent; color: inherit; }
.menu-button .icon { width: 1.5rem; height: 1.5rem; }
.menu-button .icon-close { display: none; }
.menu-button[aria-expanded="true"] .icon-open { display: none; }
.menu-button[aria-expanded="true"] .icon-close { display: block; }
.mobile-nav { display: grid; padding: .75rem 1rem 1rem; border-top: 1px solid rgba(255, 255, 255, 0.1); max-height: calc(100svh - 6.5rem); overflow-y: auto; overscroll-behavior: contain; }
.mobile-nav > a:not(.action) { padding: .9rem .25rem; color: inherit; border-bottom: 1px solid rgba(255, 255, 255, 0.08); font-weight: 650; }
.mobile-nav > a[aria-current="page"] { color: var(--primary); }
.mobile-nav .action { margin-top: 1rem; }

/* ---------- Rodapé ---------- */
.site-footer { background: var(--graphite-900); color: #c2c3cb; padding-top: 4rem; }
.footer-grid { display: grid; gap: 2.5rem; }
.footer-grid > div { display: flex; flex-direction: column; align-items: flex-start; gap: .75rem; }
.footer-grid h2 { color: #f8f8f8; font-size: 1.2rem; margin: 0 0 .5rem; text-transform: uppercase; }
.footer-grid a, .footer-grid span { color: inherit; }
.footer-grid a:not(.action):hover { color: var(--primary); }
.footer-grid a.action-primary { color: var(--primary-foreground); }
.footer-grid a:not(.action) { display: inline-flex; align-items: center; gap: .5rem; }
.footer-logo { width: 11rem; height: auto; }
.footer-grid p { max-width: 23rem; line-height: 1.7; font-size: .88rem; }
.footer-status { color: var(--primary); font-weight: 800; text-transform: uppercase; font-size: .78rem; }
.footer-bottom { border-top: 1px solid rgba(248, 184, 16, .22); margin-top: 3rem; padding-block: 1.25rem; font-size: .75rem; }
.floating-whatsapp { position: fixed; right: 1rem; bottom: 1rem; z-index: 60; border-radius: 999px; box-shadow: 0 12px 32px rgba(6, 6, 6, 0.35); }

/* ---------- Heros ---------- */
.home-hero { min-height: min(760px, calc(100svh - 6.5rem)); display: flex; align-items: center; position: relative; color: #f8f8f8; isolation: isolate; background: var(--graphite-900); }
.home-hero-bg { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 62% center; z-index: -2; }
.home-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(5, 5, 9, 0.95) 0%, rgba(5, 5, 9, 0.72) 48%, rgba(5, 5, 9, 0.12) 100%); }
.hero-copy { padding-block: 5rem; max-width: 44rem; }
.hero-copy h1, .page-hero h1 { font-size: clamp(2.9rem, 8vw, 5.4rem); line-height: .92; text-transform: uppercase; margin: .7rem 0 1rem; max-width: 780px; text-shadow: 0 2px 18px rgba(5, 5, 9, 0.45); }
.hero-copy > p, .page-hero-copy > p { font-size: clamp(1rem, 2vw, 1.16rem); line-height: 1.7; color: #d6d7dd; max-width: 42rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1.7rem 0; }
.trust-row { display: flex; flex-wrap: wrap; gap: 1.25rem; color: #d6d7dd; font-size: .8rem; font-weight: 750; text-transform: uppercase; }
.page-hero { background: #fff; color: var(--foreground); min-height: 32rem; display: flex; align-items: center; position: relative; isolation: isolate; overflow: hidden; border-bottom: 1px solid var(--border); }
.page-hero::before { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 5px; z-index: 1; background: linear-gradient(90deg, var(--primary) 0 200px, transparent 200px); }
.page-hero-compact { min-height: 22rem; background: linear-gradient(180deg, #fff 0%, var(--surface) 100%); }
.page-hero-bg { position: absolute; top: 0; right: 0; width: 66%; height: 100%; max-width: none; object-fit: cover; object-position: 68% center; z-index: -2; }
.page-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #fff 0%, #fff 38%, rgba(255, 255, 255, .78) 54%, rgba(255, 255, 255, .05) 100%); }
.page-hero-inner { padding-block: 3rem 5rem; width: min(1180px, calc(100% - 2rem)); margin-inline: auto; }
.page-hero-copy { max-width: 50rem; }
.page-hero h1 { text-shadow: none; color: var(--foreground); }
.page-hero-copy > p { color: var(--ink-soft); }
.page-hero .trust-row { color: var(--ink-soft); }
.page-hero .trust-row .icon { color: var(--brand-ink); }
.page-hero .action-outline { background: #fff; color: var(--foreground); border-color: #bfc4cc; }
.page-hero .action-outline:hover { border-color: var(--foreground); }
.breadcrumb { display: flex; flex-wrap: wrap; gap: .5rem; font-size: .72rem; color: var(--muted-foreground); margin-bottom: 3rem; }
.breadcrumb a { color: inherit; }
.breadcrumb a:hover { color: var(--brand-ink); text-decoration: underline; }

/* ---------- Seções ---------- */
.section { padding-block: 5rem; }
.section-alt { background: var(--surface); }
.section-dark { background: var(--graphite-800); color: #f8f8f8; }
.section-heading { max-width: 42rem; margin-bottom: 2.5rem; }
.section-heading h2, .cta-band h2 { font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1; text-transform: uppercase; margin: .55rem 0 .8rem; }
.section-heading p, .cta-band p { color: var(--muted-foreground); line-height: 1.7; }
.section-heading.light p { color: #afb0b7; }
.section p + .action, .section .check-list + .action { margin-top: 1.25rem; }
.section-dark .check-list { margin-bottom: 1.5rem; }
.section-dark .check-list + .action { margin-top: 0; }
.section-dark .stats-strip { border-color: rgba(255, 255, 255, .14); }
.section-dark .stats-strip div { border-color: rgba(255, 255, 255, .14); }
.section-dark .stats-strip span { color: #afb0b7; }
.home-hero .eyebrow, .section-dark .eyebrow, .site-footer .eyebrow, .section-dark .check-list .icon, .section-dark .text-link, .section-dark .step::before { color: var(--primary); }

.cards-grid { display: grid; grid-template-columns: 1fr; gap: 1rem; }
.service-card { background: var(--card); border: 1px solid var(--border); box-shadow: var(--shadow-card); padding: 1.5rem; border-radius: var(--radius); min-height: 17rem; display: flex; flex-direction: column; align-items: flex-start; transition: transform .2s, border-color .2s, box-shadow .2s; }
.service-card:hover { transform: translateY(-4px); border-color: var(--primary); box-shadow: 0 16px 40px rgba(22, 22, 22, 0.1); }
.service-card h3 { font-size: 1.65rem; text-transform: uppercase; margin: 1.2rem 0 .6rem; line-height: 1.1; }
.service-card p { color: var(--muted-foreground); line-height: 1.65; font-size: .9rem; }
.service-card.compact { min-height: 0; }
.card-icon { width: 3rem; height: 3rem; display: grid; place-items: center; border-radius: var(--radius); background: rgba(248, 184, 16, .22); color: var(--brand-ink); }
.card-icon .icon { width: 1.5rem; height: 1.5rem; }
.text-link { margin-top: auto; padding-top: 1rem; min-height: 2.75rem; box-sizing: border-box; display: inline-flex; align-items: flex-end; padding-bottom: .35rem; gap: .45rem; color: var(--brand-ink); font-size: .77rem; font-weight: 850; text-transform: uppercase; }
.text-link .icon { width: 1rem; height: 1rem; }
.split { display: grid; gap: 2.5rem; align-items: center; }
.split.top { align-items: start; }
.split > * { min-width: 0; }
.feature-image { width: 100%; min-height: 22rem; height: 100%; object-fit: cover; border-radius: var(--radius); }
.check-list { display: grid; gap: .6rem; padding: 0; list-style: none; }
.check-list li { display: flex; gap: .65rem; align-items: flex-start; }
.check-list .icon { flex: none; width: 1.1rem; height: 1.1rem; margin-top: .2rem; color: var(--brand-ink); }
.check-list + .action { margin-top: 1.5rem; }
.stats-strip { display: grid; grid-template-columns: repeat(2, 1fr); border-block: 1px solid var(--border); }
.stats-strip div { padding: 1.25rem; border-right: 1px solid var(--border); }
.stats-strip strong { display: block; font-family: var(--font-display); font-size: 1.6rem; text-transform: uppercase; }
.stats-strip span { font-size: .75rem; color: var(--muted-foreground); }

/* ---------- Faixa de chamada (CTA) ---------- */
.cta-band { background: var(--primary); color: var(--primary-foreground); padding-block: 3.5rem; }
.cta-band-inner { display: grid; gap: 1.5rem; align-items: center; }
.cta-band .eyebrow, .cta-band p { color: rgba(38, 38, 43, .8); }
.cta-band .action { background: var(--primary-foreground); color: var(--primary); border-color: var(--primary-foreground); justify-self: start; box-shadow: none; }
.cta-band .action:hover { background: #000; border-color: #000; }

/* ---------- Passos, FAQ, catálogo ---------- */
.steps { display: grid; gap: 1rem; counter-reset: step; }
.step { counter-increment: step; border-top: 2px solid var(--border); padding: 1.5rem 0; }
.step::before { content: "0" counter(step); color: var(--brand-ink); font-family: var(--font-display); font-weight: 800; }
.step h3 { font-size: 1.5rem; margin: .5rem 0; text-transform: uppercase; }
.step p { color: var(--muted-foreground); line-height: 1.6; }
.faq-list { border-top: 1px solid var(--border); }
.faq-list details { border-bottom: 1px solid var(--border); padding: 1.1rem 0; }
.faq-list summary { cursor: pointer; font-weight: 750; list-style: none; display: flex; justify-content: space-between; gap: 1rem; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { flex: none; color: var(--brand-ink); font-weight: 800; transition: transform .2s; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list p { color: var(--muted-foreground); line-height: 1.7; padding-right: 2rem; margin-top: .6rem; }
.catalog-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); }
.product-placeholder { min-height: 18rem; border: 1px dashed #c9ced6; background: var(--surface); padding: 1.5rem; display: flex; flex-direction: column; justify-content: flex-end; }
.product-placeholder .placeholder-visual { flex: 1; min-height: 8rem; display: grid; place-items: center; color: var(--muted-foreground); }
.product-placeholder .placeholder-visual .icon { width: 2.5rem; height: 2.5rem; }
.product-placeholder h3 { text-transform: uppercase; font-size: 1.4rem; margin: .5rem 0; line-height: 1.1; }
.product-placeholder p { color: var(--muted-foreground); font-size: .85rem; line-height: 1.6; }

/* ---------- Formulários ---------- */
.lead-form { background: var(--card); border: 1px solid var(--border); box-shadow: var(--shadow-card); border-top: 4px solid var(--primary); padding: clamp(1.25rem, 4vw, 2.5rem); border-radius: var(--radius); }
.form-grid { display: grid; gap: 1rem; margin-bottom: 1.25rem; }
.lead-form label { display: grid; gap: .45rem; font-size: .78rem; font-weight: 750; }
.lead-form input, .lead-form select, .lead-form textarea { width: 100%; border: 1px solid var(--input); background: var(--surface); color: var(--foreground); border-radius: var(--radius); min-height: 3rem; padding: .75rem; font: inherit; font-weight: 500; box-sizing: border-box; }
.lead-form input:focus, .lead-form select:focus, .lead-form textarea:focus { border-color: var(--brand-ink); }
.form-status { display: flex; gap: .5rem; align-items: flex-start; color: var(--muted-foreground); font-size: .83rem; line-height: 1.5; margin-top: 1rem; }
.form-status .icon { color: var(--brand-ink); flex: none; width: 1rem; height: 1rem; margin-top: .1rem; }
.form-status a { color: var(--brand-ink); font-weight: 800; text-decoration: underline; }
.form-hint { color: var(--muted-foreground); font-size: .78rem; line-height: 1.5; margin-top: 1rem; }
.contact-grid { display: grid; gap: 1rem; margin-bottom: 2rem; }
.contact-item { border-left: 3px solid var(--primary); padding: 1rem 1.25rem; background: var(--surface); }
.contact-item span { display: block; font-size: .72rem; color: var(--muted-foreground); text-transform: uppercase; }
.contact-item strong { display: block; margin-top: .35rem; }
.contact-item a { color: inherit; display: inline-block; padding-block: .5rem; margin-block: -.5rem; }
.contact-item a:hover { color: var(--brand-ink); }

/* ---------- Responsivo ---------- */
@media (min-width: 700px) {
  .cards-grid { grid-template-columns: repeat(2, 1fr); }
  .form-grid { grid-template-columns: repeat(2, 1fr); }
  .form-grid .full { grid-column: 1 / -1; }
  .steps { grid-template-columns: repeat(4, 1fr); }
  .step { padding-right: 1.25rem; }
  .cta-band-inner { grid-template-columns: 1fr auto; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
  .split { grid-template-columns: 1fr 1fr; }
  .contact-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 1050px) {
  .nav-row { grid-template-columns: auto minmax(0, 1fr) auto; gap: 2rem; }
  .desktop-nav { display: flex; align-items: center; justify-content: flex-end; gap: 1.35rem; min-width: 0; }
  .desktop-nav > a, .desktop-nav .nav-item > a { color: #d4d5da; font-size: .86rem; font-weight: 700; white-space: nowrap; padding-block: 1.8rem; border-bottom: 2px solid transparent; }
  .desktop-nav > a:hover, .desktop-nav > a[aria-current="page"],
  .desktop-nav .nav-item > a:hover, .desktop-nav .nav-item > a[aria-current], .desktop-nav .nav-item.open > a { color: #f8f8f8; border-color: var(--primary); }
  .header-cta { display: inline-flex; }
  .menu-button { display: none; }
  .mobile-nav { display: none !important; }
  .cards-grid { grid-template-columns: repeat(3, 1fr); }
  .stats-strip { grid-template-columns: repeat(4, 1fr); }
  .footer-grid { grid-template-columns: 1.5fr repeat(4, 1fr); gap: 2rem; }
}
@media (max-width: 480px) {
  .floating-whatsapp span { display: none; }
  .floating-whatsapp { width: 3.5rem; height: 3.5rem; padding: 0; }
  .hero-actions .action { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}


/* =====================================================================
   MENU SUSPENSO "BATERIAS" (desktop: passar o mouse / celular: tocar)
   ===================================================================== */
.nav-item { position: relative; display: flex; align-items: center; }
.nav-item > a { display: inline-flex; align-items: center; gap: .3rem; }
.chev { width: .85rem; height: .85rem; transition: transform .2s; }
.nav-item:hover .chev, .nav-item.open .chev { transform: rotate(180deg); }
.dropdown { position: absolute; top: 100%; left: 50%; width: min(35rem, 92vw); z-index: 70; background: #fff; color: var(--foreground); border-top: 3px solid var(--primary); border-radius: 0 0 .6rem .6rem; padding: 1rem; box-shadow: 0 28px 60px -14px rgba(8, 9, 13, .5); opacity: 0; visibility: hidden; transform: translate(-50%, 10px); transition: opacity .18s, transform .18s, visibility .18s; }
.dropdown::before { content: ""; position: absolute; left: 0; right: 0; top: -1rem; height: 1rem; }
.nav-item:hover .dropdown, .nav-item.open .dropdown { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.dropdown-title { font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--muted-foreground); margin: 0 .5rem .5rem; }
.dropdown-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .25rem; }
.dropdown-link, .m-sub a { display: flex; align-items: center; gap: .75rem; padding: .55rem .6rem; border-radius: .45rem; color: var(--foreground); }
.dropdown-link:hover, .m-sub a:hover, .dropdown-link[aria-current="page"], .m-sub a[aria-current="page"] { background: var(--surface); }
.dropdown-link[aria-current="page"] strong, .m-sub a[aria-current="page"] strong { color: var(--brand-ink); }
.dropdown-thumb { width: 3.1rem; height: 3.1rem; flex: none; display: grid; place-items: center; background: #f1f2f5; border-radius: .45rem; }
.dropdown-thumb img { width: 2.6rem; height: 2.6rem; object-fit: contain; }
.dropdown-link strong, .m-sub a strong { display: block; font-family: var(--font-display); font-weight: 800; text-transform: uppercase; font-size: 1.15rem; line-height: 1; letter-spacing: .01em; }
.dropdown-link small, .m-sub a small { display: block; margin-top: .2rem; font-size: .7rem; color: var(--muted-foreground); line-height: 1.25; }
.dropdown-foot { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-top: .75rem; padding: .85rem .5rem 0; border-top: 1px solid var(--border); }
.dropdown-foot span { font-size: .78rem; color: var(--muted-foreground); }
.dropdown-foot a { display: inline-flex; align-items: center; gap: .35rem; color: var(--brand-ink); font-size: .75rem; font-weight: 850; text-transform: uppercase; padding-block: .3rem; border: 0; }
.dropdown-foot a:hover { text-decoration: underline; }

/* Menu móvel: acordeão */
.m-group { border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.m-toggle { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 1rem; padding: .9rem .25rem; font-weight: 650; color: inherit; text-align: left; }
.m-toggle[aria-expanded="true"], .m-toggle[aria-current] { color: var(--primary); }
.m-toggle[aria-expanded="true"] .chev { transform: rotate(180deg); }
.m-toggle .chev { width: 1.1rem; height: 1.1rem; }
.m-sub { display: grid; gap: .1rem; margin: 0 0 .85rem; padding: .4rem; background: #fff; color: var(--foreground); border-radius: .55rem; border-top: 3px solid var(--primary); animation: dropIn .22s ease-out; }
.m-sub .dropdown-thumb { width: 2.8rem; height: 2.8rem; }
.m-sub .dropdown-thumb img { width: 2.3rem; height: 2.3rem; }
.m-sub .m-all { justify-content: space-between; margin-top: .25rem; border-top: 1px solid var(--border); border-radius: 0 0 .4rem .4rem; padding-top: .85rem; color: var(--brand-ink); font-size: .78rem; font-weight: 850; text-transform: uppercase; }
@keyframes dropIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }

/* =====================================================================
   CARDS DE MARCA / LINHA DE PRODUTO
   ===================================================================== */
.brand-grid { display: grid; gap: 1.1rem; grid-template-columns: 1fr; }
@media (min-width: 620px) { .brand-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1050px) { .brand-grid { grid-template-columns: repeat(3, 1fr); } }
.brand-card, .line-card { display: flex; flex-direction: column; background: #fff; color: inherit; border: 1px solid var(--border); border-radius: .6rem; overflow: hidden; box-shadow: var(--shadow-card); transition: transform .2s, border-color .2s, box-shadow .2s; }
.brand-card:hover { transform: translateY(-4px); border-color: var(--primary); box-shadow: 0 22px 44px -18px rgba(16, 18, 27, .28); }
.brand-media { display: grid; place-items: center; aspect-ratio: 16 / 10; padding: 1.1rem; background: radial-gradient(circle at 50% 38%, #fff 0%, #eef0f3 82%); }
.brand-media img { width: auto; max-width: 74%; max-height: 100%; object-fit: contain; filter: drop-shadow(0 16px 14px rgba(0, 0, 0, .22)); transition: transform .3s; }
.brand-card:hover .brand-media img { transform: scale(1.06) translateY(-3px); }
.brand-body { display: flex; flex-direction: column; align-items: flex-start; gap: .55rem; padding: 1.25rem 1.3rem 1.4rem; flex: 1; }
.brand-body h3 { font-size: 1.85rem; line-height: 1; text-transform: uppercase; }
.brand-body p { color: var(--muted-foreground); font-size: .9rem; line-height: 1.6; }
.brand-tags { display: flex; flex-wrap: wrap; gap: .35rem; }
.brand-tags span { background: var(--secondary); color: var(--ink-soft); border-radius: 999px; padding: .2rem .6rem; font-size: .66rem; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; }
.brand-body .text-link { margin-top: auto; }

.line-grid { display: grid; gap: 1.25rem; grid-template-columns: 1fr; }
@media (min-width: 700px) { .line-grid.n2, .line-grid.n3, .line-grid.n4 { grid-template-columns: repeat(2, 1fr); } .line-grid.n1 { grid-template-columns: minmax(0, 40rem); } }
@media (min-width: 1050px) { .line-grid.n3 { grid-template-columns: repeat(3, 1fr); } .line-grid.n4 { grid-template-columns: repeat(4, 1fr); } }
.line-card .brand-media { aspect-ratio: 4 / 3; }
.line-card .brand-media img { max-width: 80%; }
.line-card .brand-body h3 { font-size: 1.5rem; }
.line-card .brand-body .action { margin-top: auto; width: 100%; }

.mini-brands { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fill, minmax(11.5rem, 1fr)); }
.mini-brand { display: flex; align-items: center; gap: .75rem; padding: .7rem .85rem; background: #fff; border: 1px solid var(--border); border-radius: .5rem; color: inherit; transition: border-color .2s, transform .2s; }
.mini-brand:hover { border-color: var(--primary); transform: translateY(-2px); }
.mini-brand strong { font-family: var(--font-display); font-weight: 800; font-size: 1.2rem; text-transform: uppercase; line-height: 1; }

/* =====================================================================
   PÁGINA DE MARCA
   ===================================================================== */
.brand-hero { position: relative; background: #fff; overflow: hidden; border-bottom: 1px solid var(--border); isolation: isolate; }
.brand-hero::before { content: ""; position: absolute; right: -12%; top: -35%; width: 64%; aspect-ratio: 1; border-radius: 50%; z-index: -1; background: radial-gradient(circle, rgba(248, 184, 16, .22) 0%, rgba(248, 184, 16, 0) 66%); }
.brand-hero::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 5px; background: linear-gradient(90deg, var(--primary) 0 200px, transparent 200px); }
.brand-hero-inner { display: grid; gap: 2.25rem; align-items: center; padding-block: 2.25rem 4.5rem; }
.brand-hero .breadcrumb { margin-bottom: 1.75rem; padding-top: 1.5rem; }
.brand-hero h1 { font-size: clamp(2.7rem, 7vw, 4.7rem); line-height: .94; text-transform: uppercase; margin: .6rem 0 1rem; }
.brand-hero h1 em { font-style: normal; color: var(--brand-ink); }
.brand-hero .lead { color: var(--ink-soft); line-height: 1.7; font-size: 1.05rem; max-width: 38rem; }
.brand-hero .trust-row { color: var(--ink-soft); }
.brand-hero .trust-row .icon { color: var(--brand-ink); }
.brand-hero .action-outline { background: #fff; color: var(--foreground); border-color: #bfc4cc; }
.brand-hero .action-outline:hover { border-color: var(--foreground); }
.brand-stage { position: relative; display: grid; place-items: center; padding: clamp(1.5rem, 4vw, 2.75rem); border: 1px solid var(--border); border-radius: 1rem; background: radial-gradient(circle at 50% 34%, #fff 0%, #eceef2 82%); box-shadow: 0 34px 60px -34px rgba(16, 18, 27, .4); }
.brand-stage img { width: min(100%, 27rem); height: auto; filter: drop-shadow(0 28px 22px rgba(0, 0, 0, .28)); }
.brand-badge { position: absolute; left: 1rem; bottom: 1rem; background: var(--primary); color: var(--primary-foreground); font-size: .7rem; font-weight: 850; text-transform: uppercase; letter-spacing: .04em; padding: .4rem .75rem; border-radius: 999px; }
@media (min-width: 900px) { .brand-hero-inner { grid-template-columns: 1.05fr .95fr; gap: 3.5rem; } }

.facts { background: #fff; }
.facts .stats-strip { grid-template-columns: repeat(2, 1fr); border-top: 0; }
@media (min-width: 900px) { .facts .stats-strip { grid-template-columns: repeat(4, 1fr); } }
.facts .stats-strip div { min-width: 0; padding: 1.1rem 1rem; }
.facts .stats-strip strong { font-size: clamp(1.35rem, 5.4vw, 1.9rem); color: var(--foreground); overflow-wrap: anywhere; line-height: 1.1; }
.facts .stats-strip span { display: block; margin-top: .15rem; line-height: 1.4; }

.prose p { color: var(--ink-soft); line-height: 1.8; }
.prose p + p { margin-top: 1rem; }
.source-note { margin-top: 1.25rem; font-size: .76rem; color: var(--muted-foreground); line-height: 1.5; }
.highlight-box { background: var(--surface); border: 1px solid var(--border); border-left: 4px solid var(--primary); border-radius: var(--radius); padding: 1.5rem; }
.highlight-box h3 { font-size: 1.5rem; text-transform: uppercase; margin-bottom: 1rem; }
.steps.three { grid-template-columns: 1fr; }
@media (min-width: 700px) { .steps.three { grid-template-columns: repeat(3, 1fr); } }
.section .steps .step { border-top-color: var(--primary); }
.lead-list { margin-top: 1.5rem; }
.phone-line { display: inline-flex; align-items: center; gap: .55rem; margin-top: 1.5rem; font-weight: 800; color: var(--foreground); }
.phone-line .icon { color: var(--brand-ink); }
.phone-line:hover { color: var(--brand-ink); }

section[id] { scroll-margin-top: 7rem; }

/* =====================================================================
   PÁGINA BATERIA MOURA — visual azul e amarelo inspirado na marca Moura
   (tudo escopado em body.theme-moura; as demais páginas não mudam)
   ===================================================================== */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.theme-moura {
  --m-blue-900: #0b2566;
  --m-blue-700: #123a8f;
  --m-blue-500: #2456c7;
  --m-yellow: #f7b500;
  --m-tile: #e3e9f2;
  --m-ink: #0d1b3e;
  --m-font: "Montserrat", "Manrope", system-ui, sans-serif;
}
.theme-moura main h1, .theme-moura main h2, .theme-moura main h3 { font-family: var(--m-font); text-transform: none; letter-spacing: -.01em; }
.theme-moura :focus-visible { outline-color: var(--m-blue-500); }

.m-btn { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 3.1rem; padding: .8rem 1.5rem; border-radius: .4rem; font-family: var(--m-font); font-weight: 700; font-size: .98rem; border: 2px solid transparent; transition: background .2s, border-color .2s; }
.m-btn-yellow { background: var(--m-yellow); color: var(--m-ink); }
.m-btn-yellow:hover { background: #ffc629; }
.m-btn-ghost { color: #fff; border-color: rgba(255,255,255,.4); }
.m-btn-ghost:hover { border-color: #fff; }
.m-btn-blue { background: var(--m-blue-700); color: #fff; width: 100%; }
.m-btn-blue:hover { background: var(--m-blue-900); }

/* Hero */
.m-hero { position: relative; overflow: hidden; color: #fff; isolation: isolate;
  background:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px) 0 0 / 44px 44px,
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px) 0 0 / 44px 44px,
    radial-gradient(circle at 78% 40%, #2d63d6 0%, var(--m-blue-700) 45%, var(--m-blue-900) 100%); }
.m-hero::after { content: ""; position: absolute; z-index: -1; right: -8%; bottom: -30%; width: 55%; aspect-ratio: 1; background: var(--m-yellow); clip-path: polygon(40% 0, 100% 0, 100% 100%, 0 100%); opacity: .95; }
.m-hero .breadcrumb { color: rgba(255,255,255,.7); padding-top: 1.5rem; margin-bottom: 1.5rem; }
.m-hero .breadcrumb a:hover { color: #fff; }
.m-hero-inner { display: grid; gap: 2rem; align-items: center; padding-bottom: 3.5rem; }
.m-kicker { font-family: var(--m-font); font-weight: 600; color: var(--m-yellow); font-size: .95rem; }
.m-hero h1 { font-size: clamp(2rem, 4.6vw, 3.25rem); line-height: 1.12; font-weight: 700; margin: .6rem 0 1rem; max-width: 18ch; }
.m-lead { color: rgba(255,255,255,.85); line-height: 1.7; max-width: 36rem; }
.m-hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }
.m-hero-stage { position: relative; display: grid; place-items: center; }
.m-hero-stage img { width: min(100%, 26rem); filter: drop-shadow(0 34px 26px rgba(0,0,0,.4)); }
.m-seal { position: absolute; top: 4%; right: 6%; width: 7.5rem; aspect-ratio: 1; border-radius: 50%; background: #fff; color: var(--m-blue-700); display: grid; place-content: center; text-align: center; font-family: var(--m-font); font-weight: 700; font-size: .92rem; line-height: 1.15; box-shadow: 0 14px 30px rgba(0,0,0,.25); }
.m-seal strong { color: var(--m-yellow); font-weight: 800; }
@media (min-width: 900px) { .m-hero-inner { grid-template-columns: 1.1fr .9fr; padding-bottom: 4.5rem; } }

/* Seções */
.m-section { padding-block: 4.5rem; }
.m-heading { text-align: center; max-width: 44rem; margin: 0 auto 2.5rem; }
.m-heading.left { text-align: left; margin-inline: 0; }
.m-heading h2 { font-size: clamp(1.75rem, 3.6vw, 2.5rem); line-height: 1.15; font-weight: 600; color: var(--m-ink); }
.m-heading p { color: var(--muted-foreground); margin-top: .6rem; line-height: 1.6; }

/* Blocos de linha (estilo grade de categorias) */
.m-tiles { display: grid; gap: .6rem; grid-template-columns: 1fr; }
@media (min-width: 600px) { .m-tiles { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1050px) { .m-tiles { grid-template-columns: repeat(4, 1fr); } }
.m-tile { display: flex; flex-direction: column; align-items: center; text-align: center; background: var(--m-tile); color: var(--m-ink); padding: 1.6rem 1.25rem 1.25rem; min-height: 24rem; border-bottom: 4px solid transparent; transition: border-color .2s, background .2s; }
.m-tile:hover { border-color: var(--m-yellow); background: #dbe3ef; }
.m-tile h3 { font-size: 1.3rem; font-weight: 700; }
.m-tile p { font-size: .85rem; line-height: 1.55; color: #3d4a66; margin-top: .5rem; max-width: 24ch; }
.m-tile img { margin-top: auto; width: 72%; max-height: 12rem; object-fit: contain; filter: drop-shadow(0 16px 14px rgba(0,0,0,.2)); transition: transform .3s; }
.m-tile:hover img { transform: translateY(-4px); }
.m-tile-go { display: inline-flex; align-items: center; gap: .35rem; margin-top: 1rem; font-family: var(--m-font); font-weight: 700; font-size: .85rem; color: var(--m-blue-700); }
.m-tile-go .icon { width: 1rem; height: 1rem; }

/* Faixa "Descubra a bateria ideal" */
.m-finder { position: relative; overflow: hidden; background: linear-gradient(120deg, var(--m-blue-900), var(--m-blue-500)); color: #fff; isolation: isolate; }
.m-finder-bg { position: absolute; z-index: -1; inset: 0 0 0 auto; width: 48%; background: var(--m-yellow); clip-path: polygon(30% 0, 100% 0, 100% 100%, 0 100%); }
.m-finder-inner { display: grid; gap: 1.5rem; align-items: center; padding-block: 3.5rem; }
.m-finder h2 { font-size: clamp(1.8rem, 4vw, 2.75rem); font-weight: 600; line-height: 1.15; max-width: 16ch; }
.m-search { max-width: 30rem; margin-top: 1.5rem; }
.m-search-bar { display: flex; background: #fff; border-radius: .4rem; overflow: hidden; }
.m-search label { flex: 1; }
.m-search input { width: 100%; padding: .95rem 1rem; color: var(--m-ink); font-size: .95rem; }
.m-search input::placeholder { color: #7a8397; }
.m-search button { width: 3.25rem; display: grid; place-items: center; background: var(--m-yellow); color: var(--m-ink); }
.m-finder .form-status { color: #fff; margin-top: .5rem; font-size: .85rem; }
.m-finder .form-status a { color: var(--m-yellow); text-decoration: underline; }
.m-finder-hint { font-size: .82rem; color: rgba(255,255,255,.75); margin-top: .75rem; }
.m-finder-inner > img { justify-self: center; width: min(80%, 20rem); filter: drop-shadow(0 26px 22px rgba(0,0,0,.35)); }
@media (max-width: 899px) { .m-finder-bg { width: 100%; top: 62%; clip-path: polygon(0 20%, 100% 0, 100% 100%, 0 100%); } }
@media (min-width: 900px) { .m-finder-inner { grid-template-columns: 1.2fr .8fr; } }

/* Sobre a Moura */
.m-about { background: #f1f4f9; }
.m-about h2 { font-size: clamp(1.7rem, 3.4vw, 2.4rem); font-weight: 600; color: var(--m-ink); line-height: 1.15; margin-bottom: 1.25rem; }
.m-about .prose p { line-height: 1.75; color: var(--ink-soft); }
.m-about .prose p + p { margin-top: 1rem; }
.m-about-grid { display: grid; gap: 2.5rem; align-items: center; }
.m-facts { display: grid; grid-template-columns: repeat(2, 1fr); gap: .6rem; }
.m-facts div { background: var(--m-blue-700); color: #fff; padding: 1.4rem 1.2rem; }
.m-facts div:nth-child(2) { background: var(--m-yellow); color: var(--m-ink); }
.m-facts dt { font-family: var(--m-font); font-weight: 800; font-size: clamp(1.4rem, 3vw, 1.9rem); line-height: 1.1; }
.m-facts dd { margin-top: .35rem; font-size: .82rem; line-height: 1.45; opacity: .9; }
@media (min-width: 900px) { .m-about-grid { grid-template-columns: 1.15fr .85fr; gap: 4rem; } }

.m-order .check-list .icon { color: var(--m-blue-500); }
.theme-moura .lead-form { border-top: 4px solid var(--m-blue-700); }

/* Faixa de telefone e WhatsApp */
.m-call { background: #e9edf3; padding-block: 3.25rem; text-align: center; }
.m-call h2 { font-size: clamp(1.1rem, 2.4vw, 1.5rem); font-weight: 700; color: var(--m-blue-900); letter-spacing: .06em; text-transform: uppercase; }
.m-call-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; margin-top: 1.5rem; }
.m-callbtn { display: inline-flex; align-items: center; gap: .8rem; padding: .7rem 1.4rem; border-radius: .3rem; color: #fff; text-align: left; font-family: var(--m-font); min-width: 15rem; transition: filter .2s; }
.m-callbtn:hover { filter: brightness(1.12); }
.m-callbtn .icon { width: 2rem; height: 2rem; }
.m-callbtn small { display: block; font-size: .85rem; font-weight: 500; }
.m-callbtn strong { display: block; font-size: 1.3rem; font-weight: 800; line-height: 1.1; }
.m-callbtn-blue { background: var(--m-blue-900); }
.m-callbtn-blue small, .m-callbtn-blue .icon { color: #5fb4ff; }
.m-callbtn-green { background: #25963f; }

.m-others { padding-block: 3.5rem; }
.m-others .mini-brand:hover { border-color: var(--m-blue-500); }

/* Aviso ambiental e de marca */
.m-legal { background: var(--m-yellow); color: var(--m-ink); padding-block: 1.75rem; text-align: center; }
.m-legal p { max-width: 60rem; margin-inline: auto; font-family: var(--m-font); font-weight: 600; font-size: .85rem; line-height: 1.6; }
.m-legal-small { margin-top: .6rem; font-weight: 500 !important; font-size: .75rem !important; opacity: .8; }

/* Menu em telas médias (1050–1199px): letras um pouco menores para caber ao lado da logo */
@media (min-width: 1050px) and (max-width: 1199px) {
  .nav-row { gap: 1.25rem; }
  .desktop-nav { gap: 1rem; }
  .desktop-nav > a, .desktop-nav .nav-item > a { font-size: .78rem; }
}
@media (max-width: 599px) { .m-tile { min-height: 0; } .m-tile img { width: 55%; margin-top: 1rem; } }

/* =====================================================================
   VITRINE DE PEÇAS E PÁGINA DE PRODUTO
   ===================================================================== */
.product-grid { display: grid; gap: 1.1rem; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); }
.product-card { display: flex; flex-direction: column; background: #fff; color: inherit; border: 1px solid var(--border); border-radius: .6rem; overflow: hidden; box-shadow: var(--shadow-card); transition: border-color .2s, transform .2s; }
.product-card:hover { border-color: var(--primary); transform: translateY(-3px); }
.product-media { aspect-ratio: 1; background: #fff; display: grid; place-items: center; border-bottom: 1px solid var(--border); }
.product-media img { width: 88%; height: 88%; object-fit: contain; }
.product-body { display: flex; flex-direction: column; gap: .5rem; padding: 1.1rem 1.2rem 1.2rem; flex: 1; }
.product-cat { font-size: .7rem; font-weight: 800; color: var(--brand-ink); }
.product-body h3 { font-size: 1.35rem; line-height: 1.1; text-transform: uppercase; }
.product-body p { font-size: .88rem; color: var(--muted-foreground); line-height: 1.55; }
.product-specs { display: flex; flex-wrap: wrap; gap: .35rem; }
.product-specs li { background: var(--secondary); border-radius: 999px; padding: .2rem .6rem; font-size: .72rem; font-weight: 700; color: var(--ink-soft); }
.product-body .text-link { margin-top: auto; }

.pd { padding-block: 1.5rem 4rem; }
.pd .breadcrumb { margin-bottom: 1.5rem; }
.pd-grid { display: grid; gap: 2rem; align-items: start; }
@media (min-width: 900px) { .pd-grid { grid-template-columns: 1fr 1fr; gap: 3.5rem; } }
.pd-main { aspect-ratio: 1; border: 1px solid var(--border); border-radius: .6rem; background: #fff; display: grid; place-items: center; overflow: hidden; }
.pd-main img { width: 92%; height: 92%; object-fit: contain; }
.pd-thumbs { display: flex; gap: .6rem; margin-top: .75rem; }
.pg-thumb { width: 5.5rem; aspect-ratio: 1; border: 2px solid var(--border); border-radius: .45rem; background: #fff; overflow: hidden; padding: .2rem; }
.pg-thumb img { width: 100%; height: 100%; object-fit: contain; }
.pg-thumb[aria-current="true"], .pg-thumb:hover { border-color: var(--primary); }
.pd-cat { font-size: .78rem; font-weight: 800; color: var(--brand-ink); }
.pd-info h1 { font-size: clamp(2rem, 4.5vw, 3rem); line-height: 1; text-transform: uppercase; margin: .5rem 0 1rem; }
.pd-lead { color: var(--ink-soft); line-height: 1.7; }
.pd-keys { display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem; margin: 1.5rem 0; }
@media (min-width: 520px) { .pd-keys { grid-template-columns: repeat(4, 1fr); } }
.pd-keys div { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: .75rem .85rem; }
.pd-keys dt { font-size: .7rem; color: var(--muted-foreground); font-weight: 700; }
.pd-keys dd { font-family: var(--font-display); font-size: 1.5rem; font-weight: 800; line-height: 1.1; }
.pd-order { border: 1px solid var(--border); border-top: 3px solid var(--primary); border-radius: var(--radius); padding: 1.1rem; background: #fff; }
.pd-order-fields { display: grid; grid-template-columns: 7rem 1fr; gap: .75rem; margin-bottom: .9rem; }
.pd-order label span { display: block; font-size: .75rem; font-weight: 700; margin-bottom: .3rem; }
.pd-order input { width: 100%; border: 1px solid var(--input); border-radius: var(--radius); padding: .7rem .75rem; background: #fff; }
.pd-order .action { width: 100%; }
.pd-order .form-status { margin-top: .75rem; font-size: .85rem; display: flex; gap: .4rem; }
.pd-order .form-status a { text-decoration: underline; color: var(--brand-ink); }
.pd-ship { display: flex; align-items: center; gap: .5rem; margin-top: 1rem; font-size: .88rem; font-weight: 700; color: var(--ink-soft); }
.pd-ship .icon { color: var(--brand-ink); }

.pd-details { display: grid; gap: 2.5rem; align-items: start; }
@media (min-width: 900px) { .pd-details { grid-template-columns: 1.4fr 1fr; gap: 4rem; } }
.pd-details h2 { font-size: clamp(1.8rem, 3.5vw, 2.4rem); text-transform: uppercase; line-height: 1; margin-bottom: 1.1rem; }
.pd-desc .prose p { line-height: 1.75; color: var(--ink-soft); }
.pd-desc .prose p + p { margin-top: 1rem; }
.pd-note { margin: 1.5rem 0; background: #fff; border-left: 4px solid var(--primary); padding: 1rem 1.2rem; border-radius: var(--radius); }
.pd-note strong { font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; }
.pd-note p { margin-top: .25rem; line-height: 1.6; }
.pd-desc h3 { font-size: 1.3rem; text-transform: uppercase; margin-bottom: .6rem; }
.pd-uses { display: flex; flex-wrap: wrap; gap: .45rem; }
.pd-uses li { background: #fff; border: 1px solid var(--border); border-radius: 999px; padding: .35rem .85rem; font-size: .85rem; font-weight: 700; }
.pd-specs table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
.pd-specs th, .pd-specs td { text-align: left; padding: .8rem 1rem; border-bottom: 1px solid var(--border); font-size: .92rem; }
.pd-specs tr:last-child th, .pd-specs tr:last-child td { border-bottom: 0; }
.pd-specs th { font-weight: 600; color: var(--muted-foreground); width: 55%; }
.pd-specs td { font-weight: 800; }
.pd-aviso { margin-top: .6rem; font-size: .78rem; color: var(--muted-foreground); }
