/* Mantém a marca existente; ajusta leitura, navegação e controles. */
:root { --display: 'Barlow Condensed', Impact, 'Arial Narrow', sans-serif; }
[hidden] { display: none !important; }
.header { position: sticky; top: 0; background: rgba(8,9,13,.96); backdrop-filter: blur(16px); gap: 20px; }
.header nav { gap: clamp(16px,2.5vw,31px); }
.header nav a, .link-cta { min-height: 44px; display: inline-flex; align-items: center; font-size: 11px; letter-spacing: .06em; }
.header nav a[aria-current="page"] { color: var(--acid); }
.menu-toggle { flex: none; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--line); color: var(--paper); background: transparent; cursor: pointer; }
.menu-toggle svg { width: 22px; height: 22px; }
.menu-open .menu-toggle { border-color: var(--acid); color: var(--acid); }
.cta-short { display: none; }
.link-cta .cta-long, .link-cta .cta-short { color: inherit; font-size: inherit; }
.hero { grid-template-columns: minmax(0,1fr) minmax(320px,.82fr); gap: clamp(32px,6vw,80px); }
.hero h1 { font-size: clamp(68px,9vw,132px); }
.hero-copy, .hero-proof-card, .service-card, .result-card, .dashboard-hero > div { min-width: 0; }
.lead { font-size: 16px; }
.micro-copy { font-size: 12px; line-height: 1.6; color: #aaa7b1; }
.button { min-height: 48px; font-size: 11px; }
.service-card p, .section-intro > p:last-child, .trust-intro > p:last-child { font-size: 14px; line-height: 1.75; }
.service-card li { font-size: 12px; line-height: 1.5; }
.service-card a { min-height: 44px; font-size: 11px; }
.trust-card p, .steps p, .split-heading > div:last-child p, .testimonials-header > div:last-child p { font-size: 14px; line-height: 1.75; }
.trust-card h3 { line-height: 1; }
.text-action { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 11px; line-height: 1.6; }
.result-meta, .result-card > small, .testimonial-top { font-size: 10px; line-height: 1.5; }
.result-card > strong { overflow-wrap: anywhere; line-height: .92; }
.result-reward { font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.result-reward em { align-self: end; }
.proof-link { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 12px; color: var(--acid); font-size: 11px; font-weight: 800; text-underline-offset: 4px; }
.testimonial-card { flex-basis: min(390px,calc(100vw - 48px)); }
.testimonial-card blockquote { margin-top: 24px; font: 500 15px/1.75 var(--body); text-transform: none; overflow-wrap: anywhere; }
.testimonial-card p { font-size: 11px; }
.testimonial-scroll-hint { margin-bottom: 14px; font-size: 10px; }
.testimonial-track { align-items: stretch; scroll-padding-inline: max(24px,calc((100vw - 1180px)/2)); }
.testimonial-controls { display: flex; justify-content: flex-end; gap: 8px; margin-bottom: 12px; }
.testimonial-controls button { width: 44px; height: 44px; border: 1px solid var(--line); color: var(--acid); background: transparent; font-size: 20px; cursor: pointer; }
.testimonial-controls button:disabled { opacity: .4; cursor: default; }
.metrics span, .metrics small { font-size: 10px; line-height: 1.5; }
.metrics strong { line-height: 1; }
.filter-group button { min-height: 44px; font-size: 11px; }
.demo-notice, .history-pagination p { font-size: 12px; line-height: 1.6; }
.history-pagination { gap: 12px; }
.history-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.review-form label, .auth-form label, .publish-form label, .review-form legend { font-size: 11px; line-height: 1.5; }
.review-form label small, .publish-form label small { font-size: 11px; }
.review-form input, .review-form select, .review-form textarea, .auth-form input, .publish-form input, .publish-form select { font-size: 16px; min-height: 48px; min-width: 0; color-scheme: light; border-color: rgba(8,9,13,.4); }
.review-form input, .review-form select, .review-form textarea { width: 100%; }
.review-form .consent { font-size: 12px; }
.review-form .consent input { min-height: 0; width: 18px; height: 18px; accent-color: #5930af; }
.review-form fieldset { min-width: 0; }
.rating-options { display: grid; grid-template-columns: repeat(5,minmax(44px,1fr)); gap: 6px; max-width: 320px; }
.rating-options label { position: relative; }
.rating-options input { width: 1px; height: 1px; min-height: 0; padding: 0; margin: 0; }
.rating-options span { width: 100%; min-width: 44px; height: 48px; font-size: 22px; }
.rating-options input:focus-visible + span { outline: 3px solid #5930af; outline-offset: 3px; }
.field-hint, .review-counter { margin: 0; color: #615d67; font-size: 12px; line-height: 1.5; text-transform: none; letter-spacing: 0; font-weight: 500; }
.review-counter { display: flex; justify-content: space-between; gap: 16px; }
.review-form-card .form-status, .panel-auth .form-status { font-size: 13px; line-height: 1.65; }
.review-form-card :focus-visible, .panel-auth :focus-visible { outline-color: #5930af; }
.review-form .button { justify-self: stretch; }
.review-success { border-top: 3px solid #5930af; padding-top: 24px; margin-top: 24px; }
.review-success h3 { font-size: 34px; line-height: 1; margin-bottom: 14px; }
.review-success p { font-size: 15px; line-height: 1.75; color: #514b58; }
.review-success .button { width: 100%; background: #5930af; color: white; }
.footer p, .footer > a { font-size: 13px; line-height: 1.6; }
.footer small { font-size: 11px; color: #a9a5ae; }
@media (max-width: 820px) {
  .header { min-height: 68px; height: auto; padding-block: 10px; flex-wrap: wrap; gap: 12px; }
  .header .link-cta { margin-left: auto; order: 2; }
  .menu-toggle { display: inline-flex; order: 3; }
  .header nav { display: flex; flex-direction: column; gap: 0; order: 4; flex-basis: 100%; padding-block: 8px; border-top: 1px solid var(--line); }
  .header nav a { padding: 10px 8px; font-size: 13px; }
  .hero { grid-template-columns: 1fr; gap: 36px; }
  .hero-proof-card { max-width: 520px; }
  .services .service-grid { max-width: none; }
  .proof-ribbon > div > div { flex-direction: column; gap: 8px; }
  .proof-ribbon span { line-height: 1.5; }
}
@media (min-width: 821px) { .menu-toggle { display: none; } }
@media (max-width: 580px) {
  .header { padding-inline: 16px; }
  .cta-long { display: none; }
  .cta-short { display: inline; }
  .link-cta { font-size: 11px; gap: 8px; }
  .hero { padding-block: 42px 56px; min-height: auto; }
  .hero h1 { font-size: clamp(64px,17vw,88px); }
  .hero .actions { display: grid; gap: 10px; }
  .hero .actions .button { width: 100%; }
  .hero .kicker { font-size: 9px; line-height: 1.6; }
  .latest-score { flex-wrap: wrap; }
  .featured-reward { grid-template-columns: minmax(0,1fr); }
  .featured-reward b { font-size: 12px; }
  .proof-ribbon span { font-size: 9px; }
  .section { padding-block: 64px; }
  .services { padding-inline: 16px; }
  .service-card { min-height: auto; padding: 24px; }
  .service-card h3 { margin-top: 30px; line-height: .95; }
  .service-card ul { margin-bottom: 12px; }
  .dashboard { padding-block: 40px 64px; }
  .dashboard-hero { padding-bottom: 30px; gap: 22px; }
  .dashboard-hero h1 { font-size: clamp(54px,16vw,80px); }
  .rank-summary h2 { font-size: clamp(38px,12vw,55px); }
  .metrics article { padding: 16px; }
  .metrics span, .metrics small { font-size: 9px; }
  .metrics strong { font-size: 39px; }
  .all-results { padding-top: 48px; }
  .result-toolbar { margin-bottom: 24px; }
  .filter-group { gap: 8px; }
  .filter-group button { flex: 1 1 auto; }
  .history-actions, .history-actions .button { width: 100%; }
  .review-shell { row-gap: 24px; padding-top: 24px; }
  .review-shell > .brand { margin-bottom: 12px; }
  .review-intro h1 { font-size: 60px; margin-bottom: 18px; }
  .review-intro p:last-of-type { max-width: none; font-size: 14px; }
  .review-intro > a { display: inline-flex; align-items: center; min-height: 44px; font-size: 11px; }
  .review-form-card { padding: 24px 20px; }
  .review-form-card h2 { font-size: 44px; line-height: .9; }
  .review-form { gap: 20px; margin-top: 24px; }
  .rating-options { justify-content: space-between; }
  .testimonial-track { scroll-padding-inline: 16px; }
}
@media (prefers-reduced-motion: reduce) { .header { transition: none; } }
