/* ═══════════════════════════════════════════════════════════════
   CMW Consultants — custom.css v5 — Full UI Overhaul
   GothamPro Light throughout | Steel & Sage palette
   Sage #8E8E79 | Steel #788186 | Black #1a1d1e | Body #2d3436
   Muted #636e72 | Cream #f5f5f3 | Border #c8cfd2
   ═══════════════════════════════════════════════════════════════ */

/* ── @font-face ──────────────────────────────────────────────── */
@font-face {
  font-family: "GothamPro";
  src: url("/assets/gotham/GothamPro-Light.woff2") format("woff2"),
       url("/assets/gotham/GothamPro-Light.woff") format("woff");
  font-weight: 100; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "GothamPro";
  src: url("/assets/gotham/GothamPro-LightItalic.woff2") format("woff2"),
       url("/assets/gotham/GothamPro-LightItalic.woff") format("woff");
  font-weight: 100; font-style: italic; font-display: swap;
}
@font-face {
  font-family: "GothamPro";
  src: url("/assets/gotham/GothamPro.woff2") format("woff2"),
       url("/assets/gotham/GothamPro.woff") format("woff");
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "GothamPro";
  src: url("/assets/gotham/GothamPro-Italic.woff2") format("woff2"),
       url("/assets/gotham/GothamPro-Italic.woff") format("woff");
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: "GothamPro";
  src: url("/assets/gotham/GothamPro-Medium.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "GothamPro";
  src: url("/assets/gotham/GothamPro-Bold.woff2") format("woff2");
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "GothamPro";
  src: url("/assets/gotham/GothamPro-Black.woff2") format("woff2");
  font-weight: 900; font-style: normal; font-display: swap;
}

/* ── CSS Variables ───────────────────────────────────────────── */
:root {
  --cmw-sage: #8E8E79;
  --cmw-steel: #788186;
  --cmw-black: #1a1d1e;
  --cmw-body: #2d3436;
  --cmw-muted: #636e72;
  --cmw-cream: #f5f5f3;
  --cmw-border: #c8cfd2;
  --cmw-beige: #d2a98e;
  --cmw-font: "GothamPro", -apple-system, "Segoe UI", sans-serif;
}

/* ═══════════════════════════════════════════════════════════════
   1. GLOBAL RESET — Override Inter/Helvetica everywhere
   ═══════════════════════════════════════════════════════════════ */
html, body, #wrapper, .wrapper,
p, span:not(.fa):not(.fas):not(.far):not(.fab), div, a, li, td, th, dt, dd,
label, legend, caption, figcaption,
blockquote, cite, code, pre, small, strong, em, b, i:not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad):not([class^="fa-"]), u,
input, textarea, select, option, optgroup, button,
h1, h2, h3, h4, h5, h6 {
  font-family: var(--cmw-font) !important;
}

