/* Custom brand colors - matching your logo's navy blue */
:root {
  --primary: #1e3a5f; /* Your logo's navy blue */
  --primary-dark: #162d47; /* Darker shade for hover states */
  --primary-light: #2a4a70; /* Lighter shade for backgrounds */
}

/* Override Tailwind's primary color utilities with higher specificity */
html .text-primary,
.text-primary {
    --tw-text-opacity: 1 !important;
    color: var(--primary) !important;
    color: rgb(30 58 95 / var(--tw-text-opacity, 1)) !important;
}

html .text-primary-dark,
.text-primary-dark {
    --tw-text-opacity: 1 !important;
    color: var(--primary-dark) !important;
    color: rgb(22 45 71 / var(--tw-text-opacity, 1)) !important;
}

html .bg-primary,
.bg-primary {
    --tw-bg-opacity: 1 !important;
    background-color: var(--primary) !important;
    background-color: rgb(30 58 95 / var(--tw-bg-opacity, 1)) !important;
}

html .bg-primary-dark,
.bg-primary-dark {
    --tw-bg-opacity: 1 !important;
    background-color: var(--primary-dark) !important;
    background-color: rgb(22 45 71 / var(--tw-bg-opacity, 1)) !important;
}

.bg-primary\/10 { background-color: rgba(30, 58, 95, 0.1) !important; }
.bg-primary\/20 { background-color: rgba(30, 58, 95, 0.2) !important; }

html .border-primary,
.border-primary {
    --tw-border-opacity: 1 !important;
    border-color: var(--primary) !important;
    border-color: rgb(30 58 95 / var(--tw-border-opacity, 1)) !important;
}
.border-primary\/30 { border-color: rgba(30, 58, 95, 0.3) !important; }

.focus\:ring-primary:focus {
    --tw-ring-opacity: 0.5 !important;
    --tw-ring-color: var(--primary) !important;
    --tw-ring-color: rgb(30 58 95 / var(--tw-ring-opacity, 1)) !important;
}
.focus\:border-primary:focus {
    --tw-border-opacity: 1 !important;
    border-color: var(--primary) !important;
    border-color: rgb(30 58 95 / var(--tw-border-opacity, 1)) !important;
}

.hover\:text-primary-dark:hover {
    --tw-text-opacity: 1 !important;
    color: var(--primary-dark) !important;
    color: rgb(22 45 71 / var(--tw-text-opacity, 1)) !important;
}
.hover\:bg-primary-dark:hover {
    --tw-bg-opacity: 1 !important;
    background-color: var(--primary-dark) !important;
    background-color: rgb(22 45 71 / var(--tw-bg-opacity, 1)) !important;
}

.youtube-video {
    aspect-ratio: 16 / 9;
    width: 100%;
}

@media screen and (max-width:767px) {
	iframe[src*="youtube"] {
		width: 100% !important;
		aspect-ratio: 16 / 9 !important;
		height: auto !important;
	}
}

.citation tr {
    display: block;
}


table th,
table td {
  text-align: left;
}

table th {
  font-size: .85em;
  letter-spacing: .1em;
  text-transform: uppercase;
}


@media screen and (max-width: 767px) {
  table {
    border: 1px solid #eee;
    border-radius: 5px !important;
  }
  table thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  table tr {
    display: block;
  }
  table td {
    display: block;
    font-size: .85em;
    text-align: left;
  }
  table td:before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
    text-transform: uppercase;
  }
  table tr td:last-child {
    margin-bottom: 3em;
    content: "" !important;
    white-space: pre !important;
  }
}
