/* VERSÃO 2 — PREMIUM
   Claro, limpo, muito espaço. Serifa refinada nos títulos, linhas finas,
   azul escuro como único detalhe. O hero continua sendo a foto de trabalho. */
body.v2 {
  --bg: #f3f4f5;
  --bg-alt: #e8ebee;
  --surface: #ffffff;
  --text: #1a1d22;
  --muted: #565d68;
  --line: #d2d6dc;
  --steel: #7c848f;
  --accent: #14305e;
  --accent-hover: #1e447f;
  --font-display: "Fraunces", Georgia, "Times New Roman", serif;
  --font-body: "Instrument Sans", system-ui, sans-serif;
  --radius: 2px;
  --h2-case: none;
  --h3-case: none;
  --field-bg: #ffffff;
  --card-icon-bg: transparent;
  --card-icon: #14305e;
  --footer-bg: #1a1d22;
  font-size: 1.0625rem;
}
.v2 h1, .v2 h2, .v2 h3 { font-weight: 400; letter-spacing: -.01em; line-height: 1.12; }

.v2 .site-header.is-scrolled, body.v2.menu-open .site-header {
  --header-ink: #1a1d22; --header-sub: #565d68; --header-bg: rgba(255,255,255,.97);
}
.v2 .site-header.is-scrolled { box-shadow: 0 1px 0 var(--line); }
.v2 .brand__mark { width: 3px; height: 30px; background: currentColor; opacity: .9; }
.v2 .brand__name { font-family: var(--font-display); letter-spacing: .02em; font-size: 1.1rem; }
.v2 .brand__name b { font-weight: 300; font-style: italic; letter-spacing: .02em; }
.v2 .nav a { font-weight: 500; }

.v2 .hero__shade {
  background:
    linear-gradient(0deg, rgba(14,17,22,.92) 0%, rgba(14,17,22,.55) 45%, rgba(14,17,22,.25) 100%);
}
.v2 .hero__title { font-weight: 300; letter-spacing: .07em; font-size: clamp(1.8rem, 8.4vw, 6.4rem); line-height: 1.06; }
.v2 .hero__title span:last-child { font-style: italic; font-weight: 300; letter-spacing: .12em; }
.v2 .hero__tagline { position: relative; padding-top: 1.4rem; font-family: var(--font-display); font-weight: 300; }
.v2 .hero__tagline::before { content: ""; position: absolute; top: 0; left: 0; width: 72px; height: 1px; background: #fff; }
.v2 .btn { letter-spacing: .1em; font-weight: 600; font-size: .92rem; }
.v2 .btn--primary { background: #fff; color: #14305e; border-color: #fff; }
.v2 .btn--primary:hover { background: #14305e; color: #fff; border-color: #fff; }
.v2 .section .btn--primary, .v2 .form .btn--primary { background: var(--accent); color: #fff; border-color: var(--accent); }
.v2 .section .btn--primary:hover, .v2 .form .btn--primary:hover { background: var(--accent-hover); border-color: var(--accent-hover); }
.v2 .nav a.nav__cta { background: transparent; border: 1px solid currentColor; color: var(--header-ink, #fff); }
.v2 .nav a.nav__cta:hover { background: var(--accent); color: #fff; border-color: var(--accent); }

.v2 .section { padding-block: clamp(4.5rem, 11vw, 8.5rem); }
.v2 .section__head { margin-bottom: 3rem; }
.v2 .section__head h2, .v2 .about__text h2, .v2 .quote__intro h2 { font-size: clamp(2rem, 5.4vw, 3.2rem); }
.v2 .card { border: 0; border-top: 1px solid var(--accent); box-shadow: 0 1px 2px rgba(20,30,50,.06); padding-top: 1.8rem; }
.v2 .card__icon { width: auto; height: auto; }
.v2 .card__icon svg { width: 34px; height: 34px; stroke-width: 1.3; }
.v2 .card h3 { font-size: 1.4rem; }
.v2 .filters button { border-radius: 999px; text-transform: none; letter-spacing: .01em; font-size: .95rem; font-weight: 500; background: #fff; }
.v2 .tile__btn { box-shadow: 0 2px 10px rgba(20,30,50,.12); }
.v2 .tile__tag { background: rgba(255,255,255,.92); color: #14305e; }
.v2 .diffs li { border: 0; border-bottom: 1px solid var(--line); background: transparent; padding-inline: 0; font-weight: 500; }
.v2 .check { background: transparent; color: var(--accent); border: 1px solid var(--accent); border-radius: 50%; }
.v2 .about__area { border: 0; border-left: 2px solid var(--accent); background: transparent; }
.v2 .section--quote { background: #fff; }
.v2 .empty { background: #fff; }
.v2 .form-status.is-ok { color: #1c6a3a; }
.v2 .form-status.is-error { color: #a3271a; }
.v2 .wa-float { box-shadow: 0 6px 18px rgba(0,0,0,.25); }
.v2 .filters button[aria-pressed="true"] { background: var(--accent); color: #fff; border-color: var(--accent); }
.v2 .share__text h2 { font-size: clamp(2rem, 5.4vw, 3.2rem); }
.v2 .share__msg { border-left: 2px solid #25d366; }
.v2 .btn--outline { border-color: var(--accent); color: var(--accent); }
.v2 .btn--outline:hover { background: var(--accent); color: #fff; border-color: var(--accent); }
.v2 .ba__label { background: rgba(255,255,255,.92); color: #14305e; }
.v2 .ba__frame { box-shadow: 0 2px 10px rgba(20,30,50,.12); }
