/* Facedoor — botões, rótulos, selo e rodapé (substitui o bundle React) */

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-family:var(--font-sans);
  font-weight:var(--fw-medium);
  line-height:1.1;
  border-radius:var(--radius-control);
  border:var(--border-width) solid transparent;
  cursor:pointer;
  text-decoration:none;
  white-space:nowrap;
  transition:var(--transition-colors);
  padding:12px 22px;
  min-height:var(--tap-min);
  font-size:var(--fs-body);
}
.btn-sm{padding:8px 14px;min-height:36px;font-size:var(--fs-caption)}
.btn-primary{background:var(--amber);color:var(--accent-text)}
.btn-primary:hover{background:#964507;color:var(--accent-text)}
.btn-secondary{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-secondary:hover{background:var(--paper-2);color:var(--ink)}
.btn-secondary.on-deep{color:var(--text-on-deep);border-color:var(--text-on-deep)}
.btn-secondary.on-deep:hover{background:var(--surface-deep-card);color:var(--text-on-deep)}
.btn-tertiary{
  background:transparent;
  color:var(--ink);
  text-decoration:underline;
  text-underline-offset:4px;
  text-decoration-thickness:1px;
  padding:12px 2px;
}
.btn-tertiary:hover{color:var(--amber)}

.section-label{
  font-family:var(--font-sans);
  font-size:var(--fs-label);
  font-weight:var(--fw-medium);
  letter-spacing:var(--tracking-label);
  line-height:var(--lh-label);
  text-transform:uppercase;
  color:var(--text-tertiary);
  margin:0;
}

.callout{
  border:var(--border-width) solid var(--line-2);
  border-radius:var(--radius-card);
  padding:28px 32px;
  max-width:var(--prose-max);
  display:flex;
  flex-direction:column;
  gap:12px;
}
.callout.on-deep{
  border-color:var(--border-on-deep);
  background:var(--surface-deep-card);
}
.callout-kicker{
  font-size:var(--fs-label);
  font-weight:var(--fw-medium);
  letter-spacing:var(--tracking-label);
  text-transform:uppercase;
  color:var(--amber);
}
.callout.on-deep .callout-kicker{color:var(--accent-on-deep)}
.callout-title{
  font-family:var(--font-sans);
  font-size:var(--fs-h3);
  font-weight:var(--fw-medium);
  letter-spacing:var(--tracking-h3);
  line-height:var(--lh-h3);
  color:var(--ink);
  margin:0;
}
.callout.on-deep .callout-title{color:var(--text-on-deep)}
.callout-body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink-2)}
.callout.on-deep .callout-body{color:var(--text-secondary-on-deep)}

.award-seal{
  position:relative;
  display:inline-block;
  padding:28px 32px;
  max-width:420px;
}
.award-seal .corner{
  position:absolute;
  width:24px;
  height:24px;
}
.award-seal .c1{top:0;left:0;border-top:var(--bracket-width) solid var(--amber);border-left:var(--bracket-width) solid var(--amber)}
.award-seal .c2{top:0;right:0;border-top:var(--bracket-width) solid var(--amber);border-right:var(--bracket-width) solid var(--amber)}
.award-seal .c3{bottom:0;left:0;border-bottom:var(--bracket-width) solid var(--amber);border-left:var(--bracket-width) solid var(--amber)}
.award-seal .c4{bottom:0;right:0;border-bottom:var(--bracket-width) solid var(--amber);border-right:var(--bracket-width) solid var(--amber)}
.award-seal-inner{display:flex;flex-direction:column;gap:10px}
.award-seal-prize{
  font-size:var(--fs-label);
  font-weight:var(--fw-medium);
  letter-spacing:var(--tracking-label);
  text-transform:uppercase;
  color:var(--amber);
}
.award-seal-name{
  font-family:var(--font-display);
  font-size:var(--fs-h3);
  font-weight:var(--fw-semibold);
  letter-spacing:var(--tracking-h3);
  line-height:var(--lh-h3);
  color:var(--ink);
}
.award-seal-cat{
  font-size:var(--fs-caption);
  line-height:var(--lh-caption);
  color:var(--ink-2);
}
.award-seal-note{
  font-size:var(--fs-caption);
  line-height:var(--lh-caption);
  color:var(--ink-3);
}

.logo-strip{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:clamp(28px,5vw,64px);
}
.logo-strip span{
  font-family:var(--font-sans);
  font-size:16px;
  font-weight:var(--fw-medium);
  letter-spacing:0.01em;
  color:var(--ink-3);
  white-space:nowrap;
}

.site-footer{
  background:var(--surface-alt);
  border-top:var(--border-width) solid var(--line);
  color:var(--ink-2);
}
.site-footer-inner{
  max-width:var(--container-max);
  margin-inline:auto;
  padding-inline:clamp(var(--container-pad),5vw,var(--container-pad-lg));
  padding-block:var(--space-16);
}
.site-footer-grid{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr)) minmax(0,1.2fr);
  gap:clamp(32px,5vw,64px);
}
.site-footer-brand{display:flex;flex-direction:column;gap:16px;max-width:32ch}
.site-footer-brand img{height:30px;width:auto;display:block;align-self:flex-start;object-fit:contain;max-width:100%}
.site-footer-tag{
  font-size:var(--fs-caption);
  line-height:var(--lh-caption);
  color:var(--ink-3);
}
.site-footer nav{display:flex;flex-direction:column;gap:14px}
.site-footer-head{
  font-size:var(--fs-label);
  font-weight:var(--fw-medium);
  letter-spacing:var(--tracking-label);
  text-transform:uppercase;
  color:var(--ink-3);
}
.site-footer nav a{
  font-size:var(--fs-body);
  color:var(--ink-2);
  text-decoration:none;
}
.site-footer nav a:hover{color:var(--ink)}
.site-footer-contact{display:flex;flex-direction:column;gap:14px}
.site-footer-contact a[href^="mailto"]{color:var(--amber);text-decoration:none;overflow-wrap:anywhere}
.site-footer-legal{
  margin-top:var(--space-16);
  padding-top:var(--space-6);
  border-top:var(--border-width) solid var(--line);
  display:flex;
  flex-wrap:wrap;
  gap:8px 24px;
  align-items:center;
  justify-content:space-between;
}
.site-footer-legal span{
  font-size:var(--fs-caption);
  color:var(--ink-3);
  font-variant-numeric:tabular-nums;
}
.site-footer-legal a{
  font-size:var(--fs-caption);
  color:var(--ink-2);
  text-underline-offset:3px;
}

@media (max-width:860px){
  .site-footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (max-width:560px){
  .site-footer-grid{grid-template-columns:minmax(0,1fr)}
}