body {
  font-weight: 100;
  color: var(--cmw-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Preserve icon fonts — MUST override global reset */
.fa, .fas, .far, .fab, .fal, .fad,
.fa-solid, .fa-regular, .fa-brands, .fa-light, .fa-duotone,
[class^="fa-"], [class*=" fa-"],
i.fa, i.fas, i.far, i.fab, i.fal, i.fad,
i[class^="fa-"], i[class*=" fa-"],
span.fa, span.fas, span.far, span.fab,
button .fa, button .fas, button .far, button .fab,
a .fa, a .fas, a .far, a .fab,
.btn .fa, .btn .fas, .btn .far, .btn .fab,
.nav .fa, .nav .fas, .nav .far, .nav .fab,
.input-group-addon .fa, .input-group-addon .fas,
.customers-area .fa, .customers-area .fas, .customers-area .far, .customers-area .fab {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900;
}
.far, i.far, span.far, .customers-area .far {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 400 !important;
}
.fab, i.fab, span.fab, .customers-area .fab {
  font-family: "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
}
.glyphicon, [class^="glyphicon-"], [class*=" glyphicon-"] {
  font-family: "Glyphicons Halflings" !important;
}
.material-icons, .mdi { font-family: "Material Design Icons" !important; }

/* ═══════════════════════════════════════════════════════════════
   2. TYPOGRAPHY HIERARCHY
   ═══════════════════════════════════════════════════════════════ */
h1, h2, h3 {
  font-weight: 100 !important;
  letter-spacing: 1.5px;
  color: var(--cmw-black);
}

h4, h5, h6 {
  font-weight: 100 !important;
  letter-spacing: 1px;
  color: var(--cmw-black);
}

h4.font-bold, h4.no-margin,
.page-title, .page-heading {
  font-weight: 100 !important;
  letter-spacing: 1.5px;
  text-transform: none;
}

strong, b, .bold, .font-bold {
  font-weight: 500 !important;
}

small, .text-muted, .muted {
  color: var(--cmw-muted);
}

/* ═══════════════════════════════════════════════════════════════
   3. TOP HEADER BAR
   ═══════════════════════════════════════════════════════════════ */
.top-header,
.top-header a,
.top-header span,
.navbar, .navbar a, .navbar span,
.navbar-header, .navbar-header a,
.header-search input,
#top-search input,
.top-header .dropdown-menu a {
  font-weight: 100 !important;
  letter-spacing: 0.5px;
}

.header-search input,
#top-search input {
  font-size: 13px !important;
}

/* ═══════════════════════════════════════════════════════════════
   4. SIDEBAR / NAVIGATION
   ═══════════════════════════════════════════════════════════════ */
.sidebar,
.sidebar a,
.sidebar span,
.sidebar label,
.sidebar .menu-text,
#sidebar-menu li a,
#sidebar-menu li a span,
#sidebar-menu .child_menu li a,
#sidebar-menu .child_menu li a span,
.sidebar .profile_info span,
.sidebar .profile_info h2,
.sidebar-profile-image + div span,
.nav-tabs > li > a,
.sidebar-user-info,
.sidebar-user-info span {
  font-weight: 100 !important;
  letter-spacing: 0.5px;
}

#sidebar-menu > li > a {
  font-size: 13px !important;
  font-weight: 100 !important;
}

#sidebar-menu .child_menu li a {
  font-size: 12px !important;
}

#sidebar-menu li.active > a,
#sidebar-menu li.active > a span {
  color: var(--cmw-sage) !important;
  font-weight: 400 !important;
}

#sidebar-menu li a:hover,
#sidebar-menu li a:hover span {
  color: var(--cmw-sage) !important;
}

/* Sidebar badge counts */
.sidebar .badge,
#sidebar-menu .badge {
  font-weight: 400 !important;
  font-size: 10px !important;
}

/* ═══════════════════════════════════════════════════════════════
   5. PANELS & CARDS
   ═══════════════════════════════════════════════════════════════ */
.panel,
.panel-body,
.panel-heading,
.panel-title,
.panel-footer {
  font-weight: 100;
}

.panel-heading {
  letter-spacing: 0.5px;
}

.panel-title {
  font-weight: 400 !important;
  letter-spacing: 1px;
}

/* ═══════════════════════════════════════════════════════════════
   6. DATA TABLES
   ═══════════════════════════════════════════════════════════════ */
.table > thead > tr > th,
table.dataTable > thead > tr > th,
.table-responsive > .table > thead > tr > th {
  font-size: 11px !important;
  font-weight: 400 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  border-bottom: 2px solid var(--cmw-steel) !important;
  border-top: none !important;
  color: var(--cmw-body) !important;
}

.table > tbody > tr > td,
table.dataTable > tbody > tr > td {
  font-size: 13px !important;
  font-weight: 100 !important;
  border-color: #e2e6e8 !important;
  color: var(--cmw-body);
}

