/* CORDERIS — design system CSS
   Fonte: 01_BRAND/CORDERIS_brand_reference.md (cores aprovadas 01/09/2026,
   tipografia confirmada 03/09/2026). Gerado para o rebuild V2 do site. */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,wght@0,300;0,400;0,500;0,600;1,400;1,500&family=Inter:wght@400;500;600;700&display=swap');

:root{
  /* cores oficiais */
  --midnight:#0B1026;
  --cobalt:#175CD3;
  --black:#000000;
  --white:#FFFFFF;
  --neutral-900:#303642;
  --neutral-600:#667085;
  --neutral-300:#D9DEE7;
  --neutral-50:#F7F8FA;

  /* papéis semânticos — regra de contraste do brand_reference.md */
  --bg-dark:var(--midnight);
  --bg-light:var(--white);
  --bg-canvas:var(--neutral-50);
  --text-on-light:var(--neutral-900);   /* nunca --midnight em texto de corpo */
  --text-secondary:var(--neutral-600);
  --border-color:var(--neutral-300);
  --accent:var(--cobalt);

  /* tipografia */
  --font-display:'Fraunces', serif;
  --font-body:'Inter', sans-serif;

  --radius-sm:2px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--text-on-light);
  background:var(--bg-light);
  -webkit-font-smoothing:antialiased;
}

.font-display{ font-family:var(--font-display); }
.font-body{ font-family:var(--font-body); }

/* rótulo de seção — substitui o padrão "eyebrow" (caixa alta + letter-spacing) */
.section-label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-family:var(--font-body);
  font-size:0.8125rem;
  font-weight:600;
  color:var(--accent);
}
.section-label::before{
  content:'';
  width:6px;
  height:6px;
  background:var(--accent);
  flex-shrink:0;
}
.section-label.on-dark{ color:rgba(255,255,255,0.7); }
.section-label.on-dark::before{ background:rgba(255,255,255,0.7); }

/* botões — sem ícone/seta embutido no texto */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:56px;
  padding:0 28px;
  font-family:var(--font-body);
  font-size:0.875rem;
  font-weight:600;
  border:none;
  border-radius:14px;
  cursor:pointer;
  transition:background-color .2s ease, color .2s ease, border-color .2s ease;
}
.btn-primary{ background:var(--midnight); color:var(--white); }
.btn-primary:hover{ background:var(--cobalt); }
.btn-secondary{ background:var(--cobalt); color:var(--white); }
.btn-secondary:hover{ background:var(--midnight); }
.btn-outline{ background:transparent; color:var(--text-on-light); border:1px solid var(--border-color); }
.btn-outline:hover{ border-color:var(--midnight); }
.btn-ghost-light{ background:var(--white); color:var(--midnight); }
.btn-ghost-light:hover{ background:var(--cobalt); color:var(--white); }

/* FAQ — details/summary nativo, sem numeração em estilo eyebrow */
.faq-item{ border-bottom:1px solid var(--border-color); }
.faq-item summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:24px 0;
  font-family:var(--font-body);
  font-weight:600;
  font-size:1.0625rem;
  color:var(--text-on-light);
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item .chevron{ flex-shrink:0; transition:transform .2s ease; color:var(--accent); }
.faq-item[open] .chevron{ transform:rotate(180deg); }
.faq-item .faq-answer{ padding:0 0 24px; color:var(--text-secondary); line-height:1.6; max-width:60ch; }

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ transition-duration:.001ms !important; }
}
