/*--- Fonts ---*/

@font-face {
    font-family: 'Noto Sans';
    src: url('./fonts/notosans.ttf') format('truetype');
    font-style: normal;
}

@font-face {
    font-family: 'Inter';
    src: url('./fonts/notosans.ttf') format('truetype');
    font-style: italic;
}


/* ******************** Custom Styles ******************** */
.Center {
	text-align: center;
}
.PageTitle {
	font-weight: bold;
	font-style: italics;
	font-size: 40px;
	/*white-space: nowrap; long titles need to wrap */
}
.ServiceTitle {
	font-weight: bold;
	font-style: italics;
	font-size: 24px;
	white-space: nowrap;
}
.HeadingTitle {
	font-weight: bold;
	font-style: italics;
	font-size: 24px;
	white-space: nowrap;
}
.SubHeadingTitle {
	font-weight: bold;
	font-style: italics;
	font-size: 18px;
	white-space: nowrap;
}
.Footer {
	font-weight: bold;
	font-style: italics;
	font-size: 16px;
	white-space: nowrap;
}
.indentTable {
	margin-left: 50px;
	border-collapse: collapse;
}
.TitleTable {
	width: 100%;
}

.watermark {
    background-image: url('inc/icons-png/logo.png');
	background-repeat: no-repeat;
	background-position: center;
}

.float_left {
	float: left;
	margin: 5px;
}
img {
	margin: 2px;
	vertical-align:middle;
}
* {
  box-sizing: border-box;
}

.row::after {
  content: "";
  clear: both;
  display: block;
}

[class*="col-"] {
  float: left;
  padding: 5px;
}

html {
  font-family: "Noto Sans", sans-serif;
}

.header {
  background-color: #9933cc;
  color: #FFFFFF;
  padding: 15px;
}

.menu {
  list-style-type: disc;
  padding: 0px;
  margin: 0px;
  border: 2px red;
}

.menu-x {
  padding: 8px;
  margin-bottom: 7px;
  background-color: #33b5e5;
  color: #FFFFFF;
  box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}

.menu:hover {
  background-color: #0099cc;
}

.color-mode-icons {
	width: 2em;
}

#button-mode-light {
}

#button-mode-dark {
	filter: saturate(0);
}

.calendar-navigation {
	width: 2.5em;
}

.arrow-color-theme {
	filter: hue-rotate(130deg);
}

.arrow-color-theme:hover {
	filter: hue-rotate(130deg) brightness(1.25);
}

.aside {
  background-color: #33b5e5;
  padding: 15px;
  color: #FFFFFF;
  text-align: center;
  font-size: 14px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}

.footer {
  background-color: #0099cc;
  color: #FFFFFF;
  text-align: center;
  font-size: 12px;
  padding: 15px;
}

/* For desktop: */
.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}

@media only screen and (max-width: 768px) {
	[class*="col-"] {
		width: 100%;
	}
	input[type='text'], input[type='email'], textarea {
		width: 100%;
	}
}

.image-container {
	width: 300px;
	height: 200px;
	overflow: hidden;
}

.image-container img {
	width: 100%;
	height: 100%;
	object-fit: contain; /* Ensures the image fills the box while maintaining aspect ratio */
}

/* ******************** End of Test Styles ******************** */

/* ******************** Override Standard Styles ******************** */
body, html {
	margin: 10px;
	font-size: 16px;
	background-color: #EEEEEE;
	background-position: center; /* Center the image */
	background-repeat: no-repeat; /* Do not repeat the image */
}
table {
}
hr {
	border: 0;
	border-top: 4px solid #66CCFF;
	border-bottom: 2px solid #3399CC;
}
textarea {
	padding: 2px;
	height: 80%;
}
.CompanyName {
	font-style: italic;
}
/* ******************** Color Theme Styles ******************** 
 *
 * Most of the colors are applied here, which could permit easier
 * management of a dark-theme v. light-theme.
 */
.Dim {
	color: #999999;
}
.ThemeColor {			/* There is a light blue theme to the highlighted text */
	color: #00749B;
}
.FailColor {			/* There is a light red theme to the highlighted text */
	color: #66CCFF;
}
.DeleteColor {			/* There is a light orange theme to the highlighted text */
	color: #CC6600;
}
.BlockColor {			/* There is a red theme to the highlighted text */
	color: #FF6666;
}
.TrustColor {			/* There is a red theme to the highlighted text */
	color: #009900;
}

