*,*::before,*::after {box-sizing: border-box;}html {-webkit-text-size-adjust: 100%;scroll-behavior: smooth;scroll-padding-top: 6rem;}html {background: var(--c-ground);}html {accent-color: var(--c-brand);}::selection {background: var(--c-brand-soft);color: var(--c-ink);}body {margin: 0;background: transparent;color: var(--c-ink);font-family: var(--font-sans);font-size: var(--fs-base);line-height: var(--lh-body);-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility;}h1,h2,h3,h4 {margin: 0;color: var(--c-ink);font-family: var(--font-display);font-weight: var(--fw-bold);line-height: var(--lh-tight);text-wrap: balance;letter-spacing: var(--tracking-snug);overflow-wrap: break-word;}h1,h2 {font-weight: var(--fw-heavy);letter-spacing: var(--tracking-tight);}h1 {font-size: var(--fs-3xl);}h2 {font-size: var(--fs-2xl);}h3 {font-size: var(--fs-lg);line-height: var(--lh-snug);}h4 {font-size: var(--fs-md);line-height: var(--lh-snug);}p {margin: 0 0 var(--sp-4);max-width: var(--measure);}p:last-child {margin-bottom: 0;}strong {font-weight: var(--fw-semi);color: var(--c-ink);}small {font-size: var(--fs-sm);}ul,ol {margin: 0 0 var(--sp-4);padding-left: 1.2em;}li + li {margin-top: var(--sp-2);}li::marker {color: var(--c-ink-3);}.list-bare {list-style: none;margin: 0;padding: 0;}.list-bare > li + li {margin-top: 0;}hr {border: 0;border-top: 1px solid var(--c-line);margin: var(--sp-7) 0;}code,kbd,samp {font-family: var(--font-mono);font-size: .875em;background: var(--c-surface);border: 1px solid var(--c-line);border-radius: var(--radius-sm);padding: .1em .35em;}a {color: var(--c-brand);text-decoration-thickness: .06em;text-underline-offset: .18em;transition: color var(--dur-2) var(--ease-out);}a:hover {color: var(--c-brand-2);}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible {outline: 2px solid var(--c-focus);outline-offset: 2px;border-radius: var(--radius-sm);}img,svg,video {max-width: 100%;height: auto;display: block;}figure {margin: 0;}figcaption {margin-top: var(--sp-2);color: var(--c-ink-3);font-size: var(--fs-sm);}[hidden] {display: none !important;}.table-wrap {overflow-x: auto;border: 1px solid var(--c-line);border-radius: var(--radius-lg);background: var(--c-paper);box-shadow: var(--shadow-sm);}table {border-collapse: collapse;width: 100%;font-size: var(--fs-sm);}th {text-align: left;font-family: var(--font-display);font-size: var(--fs-xs);font-weight: var(--fw-semi);line-height: var(--lh-snug);letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-ink-3);background: var(--c-surface);padding: var(--sp-3) var(--sp-4);border-bottom: 1px solid var(--c-line);white-space: nowrap;}th[scope="row"] {white-space: normal;}td {padding: var(--sp-3) var(--sp-4);border-bottom: 1px solid var(--c-line);color: var(--c-ink-2);vertical-align: top;font-variant-numeric: tabular-nums;}tbody tr:last-child td {border-bottom: 0;}label {display: block;margin-bottom: var(--sp-2);font-size: var(--fs-sm);font-weight: var(--fw-medium);color: var(--c-ink);}input:where(:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="file"]):not([type="range"]):not([type="color"]):not([type="image"])),select,textarea {width: 100%;min-height: 2.75rem;padding: var(--sp-2) var(--sp-3);font: inherit;font-size: var(--fs-base);color: var(--c-ink);background: var(--c-paper);border: 1px solid var(--c-line-strong);border-radius: var(--radius);transition: border-color var(--dur-2) var(--ease-out);}@media (hover: hover) {input:hover,select:hover,textarea:hover {border-color: var(--c-ink-3);}}input:focus,select:focus,textarea:focus {border-color: var(--c-brand);}textarea {min-height: 8rem;padding-block: var(--sp-3);resize: vertical;}input[type="number"] {appearance: textfield;-moz-appearance: textfield;}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button {appearance: none;margin: 0;}::placeholder {color: var(--c-ink-3);opacity: 1;}fieldset {border: 0;margin: 0;padding: 0;}.field {margin-bottom: var(--sp-5);}.field-row {display: grid;grid-template-columns: repeat(auto-fit,minmax(min(100%,8rem),1fr));gap: var(--sp-4);}.field-row .field {margin-bottom: 0;}fieldset.field legend {padding: 0;margin-bottom: var(--sp-3);font-size: var(--fs-sm);font-weight: var(--fw-medium);color: var(--c-ink);}.field__hint {margin-top: var(--sp-2);font-size: var(--fs-sm);color: var(--c-ink-3);}.field__error {margin-top: var(--sp-2);font-size: var(--fs-sm);color: var(--c-crit);}input[aria-invalid="true"],textarea[aria-invalid="true"] {border-color: var(--c-crit);}.visually-hidden {position: absolute;width: 1px;height: 1px;margin: -1px;padding: 0;overflow: hidden;clip: rect(0 0 0 0);clip-path: inset(50%);white-space: nowrap;border: 0;}.label {font-family: var(--font-display);font-size: var(--fs-xs);font-weight: var(--fw-semi);line-height: var(--lh-snug);letter-spacing: var(--tracking-label);text-transform: uppercase;color: var(--c-ink-3);}.tnum {font-variant-numeric: tabular-nums;}@media (prefers-reduced-motion: reduce) {html {scroll-behavior: auto;}*,*::before,*::after {animation-duration: .01ms !important;animation-iteration-count: 1 !important;transition-duration: .01ms !important;}}@media print {[data-reveal],[data-reveal].is-armed,[data-reveal] [data-reveal-item],[data-reveal].is-armed [data-reveal-item],.section[data-reveal].is-armed > * {opacity: 1 !important;transform: none !important;transition: none !important;}.site-header,.site-footer,.consent {display: none;}body {color: #000;background: #fff;}a[href^="http"]::after {content: " (" attr(href) ")";font-size: .8em;}*,*::before,*::after {color: #000 !important;-webkit-text-fill-color: currentColor !important;background: transparent !important;box-shadow: none !important;text-shadow: none !important;}html {background: #fff !important;color-scheme: light !important;}.tile,.card,.pillar,.stat,.quote,.device,.bento__photo,.cta-band .stack,tr {break-inside: avoid;}h1,h2,h3,.section__eyebrow,.hero__title {break-after: avoid;}.section__eyebrow {display: block;}.map-wrap {background: var(--c-deep) !important;-webkit-print-color-adjust: exact;print-color-adjust: exact;}.tile__body,.card--project .card__body {background: #fff !important;-webkit-print-color-adjust: exact;print-color-adjust: exact;}.showcase__media {display: none !important;}}
