:root{
    /* Paleta (ajuste conforme seu guia de estilo) */
    --bg-curriculo: #6000BC;           /* roxo de fundo */
    --bg-curriculo2:#6000BC;           /* roxo mais escuro (degradê) */
    --heading-curriculo:#32EFDB;       /* ciano do título principal */
    --ink:#ffffff;           /* texto principal (branco) */
    --card: transparent;     /* as faixas são “chapadas” sobre o fundo */
    --accent: #7a4dff;        /* linhas e divisórias */
    --divider: rgba(255,255,255,.35);
    --maxw: 1200px;
    --gap-x: 42px;           /* espaçamento horizontal entre colunas */
    --gap-y: 18px;           /* espaçamento vertical entre linhas */
    --icon: 100px;            /* tamanho do placeholder de ícone */
    --radius: 12px;
  }

  /* ====== SECÇÃO ====== */
  .curriculo{
    position: relative;
    padding: clamp(28px, 5vw, 56px) 0 64px;
    background:
      radial-gradient(1200px 600px at 120% -10%, rgba(255,255,255,.06), transparent 60%),
      linear-gradient(180deg, var(--bg-curriculo) 0%, var(--bg-curriculo2) 100%);
  }

  .curriculo::after{ /* barra/triângulo roxo no canto inferior direito */
    content:"";
    position:absolute;
    left:0;
    top:-36px;
    width:49%;
    height:75px;
    background: #6000BC;
    pointer-events:none;
  }

  .curriculo .wrap{
    max-width: var(--maxw);
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1;
  }

  /* ====== TÍTULO ====== */
  .topline{
    display:flex; align-items:flex-end; gap: 12px;
    margin-bottom: clamp(14px, 2.6vw, 22px);
  }
  .topline .underscore{
    width: 58px; height: 4px; background: var(--heading-curriculo);
    border-radius: 999px; margin-bottom: 12px;
  }
  .curriculo .title{
    margin:0;
    color: var(--heading-curriculo);
    font-weight: 900;
    letter-spacing:.6px;
    font-size: clamp(28px, 4.8vw, 56px);
    text-transform: uppercase;
    line-height:1;
  }

  .lead{
    color: var(--heading-curriculo);
    max-width: 70ch;
  }

  /* ====== BLOCO/FAIXA ====== */
  .track{
    position: relative;
    margin-top: 28px;
    padding: 18px 0 6px;
  }
  /* linha divisória fina no topo de cada faixa (efeito do design) */
  .track::before{
    content:"";
    position:absolute; left:0; right:0; top:0;
    height: 1px; background: linear-gradient(90deg, transparent, var(--divider), transparent);
  }

  /* Cabeçalho da faixa: ícone + título + subtítulo (tempo) */
  .track-header{
    display:grid;
    grid-template-columns: var(--icon) 1fr;
    gap: 12px 16px;
    align-items:center;
    margin-bottom: 14px;
  }
  .icon-ph{
    width: var(--icon); 
    height: var(--icon);
  }
  
  .icon-ph img {
    width: var(--icon);
  }

  .hgroup h3{
    margin:0; font-size: clamp(20px, 3.2vw, 28px);
    font-weight: 800; letter-spacing:.2px;
    color: white;
  }
  .hgroup .time{
    color: white;
    font-weight: 700;
    font-size: clamp(13px, 2vw, 15px);
  }

  /* Conteúdo da faixa em colunas com divisórias */
  .cols{
    display:grid;
    grid-template-columns: 1.2fr 1fr 1fr;
    column-gap: var(--gap-x);
    row-gap: var(--gap-y);
    align-items:start;
  }
  .col{
    min-width: 0;
  }
  .col + .col{ position:relative; }
  .col + .col::before{
    content:""; position:absolute; left: calc(-0.5 * var(--gap-x)); top: 4px; bottom: 4px;
    width:1px; background: var(--divider);
  }

  .cols p{
    margin:.35rem 0;
    line-height:1.6;
    color: #ffffff;
    text-align: justify;
  }
  .cols b, .cols strong{
    font-weight: 800;
    color: #ffffff;
  }

  /* ====== Faixa 2 (Especialização) – 2 colunas no conteúdo */
  .cols.two{ grid-template-columns: 1.2fr 1fr; }

  /* ====== RESPONSIVO ====== */
  @media (max-width: 1080px){
    :root{ --gap-x: 28px; }
    .cols{ grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 760px){
    :root{ --gap-x: 22px; }
    .lead{ margin-left: 0; }
    .track-header{ grid-template-columns: var(--icon) 1fr; }
    .cols, .cols.two{ grid-template-columns: 1fr; }
    .col + .col::before{ display:none; }
  }