/* ===== tokens/fonts.css ===== */
/* FNXP webfonts.
   Effra (Dalton Maag) is the brand core face, self-hosted from /fonts as WOFF2
   subset to latin + latin-ext (was ~92KB TTF each, now ~15KB each).
   Source Sans 3 / Source Serif 4 / DM Sans / Inter now self-hosted too (Google Fonts
   woff2, latin + latin-ext subsets only) from /fonts/google — no external dependency.
   Variable fonts; unicode-range + font-display:swap preserved for on-demand, non-blocking load. */
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 100 1000;
  font-display: swap;
  src: url(fonts/google/dmsans-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: italic;
  font-weight: 100 1000;
  font-display: swap;
  src: url(fonts/google/dmsans-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 100 1000;
  font-display: swap;
  src: url(fonts/google/dmsans-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 100 1000;
  font-display: swap;
  src: url(fonts/google/dmsans-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/google/inter-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/google/inter-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/google/inter-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(fonts/google/inter-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Sans 3';
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url(fonts/google/sourcesans3-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Sans 3';
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url(fonts/google/sourcesans3-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url(fonts/google/sourcesans3-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url(fonts/google/sourcesans3-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url(fonts/google/sourceserif4-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Serif 4';
  font-style: italic;
  font-weight: 200 900;
  font-display: swap;
  src: url(fonts/google/sourceserif4-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url(fonts/google/sourceserif4-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  src: url(fonts/google/sourceserif4-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std_Lt.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std_LtIt.woff2) format("woff2");font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std_Rg.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std_It.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std_Md.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std_MdIt.woff2) format("woff2");font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std_BdIt.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std_He.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:"Effra";src:url(fonts/Effra_Std_HeIt.woff2) format("woff2");font-weight:900;font-style:italic;font-display:swap}

/* ===== tokens/colors.css ===== */
/* Palette transcribed verbatim from FNXP Teste -.fig */
:root{
  /* — Roxo (core brand) — */
  --fn-roxo-900:#3A1690;--fn-roxo-800:#501FC4;--fn-roxo-700:#652CBC;--fn-roxo-650:#6D26BF;
  --fn-roxo-600:#6A34D7;--fn-roxo-550:#7C13C3;--fn-roxo-500:#8054DE;--fn-roxo-400:#9061EF;
  --fn-roxo-300:#A97FF3;--fn-roxo-200:#DFABF2;
  /* — Magenta / Neon (accent) — */
  --fn-magenta-600:#951B76;--fn-magenta-500:#640E80;--fn-magenta-400:#D400FF;
  --fn-magenta-300:#DC34FF;--fn-magenta-200:#D971FF;--fn-magenta-100:#D722B7;
  /* — Azul-violeta — */
  --fn-azul-500:#4A3AFF;
  /* — Preto / Neutros — */
  --fn-preto:#000000;--fn-tinta-900:#0C0C0C;--fn-tinta-800:#1E1E1E;--fn-tinta-700:#262626;
  --fn-tinta-650:#272727;--fn-tinta-600:#2D2D2D;--fn-cinza-500:#747474;--fn-cinza-400:#878787;
  --fn-cinza-300:#BCBCBC;--fn-cinza-200:#D9D9D9;--fn-cinza-100:#EDEDED;--fn-branco:#FFFFFF;
  /* — Alpha / véus — */
  --fn-veu-preto-80:rgba(0,0,0,0.8);--fn-veu-preto-60:rgba(0,0,0,0.6);
  --fn-veu-preto-50:rgba(0,0,0,0.5);--fn-veu-preto-25:rgba(0,0,0,0.25);
  --fn-veu-preto-08:rgba(0,0,0,0.08);
  --fn-vidro-de:rgba(38,38,38,0.41);--fn-vidro-para:rgba(66,66,66,0.41);
  --fn-roxo-32:rgba(80,31,196,0.32);--fn-roxo-500-56:rgba(128,84,222,0.56);
  --fn-magenta-46:rgba(215,34,183,0.46);--fn-magenta-61:rgba(220,52,255,0.61);
  --fn-cinza-95:rgba(116,116,116,0.95);

  /* — Semantic — */
  --fn-marca:var(--fn-roxo-800);
  --fn-marca-clara:var(--fn-roxo-400);
  --fn-acento:var(--fn-magenta-300);
  --fn-superficie-escura:var(--fn-preto);
  --fn-superficie-post:var(--fn-tinta-600);
  --fn-superficie-clara:var(--fn-branco);
  --fn-texto-claro:var(--fn-branco);
  --fn-texto-escuro:var(--fn-tinta-700);
  --fn-texto-suave:var(--fn-cinza-400);

  /* — Gradientes de marca — */
  --fn-grad-cta:linear-gradient(90deg,rgba(116,116,116,0.95) 0%,rgba(128,84,222,0.56) 47.6%,rgba(215,34,183,0.46) 100%); /* @kind color */
  --fn-grad-vidro:linear-gradient(90deg,rgba(38,38,38,0.41) 0%,rgba(66,66,66,0.41) 100%); /* @kind color */
  --fn-grad-arco:linear-gradient(0.306deg,#000000 22.31%,#501FC4 76.64%); /* @kind color */
  --fn-grad-protecao:linear-gradient(180deg,#000000 61.6%,rgba(0,0,0,0) 100%); /* @kind color */
  --fn-grad-faixa:linear-gradient(180deg,rgba(0,0,0,0) 0%,#000000 48.08%,rgba(0,0,0,0) 100%); /* @kind color */
  --fn-grad-papel:linear-gradient(180deg,#EDEDED 90.94%,#878787 111.12%); /* @kind color */
}

/* ===== tokens/typography.css ===== */
:root{
  /* Families — Effra first (licensed, bring your own); Source Pro families load as the shipped fallback */
  --fn-fonte-core:"Effra","Effra Trial","Source Sans 3","Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; /* @kind font */
  --fn-fonte-display:"Source Serif 4","Source Serif Pro","BogueSlab-Semibold","Bogue Slab",Georgia,serif; /* @kind font */
  --fn-fonte-editorial:var(--fn-fonte-display); /* @kind font */
  --fn-fonte-alt:"DM Sans",var(--fn-fonte-core); /* @kind font */
  --fn-fonte-caps:"Inter",var(--fn-fonte-core); /* @kind font */

  /* Weights actually used in the file */
  --fn-peso-light:300; /* @kind font */--fn-peso-regular:400; /* @kind font */--fn-peso-medium:500; /* @kind font */
  --fn-peso-bold:700; /* @kind font */--fn-peso-black:900; /* @kind font */

  /* Slide scale (1920×1080 canvas) — verbatim sizes from the .fig */
  --fn-tam-hero:96px; /* @kind font */      /* BogueSlab italic — "Seja parte do Fórum Negócios 2026" */
  --fn-tam-nome:87.01px; /* @kind font */   /* Nome Palestrante plate */
  --fn-tam-secao:75px; /* @kind font */     /* BogueSlab-Semibold section headline */
  --fn-tam-numero:90px; /* @kind font */    /* Effra "Data" / "Local" */
  --fn-tam-titulo:56px; /* @kind font */    /* Effra Bold uppercase, tracking .3em */
  --fn-tam-bio:55px; /* @kind font */       /* MiniBIO */
  --fn-tam-destaque:48px; /* @kind font */  /* Effra 48 — deck body / stat */
  --fn-tam-corpo:40px; /* @kind font */     /* Effra 40 — standard slide body */
  --fn-tam-legenda:32px; /* @kind font */   /* Effra Trial Light — handles, URLs */
  --fn-tam-mini:24px; /* @kind font */--fn-tam-micro:20px; /* @kind font */--fn-tam-nano:15px; /* @kind font */

  /* Line heights seen in the source */
  --fn-lh-solido:1; /* @kind font */--fn-lh-apertado:0.97; /* @kind font */--fn-lh-titulo:0.98; /* @kind font */--fn-lh-corpo:1.2; /* @kind font */

  /* Tracking */
  --fn-track-caps-lg:0.4em; /* @kind font */  /* "JEAN VALÉRIO" */
  --fn-track-caps:0.3em; /* @kind font */     /* section eyebrow */
  --fn-track-normal:0; /* @kind font */
}

/* ===== tokens/space.css ===== */
:root{
  /* Slide margins measured off the 1920×1080 mídia-kit frames */
  --fn-margem-slide:80px; /* @kind spacing */--fn-margem-slide-larga:100px; /* @kind spacing */--fn-margem-slide-solta:340px; /* @kind spacing */
  --fn-margem-post:128.9px; /* @kind spacing */   /* 1080×1350 carrossel content inset */
  --fn-margem-story:111px; /* @kind spacing */    /* 1080×1920 tráfego inset */
  /* Spacing steps observed in auto-layout */
  --fn-esp-1:3.24px; /* @kind spacing */--fn-esp-2:9.71px; /* @kind spacing */--fn-esp-3:14px; /* @kind spacing */--fn-esp-4:24px; /* @kind spacing */
  --fn-esp-5:48.56px; /* @kind spacing */--fn-esp-6:80px; /* @kind spacing */--fn-esp-7:112px; /* @kind spacing */
  /* Canvas sizes */
  --fn-canvas-slide-w:1920px; /* @kind spacing */--fn-canvas-slide-h:1080px; /* @kind spacing */
  --fn-canvas-post-w:1080px; /* @kind spacing */--fn-canvas-post-h:1350px; /* @kind spacing */
  --fn-canvas-story-w:1080px; /* @kind spacing */--fn-canvas-story-h:1920px; /* @kind spacing */
}

/* ===== tokens/shape.css ===== */
:root{
  /* Radii — verbatim, never rounded to a grid */
  --fn-raio-plaqueta:21.689px; /* @kind radius */   /* Nome Palestrante */
  --fn-raio-plaqueta-lg:38.462px; /* @kind radius *//* Nome Palestrante scaled on speaker card */
  --fn-raio-cartao:43px; /* @kind radius */         /* Data / Local card */
  --fn-raio-pilula:56px; /* @kind radius */         /* CTA button */
  --fn-raio-faixa:13px; /* @kind radius */          /* magenta highlight bar behind headline */
  --fn-raio-arco-inferior:429.267px; /* @kind radius */ /* story photo bottom arch */
  --fn-raio-circulo:50%; /* @kind radius */

  /* Strokes */
  --fn-traco-fino:0.324px; /* @kind spacing */--fn-traco-1:1px; /* @kind spacing */--fn-traco-linha-fina:3px; /* @kind spacing */--fn-traco-linha:8px; /* @kind spacing */

  /* Shadows */
  --fn-sombra-plaqueta:0 12.949px 22.077px rgba(0,0,0,0.25); /* @kind shadow */
  --fn-sombra-plaqueta-borda:inset 0 0 0 0.324px #FFFFFF; /* @kind shadow */
  --fn-sombra-bio:0 4px 80px rgba(0,0,0,0.25); /* @kind shadow */
  --fn-sombra-bio-solta:0 5.895px 117.894px rgba(0,0,0,0.25); /* @kind shadow */
  --fn-sombra-cartao-roxo:0 6px 10px rgba(109,38,191,0.4); /* @kind shadow */
  --fn-sombra-linha:0 16px 32px -8px rgba(12,12,13,0.4); /* @kind shadow */
  --fn-sombra-suave:0 2px 8px rgba(0,0,0,0.08); /* @kind shadow */

  /* Blur */
  --fn-blur-vidro:blur(8.8px); /* @kind other */
  --fn-blur-vidro-lg:blur(15.605px); /* @kind other */
}

/* ===== tokens/motion.css ===== */
:root{
  /* The .fig is a static artwork file — no prototype/animation data.
     These are the conservative house defaults documented in readme.md. */
  --fn-dur-rapida:120ms; /* @kind other */--fn-dur-padrao:220ms; /* @kind other */--fn-dur-lenta:420ms; /* @kind other */
  --fn-ease-padrao:cubic-bezier(0.4,0,0.2,1); /* @kind other */
  --fn-ease-saida:cubic-bezier(0.4,0,1,1); /* @kind other */
  --fn-ease-entrada:cubic-bezier(0,0,0.2,1); /* @kind other */
}

/* ===== tokens/base.css ===== */
a{color:var(--fn-roxo-400);text-decoration:none}
a:hover{color:var(--fn-magenta-300)}

/* ===== styles.css ===== */
@import './tokens/fonts.css';
@import './tokens/colors.css';
@import './tokens/typography.css';
@import './tokens/space.css';
@import './tokens/shape.css';
@import './tokens/motion.css';
@import './tokens/base.css';
@import './components/figma/fig-tokens.css';
@import './components/figma/fig-typography.css';
@import './components/figma/fig-assets.css';