.Footnote {
	color: #0099CC;
}
p {
	color: #000000;
	margin: 0;
}
body {
	color: #000000;
}
a {
	text-decoration: none;
	font-weight: bold;
}
/* If the link is unvisited you see this color */
a:link {
	color: #00749B;
}
/* If the link is visited you see this color*/
a:visited {
	color: #00749B;
}
/* On placing mouse over the link */

a:hover {
	color: #66CCFF;
}
/* If the click the link,  you see this color*/
a:active {
	color: #3399EE;
}
input[type=submit] {
	background-color: #66CCFF;
}
dt {
	font-weight: bold;
}
.highlightrow {
	background-color: #CCCCCC;
}

.ck-editor__editable {
    color: #666666;
}
.ck-content {
    color: #4B98BC;
}
.ck-content p {
    color: #000000;
}
.ck-content img {
	width: '50%';
}
/* Tighter CKEditor toolbar: less horizontal space, same height */
.ck.ck-toolbar .ck.ck-toolbar__items > * { margin-left: 0 !important; margin-right: 0 !important; }
.ck.ck-toolbar .ck.ck-button { padding-left: 2px !important; padding-right: 2px !important; }
.ck.ck-toolbar .ck.ck-toolbar__separator { margin-left: 2px !important; margin-right: 2px !important; }
.ck.ck-toolbar .ck-heading-dropdown .ck-dropdown__button .ck-button__label { width: 6em !important; }
figure.image {
	display: table;          /* shrink-wraps the image so a caption stays aligned with it */
	clear: both;
	margin: 0.9em auto;      /* centered */
	max-width: 100%;
}
figure.image img {
	display: block;
	max-width: 100%;         /* never wider than its container / the screen */
	height: auto;            /* keep proportions */
}
figure.image-style-side {  /* the "side image" button in your editor toolbar */
	float: right;
	margin-left: 1.5em;
	max-width: 50%;
}

input[type="checkbox"], input[type="radio"] { width: auto; }

/* Adapt to be more mobile friendly */
@media (max-width: 600px) {
	/* smaller header text on phones */
	.PageTitle { white-space: normal; font-size: clamp(18px, 5.5vw, 26px); }
	.HeadingTitle, .SubHeadingTitle { white-space: normal; font-size: 16px; }
	.HeadingTitle p { margin: 0.2em 0; }

	/* field labels marked 'N' in Config.inc.php are hidden on phones */
	td.lbl-phone-hide { display: none !important; }

	/* stack label/value cells instead of side-by-side (header table excluded) */
	table:not(.ThemeColor), table:not(.ThemeColor) tbody,
	table:not(.ThemeColor) tr, table:not(.ThemeColor) td {
		display: block; width: auto !important;
	}

	.page-content img { max-width: 100%; height: auto; }
	figure.image { display: block; }
	.image-container { width: 100%; max-width: 300px; }
	/* keep pictures scaled inside their box (the general img rule above sets height:auto,
	   which made tall pictures overflow the box and get cut off) */
	.page-content .image-container img, .image-container img { width: 100%; height: 100%; max-width: 100%; object-fit: contain; }
	td { overflow-wrap: anywhere; }

	#logo { width: 60px; height: 60px; max-width: none; }  /* keeps menu logo from shrinking */
	
	/* some tables can reflow on narrow screens, some should not */
	table.grid { display: table !important; width: auto !important; border-spacing: 1px; }
	table.grid tbody { display: table-row-group !important; }
	table.grid tr { display: table-row !important; }
	table.grid td { display: table-cell !important; width: auto !important;
                overflow-wrap: normal; font-size: 12px; padding: 1px; }
}

/* ******************** Admin Center colors (inc/AdminCenter.css) ******************** */
:root {
	--adm-surface: #FFFFFF;
	--adm-field: #FFFFFF;
	--adm-empty: #F4F4F6;
	--adm-border: #CFCFD6;
	--adm-text: #111111;
	--adm-muted: #545454;
	--adm-accent: #00749B;
	--adm-on-accent: #FFFFFF;
	--adm-warm: #A84F00;
	--adm-scheme: light;
}
