/* ===========================================================
   CURRÍCULO — extends style.css tokens
=========================================================== */

.cv-wrap{
  max-width:760px;
  margin:0 auto;
  padding:160px 24px 120px;
}

/* ===== HERO ===== */
.cv-hero{
  margin-bottom:80px;
}
.cv-hero .eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--font-mono); font-size:0.78rem; letter-spacing:.04em;
  color:var(--text-dim);
  border:1px solid var(--line); border-radius:999px;
  padding:6px 14px; margin-bottom:28px;
}
.cv-name{
  font-family:var(--font-display);
  font-weight:600;
  font-size:clamp(2.4rem, 6vw, 3.6rem);
  line-height:1.1;
  letter-spacing:-0.02em;
  margin-bottom:24px;
}
.cv-bio{
  font-size:1.05rem; color:var(--text-dim); line-height:1.7;
  max-width:560px;
}

/* ===== SHARED SECTION ===== */
.cv-section{
  margin-bottom:64px;
  padding-top:48px;
  border-top:1px solid var(--line);
}
.cv-section .section-label{
  font-family:var(--font-mono); font-size:.78rem; letter-spacing:.08em;
  color:var(--accent); text-transform:uppercase; margin-bottom:32px;
}

/* ===== EXPERIÊNCIA ===== */
.exp-item{
  display:grid;
  grid-template-columns:160px 1fr;
  gap:24px;
  padding:24px 0;
  border-bottom:1px solid var(--line);
}
.exp-item:last-child{ border-bottom:none; padding-bottom:0; }
.exp-item:first-child{ padding-top:0; }

.exp-meta{
  font-family:var(--font-mono); font-size:.8rem;
  color:var(--text-dim); line-height:1.5;
}
.exp-role{
  font-family:var(--font-display); font-weight:600;
  font-size:1.08rem; margin-bottom:4px;
}
.exp-company{
  color:var(--accent); font-size:.92rem; margin-bottom:12px;
}
.exp-desc{
  color:var(--text-dim); font-size:.92rem; line-height:1.65;
}

@media (max-width:600px){
  .exp-item{ grid-template-columns:1fr; gap:8px; }
}

/* ===== SKILLS ===== */
.skills-grid{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:14px;
}
@media (max-width:600px){ .skills-grid{ grid-template-columns:1fr; } }

.skill-item{
  display:flex; align-items:center; gap:10px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:10px;
  padding:14px 16px;
  font-size:.92rem;
  transition:border-color .3s var(--ease), transform .3s var(--ease);
}
.skill-item:hover{
  border-color:rgba(0,229,199,.4);
  transform:translateY(-2px);
}
.skill-dot{
  width:7px; height:7px; border-radius:50%;
  background:var(--accent);
  flex-shrink:0;
}

/* ===== FORMAÇÃO ===== */
.edu-item{
  padding:20px 0;
  border-bottom:1px solid var(--line);
}
.edu-item:last-child{ border-bottom:none; padding-bottom:0; }
.edu-item:first-child{ padding-top:0; }

.edu-course{
  font-family:var(--font-display); font-weight:600;
  font-size:1.05rem; margin-bottom:4px;
}
.edu-school{
  color:var(--accent); font-size:.92rem; margin-bottom:4px;
}
.edu-period{
  font-family:var(--font-mono); color:var(--text-dim); font-size:.82rem;
}

/* ===== CONTATO ===== */
.contact-links{
  display:flex; flex-direction:column; gap:2px;
}
.contact-link{
  display:flex; align-items:center; justify-content:space-between;
  padding:18px 4px;
  border-bottom:1px solid var(--line);
  font-size:1rem;
  transition:color .25s var(--ease), padding-left .25s var(--ease);
}
.contact-link:first-child{ padding-top:0; }
.contact-link:hover{
  color:var(--accent);
  padding-left:10px;
}
.contact-link-arrow{
  transition:transform .25s var(--ease);
  color:var(--accent);
}
.contact-link:hover .contact-link-arrow{
  transform:translateX(4px);
}

/* ===== PRINT-ONLY IMAGE (hidden on screen) ===== */
.somente-impressao{
  display:none;
}

/* ===========================================================
   PRINT STYLES
=========================================================== */
@media print {

  @page {
    size: A4;
    margin: 8mm;
  }

  .nao-imprimir {
    display: none !important;
  }

  .somente-impressao {
    display: block;
    max-width: 100px;
    margin: 10px auto;
  }

  body {
    background: #fff;
    color: #111;
    font-size: 10px;
    line-height: 1;
  }

  .cv-name{
    display: flex;
    align-items: center;
    margin-bottom: 2px;
    justify-content: center;
    }

   .cv-bio{
   margem-bottom: 5px;
   max-width: 100%;
   }

   .cv-hero {
   margin-bottom: 3px;
   }
   
  .cv-wrap {
    max-width: 100%;
    padding: 8px;
  }

  .cv-section {
    break-inside: avoid;
    margin-bottom: 4px;
    padding-top: 2px;
  }

  h1, h2, h3, h4,
  p, li {
    margin: 2px 0;
  }

  .exp-item {
   grid-template-columns:none; 
   gap: 1px;
   padding: 3px 0;
  }
   
  .edu-item {
    padding: 4px 0;
    margin: 0;
  }

  .skill-item {
    padding: 2px 6px;
    margin: 2px;
    background: none;
  }

    .skills-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 4px;
    }

  .text-gradient {
    -webkit-text-fill-color: #111;
    color: #111;
    background: none;
    padding: 0px 16px;
  }

 .cv-section .section-label {
   margin-bottom: 4px;
 }

   .contact-link{
   padding: 4px 0px;
   }
   
  .exp-desc,
  .exp-meta,
  .edu-period {
    color: #444;
  }

  .exp-company {
     margin-bottom: 4px;
  }
   
  .section-label,
  .contact-link-arrow {
    color: #000;
  }
}
