/* CertAttestor — brand overlay on top of Bootstrap 5. Loaded AFTER bootstrap.min.css. */
:root{
  --bs-primary:#0C3B42; --bs-primary-rgb:12,59,66;
  --bs-success:#1C7A4E; --bs-success-rgb:28,122,78;
  --bs-body-font-family:"IBM Plex Sans",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  --bs-body-color:#14232B; --bs-body-color-rgb:20,35,43;
  --bs-link-color-rgb:14,70,80; --bs-link-hover-color-rgb:8,42,48;
  --ca-brass:#B0842F; --ca-brass-2:#CDA255; --ca-serif:"Archivo","Helvetica Neue",Arial,sans-serif; --ca-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
}
body{-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6,.ca-serif,.display-1,.display-2,.display-3,.display-4,.display-5{font-family:var(--ca-serif);font-weight:800;letter-spacing:-.015em}
.ca-mono{font-family:var(--ca-mono)}
a{text-underline-offset:.15em}

/* primary buttons -> teal; success stays brand green via --bs-success-rgb */
.btn-primary{--bs-btn-bg:#0C3B42;--bs-btn-border-color:#0C3B42;--bs-btn-hover-bg:#0e4650;--bs-btn-hover-border-color:#0e4650;
  --bs-btn-active-bg:#082A30;--bs-btn-active-border-color:#082A30;--bs-btn-disabled-bg:#0C3B42;--bs-btn-disabled-border-color:#0C3B42;--bs-btn-focus-shadow-rgb:176,132,47}
.btn-outline-secondary{--bs-btn-color:#0C3B42;--bs-btn-border-color:#B7C0BF;--bs-btn-hover-bg:#0C3B42;--bs-btn-hover-border-color:#0C3B42;--bs-btn-hover-color:#fff}
.bg-success,.text-bg-success{background-color:#1C7A4E!important}
:focus-visible{outline:3px solid var(--ca-brass);outline-offset:1px}

/* navbar */
.ca-navbar{background:#fff;border-bottom:1px solid var(--bs-border-color);box-shadow:0 1px 3px rgba(12,59,66,.05)}
.navbar-brand .brand-name{font-family:var(--ca-serif);font-weight:800;font-size:20px;color:#14232B;line-height:1}
.navbar-brand .brand-name b{color:var(--ca-brass);font-weight:800}
.brand-mark{width:32px;height:32px;display:inline-flex}
.ca-navbar .nav-link{font-weight:500;color:#3d4a4d}
.ca-navbar .nav-link:hover{color:#0C3B42}

/* eyebrow + accents */
.ca-eyebrow{font-family:var(--ca-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ca-brass);font-weight:500}
.ca-hero{background:linear-gradient(180deg,#fff,#F3F6F5 90%);border-bottom:1px solid var(--bs-border-color)}
.ca-hero .form-control{font-family:var(--ca-mono);letter-spacing:.02em}
.ca-badge{background:#fff;border:1px solid var(--bs-border-color);border-radius:999px;padding:8px 15px;font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:8px;color:#3d4a4d}
.ca-badge svg,.ca-step-ico svg,.ca-check svg{color:#0C3B42}
.ca-badge svg{width:19px;height:19px}
.ca-step-ico svg{width:32px;height:32px}
.ca-step-n{font-family:var(--ca-mono);font-size:14px;color:var(--ca-brass);font-weight:600;margin:10px 0 2px}
.ca-check{color:#1C7A4E;flex:0 0 auto}.ca-check svg{width:26px;height:26px}
.ca-cta{border-left:5px solid var(--ca-brass)!important}
.ca-footer{background:#F3F6F5;border-top:4px solid var(--ca-brass)!important}
.ca-footer .brand-name{font-family:var(--ca-serif);font-weight:800;font-size:20px}
.ca-footer .ca-fh{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:#5D6B6E;font-family:var(--bs-body-font-family);font-weight:700}
.ca-footer a{display:block;margin-bottom:8px;color:#0E4650;text-decoration:none}
.ca-footer a:hover{text-decoration:underline}
.ca-verd{display:inline-flex;align-items:center;gap:8px;background:#1C7A4E;color:#fff;font-family:var(--ca-serif);font-weight:800;padding:12px 16px;border-radius:.5rem}
.ca-verd svg{width:20px;height:20px}
/* accordion (FAQ) */
.accordion{--bs-accordion-btn-focus-box-shadow:0 0 0 .2rem rgba(176,132,47,.25)}
.accordion-button:not(.collapsed){color:#0C3B42;background-color:#E9EFED;box-shadow:inset 0 -1px 0 var(--bs-border-color)}
.accordion-button:focus{border-color:#B0842F}
.accordion-button{font-weight:600}
