/* Design-system override for the mirrored maturity-assessment app (compiled Vue + Bootstrap bundle,
   source not in this repo). Loaded after the app stylesheet; see DESIGN.md. SemiBold is a DEMO cut (test only). */
@font-face { font-family: 'Perfectly Nineties'; src: url('/fonts/PerfectlyNineties-Semibold.woff2') format('woff2'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Perfectly Nineties Fallback'; src: url('/fonts/PerfectlyNineties-Regular.woff') format('woff'); font-weight: 100 900; font-style: normal; font-display: swap; }
:root {
  --bs-body-font-family: 'Plus Jakarta Sans', 'Segoe UI', system-ui, sans-serif;
  --bs-body-color: #525252; --bs-body-bg: #fff;
  --bs-primary: #509ea4; --bs-primary-rgb: 80, 158, 164; --bs-link-color: #287387; --bs-link-color-rgb: 40, 115, 135;
  --bs-border-radius: 0; --bs-border-radius-sm: 0; --bs-border-radius-lg: 0;
}
body { background: #fff !important; color: #525252 !important; font-family: var(--bs-body-font-family) !important; font-size: 16px; }
.the-header { font-family: var(--bs-body-font-family) !important; background: #287387; color: #fff; padding: 18px 24px; text-transform: none; font-size: 14px; }
.the-header img { width: 170px !important; margin: 0 !important; }
header[data-v-dbbbfd72] { margin-top: 0 !important; }
.title-row { background: #f3f7fc; margin: 0 calc(50% - 50vw) 96px !important; padding: 96px calc(50vw - 50%) !important; }
h1[data-v-dbbbfd72] { font-family: 'Perfectly Nineties', 'Perfectly Nineties Fallback', Georgia, serif !important; font-weight: 600 !important; text-transform: none !important; color: #262626 !important; font-size: clamp(2.75rem, 6vw, 90px) !important; line-height: 1.02 !important; letter-spacing: -0.025em; }
h1 span[data-v-dbbbfd72] { color: inherit !important; display: inline !important; }
h2, h3, h4 { font-family: var(--bs-body-font-family) !important; font-weight: 600 !important; color: #262626 !important; }
p, li { color: #525252; }
a { color: #287387; }
.assessment-intro-row { background: #f3f7fc !important; border-radius: 0 !important; color: #525252; }
.assessment-intro-row * { color: inherit; }
.assessment-intro-row h2, .assessment-intro-row h3 { color: #262626 !important; }
.title-row .email-container input[type=email], #hubspot-form .hs-email input { border: 1.5px solid #287387 !important; border-radius: 999px !important; height: 46px !important; padding: 0 20px !important; font-family: var(--bs-body-font-family); color: #262626; }
.title-row .email-container input[type=submit], #hubspot-form .actions .hs-button, .btn-primary {
  margin-left: 8px !important; height: 46px !important; border-radius: 999px !important; padding: 0 24px !important; font: 600 15px/1.2 var(--bs-body-font-family) !important;
  background: #509ea4 !important; border: 1.5px solid #509ea4 !important; color: #fff !important;
}
.title-row .email-container input[type=submit]:hover, #hubspot-form .actions .hs-button:hover, .btn-primary:hover { background: #287387 !important; border-color: #287387 !important; }
.btn-secondary, .btn-outline-primary { border-radius: 999px !important; background: transparent !important; border: 1.5px solid #287387 !important; color: #287387 !important; }
.card, .form-control, .form-select, .progress, .alert { border-radius: 0 !important; box-shadow: none !important; }
.progress-bar { background: #509ea4 !important; }
#hubspot-form form .legal-consent-container .hs-richtext p { color: #525252; font-size: 14px; }
#hubspot-form form .legal-consent-container a { color: #287387 !important; text-decoration: underline; }
footer[data-v-b52558ac] { background: #287387 !important; font-family: var(--bs-body-font-family); }
footer[data-v-b52558ac], footer[data-v-b52558ac] p, footer[data-v-b52558ac] li, footer[data-v-b52558ac] h3 { color: #fff !important; }
footer[data-v-b52558ac] h3 { font-size: 14px !important; font-weight: 400 !important; text-transform: uppercase; color: #c4e7e4 !important; }
footer[data-v-b52558ac] a { font-size: 14px !important; }
footer[data-v-b52558ac] a:hover { text-decoration: underline !important; }
footer[data-v-b52558ac] .address { color: #c4e7e4 !important; font-size: 14px !important; }
footer[data-v-b52558ac] .fa-linkedin, footer [class*=fa-] { display: none !important; } /* no icons in the footer */
#hubspot-form > button { height: 46px; border-radius: 999px; padding: 0 24px; font: 600 15px/1.2 var(--bs-body-font-family); background: #509ea4; border: 1.5px solid #509ea4; color: #fff; cursor: pointer; }
#hubspot-form > button:hover { background: #287387; border-color: #287387; }
footer[data-v-b52558ac] .brand-col img { width: 170px !important; }
/* vector logo instead of the pixelated PNGs (Niklas, 2026-09-30) */
.the-header img, footer[data-v-b52558ac] .brand-col img { content: url('/carboncloud-logo-white.svg'); height: 18px !important; width: auto !important; }
.the-header { border-bottom: 0.5px solid #c4e7e4; }

/* phones: Bootstrap gx-5 rows (3rem gutter) are wider than the container padding and scrolled the page sideways */
@media (max-width: 576px) { .row.gx-5 { --bs-gutter-x: 1.5rem; } }
