/* Carbon Bridge — site styles.
   The design's own styling is inline in the templates (resources/views/site), exactly as
   in the approved prototypes; hover states are in hover.css. This file holds the tokens,
   the base rules every page shares, and the few things the prototype did in JavaScript. */

:root{
  --cb-forest:#10331A; --cb-green:#1C6B33; --cb-green-dark:#145126; --cb-lime:#6DB33F;
  --cb-ink:#16181A; --cb-paper:#FAFAF8; --cb-gray:#F1F1ED; --cb-line:rgba(16,51,26,.14);
  --cb-head:'Archivo',system-ui,sans-serif; --cb-body:'IBM Plex Sans',system-ui,sans-serif;
  --cb-mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;
}
*{box-sizing:border-box}
html{max-width:100%;overflow-x:hidden}
html,body{height:auto;min-height:100%}
body{max-width:100%}
body{margin:0;background:var(--cb-paper);color:var(--cb-ink);font-family:var(--cb-body);-webkit-font-smoothing:antialiased;text-wrap:pretty}
h1,h2,h3,h4{font-family:var(--cb-head);margin:0}
p{margin:0}
a{color:var(--cb-green);text-decoration:none}
a:hover{color:var(--cb-green-dark)}
@keyframes cbRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes cbPanelIn{from{opacity:0}to{opacity:1}}
@keyframes cbPanelItem{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--cb-lime);outline-offset:2px}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* ── nav: transparent → solid after 80px of scroll (site.js), burger below 1040px ── */
.cb-nav.is-scrolled{padding-top:10px!important;padding-bottom:10px!important;background-color:var(--cb-ink)!important;box-shadow:0 1px 0 rgba(255,255,255,.08)!important}
@media (max-width:1040px){
  .cb-links{display:none!important}
  .cb-burger{display:flex!important}
}
.cb-panel.is-open{display:flex!important;animation:cbPanelIn .3s ease both}
@media (min-width:1041px){ .cb-panel.is-open{display:none!important} }
body.cb-locked{overflow:hidden}

/* honeypot field of the public forms: never visible to people */
.cb-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}

/* CMS draft preview notice (only editors ever see it) */
.cb-draft{position:fixed;left:0;right:0;bottom:0;z-index:70;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 16px;padding:10px 16px;background:#FFF4D6;color:#6B4E00;border-top:1px solid #E5C766;font:500 13px/1.5 'IBM Plex Sans',system-ui,sans-serif;text-align:center}
.cb-draft a{color:#6B4E00;font-weight:600;text-decoration:underline}