/* Alternating rows */
table.dataTable > tbody > tr:nth-of-type(odd) { background-color: #f8f9f9 !important; }
table.dataTable > tbody > tr:hover { background-color: #eef0f1 !important; }

/* Table links */
.table > tbody > tr > td a:not(.btn):not(.label):not(.badge) { color: var(--cmw-steel) !important; }
.table > tbody > tr > td a:not(.btn):not(.label):not(.badge):hover { color: var(--cmw-sage) !important; }

/* Task names */
table.dataTable > tbody > tr > td a[onclick*="init_task_modal"] {
  color: var(--cmw-sage) !important;
  font-weight: 400 !important;
}

/* Items tables — steel header */
.table.items thead { background: var(--cmw-steel) !important; }
.table.items thead th {
  color: #fff !important;
  border-color: var(--cmw-sage) !important;
  font-weight: 400 !important;
}
.table.items .main {
  background-color: #eef0f1 !important;
  border-color: var(--cmw-border) !important;
}

/* DataTable controls */
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate,
.dataTables_wrapper select,
.dataTables_wrapper input,
.dataTables_wrapper label {
  font-weight: 100 !important;
  font-size: 12px !important;
}

/* ═══════════════════════════════════════════════════════════════
   7. BUTTONS
   ═══════════════════════════════════════════════════════════════ */
.btn {
  font-weight: 400 !important;
  letter-spacing: 0.5px;
  border-radius: 3px;
}

.btn-primary {
  background-color: var(--cmw-sage) !important;
  border-color: var(--cmw-sage) !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: var(--cmw-steel) !important;
  border-color: var(--cmw-steel) !important;
}

.btn-success {
  background-color: var(--cmw-sage) !important;
  border-color: var(--cmw-sage) !important;
}
.btn-success:hover, .btn-success:focus, .btn-success:active {
  background-color: #7a7a66 !important;
  border-color: #7a7a66 !important;
}

.btn-info {
  background-color: var(--cmw-steel) !important;
  border-color: var(--cmw-steel) !important;
}
.btn-info:hover, .btn-info:focus, .btn-info:active {
  background-color: #667078 !important;
  border-color: #667078 !important;
}

.btn-default {
  border-color: var(--cmw-border) !important;
  color: var(--cmw-body) !important;
}
.btn-default:hover {
  background-color: var(--cmw-cream) !important;
  border-color: var(--cmw-border) !important;
}

.btn-group .btn,
.btn-toolbar .btn {
  font-weight: 400 !important;
}

/* ═══════════════════════════════════════════════════════════════
   8. FORMS & INPUTS
   ═══════════════════════════════════════════════════════════════ */
.form-control {
  font-weight: 100 !important;
  font-size: 13px !important;
  color: var(--cmw-body) !important;
  border-color: var(--cmw-border) !important;
}

.form-control:focus {
  border-color: var(--cmw-sage) !important;
  box-shadow: 0 0 0 2px rgba(142, 142, 121, 0.15) !important;
}

.control-label, label {
  font-weight: 400 !important;
  font-size: 12px !important;
  letter-spacing: 0.5px;
  color: var(--cmw-body);
}

.form-group .help-block {
  font-size: 11px !important;
  color: var(--cmw-muted) !important;
}

textarea.form-control {
  font-weight: 100 !important;
}

/* Input groups */
.input-group-addon,
.input-group-text {
  font-weight: 100 !important;
  border-color: var(--cmw-border) !important;
  background-color: var(--cmw-cream) !important;
}

/* ═══════════════════════════════════════════════════════════════
   9. SELECT / DROPDOWNS
   ═══════════════════════════════════════════════════════════════ */
.bootstrap-select .btn,
.bootstrap-select .dropdown-toggle,
.bootstrap-select .dropdown-menu li a,
select.form-control,
.select2-container .select2-selection,
.select2-container .select2-results__option,
.select2-dropdown {
  font-weight: 100 !important;
}

.dropdown-menu,
.dropdown-menu > li > a {
  font-weight: 100 !important;
  font-size: 13px !important;
  color: var(--cmw-body) !important;
}

.dropdown-menu > li > a:hover,
.dropdown-menu > .active > a {
  background-color: var(--cmw-cream) !important;
  color: var(--cmw-sage) !important;
}

/* ═══════════════════════════════════════════════════════════════
   10. MODALS
   ═══════════════════════════════════════════════════════════════ */
.modal-title {
  font-weight: 100 !important;
  letter-spacing: 1px;
  font-size: 18px !important;
  color: var(--cmw-black);
}

.modal-header {
  border-bottom-color: var(--cmw-border) !important;
}

.modal-footer {
  border-top-color: var(--cmw-border) !important;
}

.modal-body,
.modal-body p,
.modal-body span,
.modal-body label,
.modal-body td,
.modal-body th {
  font-weight: 100;
}

/* Full screen modal */
.full-screen-modal .modal-title {
  font-size: 20px !important;
}

/* ═══════════════════════════════════════════════════════════════
   11. TABS & PILLS
   ═══════════════════════════════════════════════════════════════ */
.nav-tabs > li > a,
.nav-pills > li > a {
  font-weight: 100 !important;
  letter-spacing: 0.5px;
  font-size: 13px !important;
  color: var(--cmw-muted) !important;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
  color: var(--cmw-sage) !important;
  font-weight: 400 !important;
  border-bottom-color: var(--cmw-sage) !important;
}

.nav-tabs > li > a:hover {
  color: var(--cmw-sage) !important;
}

/* ═══════════════════════════════════════════════════════════════
   12. BADGES & LABELS
   ═══════════════════════════════════════════════════════════════ */
.label, .badge {
  font-weight: 400 !important;
  letter-spacing: 0.5px;
  font-size: 10px !important;
}

.label-success { background-color: var(--cmw-sage) !important; }
.label-info { background-color: var(--cmw-steel) !important; }
.label-primary { background-color: var(--cmw-sage) !important; }

/* ═══════════════════════════════════════════════════════════════
   13. ALERTS & NOTIFICATIONS
   ═══════════════════════════════════════════════════════════════ */
.alert {
  font-weight: 100 !important;
  border-radius: 3px;
}

.float-alert {
  font-weight: 400 !important;
}

/* Notification dropdown */
.notifications-list,
.notifications-list a,
.notifications-list span {
  font-weight: 100 !important;
  font-size: 12px !important;
}

/* ═══════════════════════════════════════════════════════════════
   14. TOOLTIPS & POPOVERS
   ═══════════════════════════════════════════════════════════════ */
.tooltip-inner {
  font-weight: 100 !important;
  font-size: 11px !important;
  letter-spacing: 0.3px;
}

.popover,
.popover-title,
.popover-content {
  font-weight: 100 !important;
}

.popover-title {
  font-weight: 400 !important;
  letter-spacing: 0.5px;
}

/* ═══════════════════════════════════════════════════════════════
   15. DATE & COLOR PICKERS
   ═══════════════════════════════════════════════════════════════ */
.datepicker,
.datepicker table,
.datepicker td, .datepicker th,
.daterangepicker,
.daterangepicker td, .daterangepicker th,
.daterangepicker .calendar-table {
  font-weight: 100 !important;
}

.datepicker .datepicker-switch,
.daterangepicker .month {
  font-weight: 400 !important;
  letter-spacing: 0.5px;
}

.datepicker td.active,
.daterangepicker td.active {
  background-color: var(--cmw-sage) !important;
}

.colorpicker,
.cpicker, .cpicker-big, .cpicker-small,
.gpicker {
  font-weight: 100 !important;
}

/* ═══════════════════════════════════════════════════════════════
   16. TINYMCE / RICH TEXT EDITOR
   ═══════════════════════════════════════════════════════════════ */
.tox, .tox *,
.tox .tox-toolbar__primary,
.tox .tox-menubar,
.tox .tox-mbtn,
.tox .tox-tbtn,
.tox .tox-statusbar,
.tox .tox-dialog,
.tox .tox-dialog__title,
.tox .tox-label,
.mce-container, .mce-container *,
.mce-widget, .mce-btn,
.note-editor, .note-editor * {
  font-family: var(--cmw-font) !important;
  font-weight: 100;
}

/* ═══════════════════════════════════════════════════════════════
   17. KANBAN BOARDS
   ═══════════════════════════════════════════════════════════════ */
.kan-ban-col .panel-heading,
.kan-ban-col .kan-ban-col-title,
.pipeline-heading,
.estimate-pipeline .panel-heading {
  font-weight: 400 !important;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 11px !important;
}

.kan-ban-col .panel-body,
.kan-ban-col .kan-ban-content-wrapper {
  font-weight: 100;
}

/* Kanban card items */
.kan-ban-col .panel-body .card,
.kan-ban-content-wrapper a {
  font-weight: 100 !important;
}

/* ═══════════════════════════════════════════════════════════════
   18. TASKS & TASK MODALS
   ═══════════════════════════════════════════════════════════════ */
.task-name, .task-name a {
  font-weight: 400 !important;
  color: var(--cmw-sage) !important;
}

.task-info span,
.task-info label,
.task-single-col label,
.task-single-col span,
.checklist-items li,
.checklist-items label {
  font-weight: 100 !important;
}

/* Task comments */
.comment, .comment-content,
.comment-content p,
.child-comments,
.edit-task-comment {
  font-weight: 100 !important;
  font-size: 13px !important;
}

.comment .bold, .comment strong {
  font-weight: 500 !important;
}

/* ═══════════════════════════════════════════════════════════════
   19. LEADS & DEALS
   ═══════════════════════════════════════════════════════════════ */
.lead-name, .lead-name a {
  font-weight: 400 !important;
}

.lead-info span, .lead-info label,
.current-user-lead span {
  font-weight: 100 !important;
}

/* ═══════════════════════════════════════════════════════════════
   20. INVOICES, ESTIMATES, PROPOSALS (HTML Preview)
   ═══════════════════════════════════════════════════════════════ */
.invoice-html-heading,
.invoice-html-number,
.estimate-html-heading,
[class*="invoice-top"],
[class*="invoice-item"],
[class*="estimate-item"] {
  font-weight: 100 !important;
}

.invoice-html-heading,
.estimate-html-heading {
  letter-spacing: 1px;
}

/* ═══════════════════════════════════════════════════════════════
   21. CONTRACTS & PROPOSALS
   ═══════════════════════════════════════════════════════════════ */
.contract-attachment-wrapper,
.invoice-attachment-wrapper {
  font-weight: 100 !important;
}

/* ═══════════════════════════════════════════════════════════════
   22. TIMELINE & ACTIVITY LOG
   ═══════════════════════════════════════════════════════════════ */
.timeline, .timeline li,
.timeline .timeline-item,
.timeline .timeline-item p,
.timeline .timeline-date,
.activity-log, .activity-log p {
  font-weight: 100 !important;
}

.timeline .timeline-date {
  font-size: 11px !important;
  color: var(--cmw-muted) !important;
  letter-spacing: 0.5px;
}

/* ═══════════════════════════════════════════════════════════════
   23. CALENDAR (FullCalendar)
   ═══════════════════════════════════════════════════════════════ */
.fc, .fc *,
.fc-header-toolbar,
.fc-toolbar h2,
.fc-day-header,
.fc-event, .fc-event-title,
.fc-daygrid-event,
.fc .fc-button {
  font-family: var(--cmw-font) !important;
  font-weight: 100;
}

.fc-toolbar h2, .fc-toolbar .fc-toolbar-title {
  font-weight: 100 !important;
  letter-spacing: 1px;
  font-size: 18px !important;
}

.fc-day-header, .fc-col-header-cell {
  font-weight: 400 !important;
  text-transform: uppercase;
  font-size: 11px !important;
  letter-spacing: 1px;
}

.fc .fc-button {
  font-weight: 400 !important;
}

.fc-event, .fc-daygrid-event {
  font-size: 11px !important;
}

/* ═══════════════════════════════════════════════════════════════
   24. WIDGETS & STAT BOXES
   ═══════════════════════════════════════════════════════════════ */
.ct-widget, .widget,
[class*="widget-"] {
  font-weight: 100;
}

.widget h3, .widget h4, .widget .widget-number,
.ct-widget h3, .ct-widget h4 {
  font-weight: 100 !important;
  letter-spacing: 0.5px;
}

/* Top stats bar (Unpaid, Paid, etc.) */
.invoice-top-stats,
.quick-stats-invoices span,
[class*="stats-box"],
.stats-box-text {
  font-weight: 100 !important;
}

/* ═══════════════════════════════════════════════════════════════
   25. BREADCRUMBS & PAGINATION
   ═══════════════════════════════════════════════════════════════ */
.breadcrumb, .breadcrumb li, .breadcrumb a {
  font-weight: 100 !important;
  font-size: 12px !important;
  letter-spacing: 0.5px;
}

.pagination > li > a,
.pagination > li > span,
.dataTables_paginate .paginate_button {
  font-weight: 100 !important;
}

.pagination > .active > a {
  background-color: var(--cmw-sage) !important;
  border-color: var(--cmw-sage) !important;
}

/* ═══════════════════════════════════════════════════════════════
   26. PROGRESS BARS
   ═══════════════════════════════════════════════════════════════ */
.progress-bar {
  font-weight: 400 !important;
  font-size: 10px !important;
}

.progress-bar-success,
.goal-progress .progress-bar {
  background-color: var(--cmw-sage) !important;
}

/* ═══════════════════════════════════════════════════════════════
   27. CHAT & NOTES
   ═══════════════════════════════════════════════════════════════ */
.chat-message, .chat-message p,
.internal-note, .internal-note p,
.reminder-text {
  font-weight: 100 !important;
  font-size: 13px !important;
}

/* ═══════════════════════════════════════════════════════════════
   28. CUSTOMER PORTAL (clients area)
   ═══════════════════════════════════════════════════════════════ */
.customers-area,
.customers-area *:not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad):not([class^="fa-"]):not([class*=" fa-"]),
body.customers *:not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad):not(.glyphicon):not([class^="fa-"]):not([class*=" fa-"]):not(svg):not(path) {
  font-family: var(--cmw-font) !important;
}

