/* piccini.app CV, paper editorial mode (2026-09-24).
   Loaded after /cv.css on /cv/ and /pt-br/cv/. Screen only: the print rules in
   cv.css keep producing the PDF layout. Tokens mirror /branding/homepage.css. */
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 400; font-display: swap; src: url('/branding/font-1b08e7fc267a5c7e.ttf') format('truetype'); }
@font-face { font-family: 'Inter'; font-style: normal; font-weight: 600; font-display: swap; src: url('/branding/font-e7a1aaf7eda9f2fa.ttf') format('truetype'); }
@font-face { font-family: 'Source Serif 4'; font-style: normal; font-weight: 400; font-display: swap; src: url('/branding/font-8ca4d603b02214e2.ttf') format('truetype'); }

@media screen {
  :root {
    --bg: #F7F5EF; --surface: #EEEDE6; --surface-2: #E7E5DC; --surface-3: #E7E5DC;
    --edge: #D8DCD9; --edge-strong: #B9C0C4;
    --ink: #17345C; --ink-soft: #3E5068; --ink-muted: #536171;
    --navy: #17345C; --navy-light: #3D5A9C; --navy-lighter: #58718E;
    --display: 'Inter', ui-sans-serif, system-ui, sans-serif;
    --body: 'Inter', ui-sans-serif, system-ui, sans-serif;
    --serif: 'Source Serif 4', Georgia, serif;
    color-scheme: light;
  }
  html.theme-dark {
    --bg: #17345C; --surface: #1D406B; --surface-2: #234A78; --surface-3: #234A78;
    --edge: #58718E; --edge-strong: #8FA3BA;
    --ink: #F7F5EF; --ink-soft: #DCE2EA; --ink-muted: #CFD7E1;
    --navy-light: #8FA3BA; --navy-lighter: #8FA3BA;
    color-scheme: dark;
  }
  html, body { background: var(--bg); }
  body { background-image: none; font-size: 16px; }
  a:focus-visible, button:focus-visible { outline: 3px solid var(--amber); outline-offset: 3px; }

  /* Header */
  .site-header { background: var(--bg); backdrop-filter: none; border-bottom-color: var(--edge); }
  .brand-lockup { font-family: var(--serif); font-size: 20px; font-weight: 400; letter-spacing: -.02em; }
  .brand-mark { display: none; }
  .brand-lockup::before { content: '←'; font-family: var(--body); font-size: 14px; color: var(--ink-muted); }
  .language-switcher { background: var(--bg); border-color: var(--edge); box-shadow: none; backdrop-filter: none; border-radius: 3px; }
  .language-option { color: var(--ink-muted); font-family: var(--body); font-weight: 600; border-radius: 2px; }
  .language-option:hover { background: var(--surface); }
  .language-option[aria-current="page"] { background: var(--surface); color: var(--ink); box-shadow: none; }
  .language-flag { box-shadow: 0 0 0 1px var(--edge); }
  .button { min-height: 36px; padding: 7px 13px; border-radius: 3px; font-family: var(--body); font-size: 13px; font-weight: 600; }
  .button-primary { color: var(--bg); background: var(--ink); border-color: var(--ink); }
  .button-primary:hover { background: color-mix(in srgb, var(--ink) 86%, var(--bg)); border-color: var(--ink); }
  .button-secondary { color: var(--ink); background: transparent; border-color: var(--edge-strong); }
  .button-secondary:hover { background: transparent; border-color: var(--ink); }
  .theme-toggle { min-height: 36px; padding: 7px 12px; border: 1px solid var(--edge-strong); border-radius: 3px; background: transparent; color: var(--ink); font: 600 13px/1.2 var(--body); cursor: pointer; }
  .theme-toggle:hover { border-color: var(--ink); }

  /* Intro */
  .eyebrow { color: var(--ink-muted); font-family: var(--body); font-weight: 400; letter-spacing: .17em; }
  .eyebrow::before { content: ''; display: inline-block; width: 8px; height: 8px; margin-right: 10px; border-radius: 50%; background: var(--amber); vertical-align: 1px; }
  .cv-intro { border-bottom-color: var(--edge); }
  .cv-intro h1 { font-family: var(--serif); font-weight: 400; letter-spacing: -.045em; line-height: 1.04; }
  .cv-title { font-family: var(--body); color: var(--ink-soft); font-size: 18px; }
  .cv-intro__proof { border-left-color: var(--edge); }
  .cv-intro__proof strong { font-family: var(--serif); font-weight: 400; letter-spacing: -.035em; color: var(--ink); }
  .cv-contact { color: var(--ink-soft); }
  .cv-contact a:hover { text-decoration-color: var(--amber); }

  /* Sections */
  .cv h2 { color: var(--ink-muted); font-family: var(--body); font-size: 11.5px; font-weight: 600; letter-spacing: .14em; }
  .cv-summary p { color: var(--ink); font-size: 18px; }
  .cv-role h3 { font-family: var(--serif); font-size: 25px; font-weight: 400; letter-spacing: -.02em; }
  .cv-role header p { color: var(--ink-soft); }
  .cv-role time { font-family: var(--body); color: var(--ink-muted); }
  .cv-role ul { color: var(--ink-soft); }
  .cv-role li::marker { color: var(--amber); }
  .cv-product h4 { font-family: var(--serif); font-size: 20px; font-weight: 400; }
  .selected-work strong { font-family: var(--serif); font-size: 19px; font-weight: 400; }
  .selected-work a:hover strong { text-decoration: underline; text-decoration-color: var(--amber); text-decoration-thickness: 2px; text-underline-offset: 4px; }
  .cv-education h3 { font-family: var(--serif); font-size: 19px; font-weight: 400; }
  .skip-link { color: var(--ink); }
}