.customers-area h1, .customers-area h2,
.customers-area h3, .customers-area h4 {
  font-weight: 100 !important;
  letter-spacing: 1px;
}

.customers-area .nav-tabs > li > a {
  font-weight: 100 !important;
}

.customers-area .nav-tabs > li.active > a {
  color: var(--cmw-sage) !important;
  font-weight: 400 !important;
}

/* ═══════════════════════════════════════════════════════════════
   29. LOGIN / AUTHENTICATION
   ═══════════════════════════════════════════════════════════════ */
.authentication-page,
.authentication-page *,
.login-heading,
#login-form label,
#login-form .form-control,
#login-form .btn,
.forgot-password a {
  font-family: var(--cmw-font) !important;
  font-weight: 100;
}

.login-heading, .authentication-page h1 {
  font-weight: 100 !important;
  letter-spacing: 2px;
}

.authentication-page .btn-primary,
#login-form .btn-primary {
  background-color: var(--cmw-sage) !important;
  border-color: var(--cmw-sage) !important;
  font-weight: 400 !important;
}

/* ═══════════════════════════════════════════════════════════════
   30. MISC COMPONENTS
   ═══════════════════════════════════════════════════════════════ */

/* Dropzone file upload */
.dz-message, .dz-filename, .dz-size {
  font-weight: 100 !important;
}

/* Bootstrap-select */
.bootstrap-select .filter-option,
.bootstrap-select .dropdown-menu li a span {
  font-weight: 100 !important;
}

/* Toolbar notices */
.btn-toolbar-notice {
  font-weight: 400 !important;
}

/* FlexStage events */
.flexstage-event-name {
  font-weight: 400 !important;
}

/* SI Service Report */
.si-report-heading {
  font-weight: 100 !important;
  letter-spacing: 1px;
}

/* Proposals — inline HTML content */
.proposal-content, .proposal-content *,
.contract-content, .contract-content * {
  font-family: var(--cmw-font) !important;
}

/* Estimates pipeline */
.estimate-pipeline .status-name {
  font-weight: 400 !important;
  letter-spacing: 0.5px;
}

/* Projects */
.project-name, .project-name a {
  font-weight: 400 !important;
}

/* Milestones */
.milestone-name {
  font-weight: 400 !important;
  letter-spacing: 0.5px;
}

/* Discussion */
.discussion-subject, .discussion-subject a {
  font-weight: 400 !important;
}

/* Knowledge Base */
.kb-article h4, .kb-group h3 {
  font-weight: 100 !important;
  letter-spacing: 1px;
}

/* Staff member names */
.staff-profile-name {
  font-weight: 400 !important;
}

/* Empty state messages */
.no-data-text, .text-center.text-muted {
  font-weight: 100 !important;
  letter-spacing: 0.5px;
}

/* Footer */
.footer, .footer a, .footer span {
  font-weight: 100 !important;
  font-size: 11px !important;
}

/* Print overrides */
@media print {
  body, *, .table td, .table th {
    font-family: var(--cmw-font) !important;
    font-weight: 100;
  }
}
