@import url("fontawesome-all.min.css");
@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,300italic,400italic");

/*
	Alpha by Pixelarity
	pixelarity.com | hello@pixelarity.com
	License: pixelarity.com/license
*/

/* Reset */

/* Based on meyerweb.com/eric/tools/css/reset (v2.0 | 20110126 | License: public domain) */

	html, body, div, span, applet, object,
	iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
	pre, a, abbr, acronym, address, big, cite,
	code, del, dfn, em, img, ins, kbd, q, s, samp,
	small, strike, strong, sub, sup, tt, var, b,
	u, i, center, dl, dt, dd, ol, ul, li, fieldset,
	form, label, legend, table, caption, tbody,
	tfoot, thead, tr, th, td, article, aside,
	canvas, details, embed, figure, figcaption,
	footer, header, hgroup, menu, nav, output, ruby,
	section, summary, time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		font: inherit;
		vertical-align: baseline;
	}

	article, aside, details, figcaption, figure,
	footer, header, hgroup, menu, nav, section {
		display: block;
	}

	body {
		line-height: 1;
	}

	ol, ul {
		list-style: none;
	}

	blockquote, q {
		quotes: none;
	}

		blockquote:before, blockquote:after, q:before, q:after {
			content: '';
			content: none;
		}

	table {
		border-collapse: collapse;
		border-spacing: 0;
	}

	body {
		-webkit-text-size-adjust: none;
	}

	mark {
		background-color: transparent;
		color: inherit;
	}

	input::-moz-focus-inner {
		border: 0;
		padding: 0;
	}

	input, select, textarea {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
	}

/* Basic */

	@-ms-viewport {
		width: device-width;
	}

	body {
		-ms-overflow-style: scrollbar;
	}

	@media screen and (max-width: 480px) {

		html, body {
			min-width: 320px;
		}

	}

	html {
		box-sizing: border-box;
	}

	*, *:before, *:after {
		box-sizing: inherit;
	}

	body {
		background: #f5f5f5;
	}

	body, input, select, textarea {
		color: #777;
		font-family: "Source Sans Pro", sans-serif;
		font-size: 16pt;
		font-weight: 300;
		line-height: 1.65em;
		letter-spacing: -0.015em;
	}

	a {
		-moz-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		-webkit-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		-ms-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
		border-bottom: dotted 1px;
		color: #82a8e0;
		text-decoration: none;
	}

		a:hover {
			border-bottom-color: transparent;
		}

	strong, b {
		color: #646464;
		font-weight: 400;
	}

	em, i {
		font-style: italic;
	}

	p {
		margin: 0 0 2em 0;
	}

	h1, h2, h3, h4, h5, h6 {
		color: #646464;
		font-weight: 300;
		line-height: 1em;
		margin: 0 0 0.5em 0;
	}

		h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
			color: inherit;
			text-decoration: none;
		}

	h2 {
		font-size: 2.25em;
		line-height: 1.5em;
		letter-spacing: -0.035em;
	}

	h3 {
		font-size: 1.75em;
		line-height: 1.5em;
		letter-spacing: -0.025em;
	}

	h4 {
		font-size: 1.1em;
		line-height: 1.5em;
		letter-spacing: 0;
	}

	h5 {
		font-size: 0.9em;
		line-height: 1.5em;
		letter-spacing: 0;
	}

	h6 {
		font-size: 0.7em;
		line-height: 1.5em;
		letter-spacing: 0;
	}

	sub {
		font-size: 0.8em;
		position: relative;
		top: 0.5em;
	}

	sup {
		font-size: 0.8em;
		position: relative;
		top: -0.5em;
	}

	hr {
		border: 0;
		border-bottom: solid 2px #e5e5e5;
		margin: 2em 0;
	}

		hr.major {
			margin: 3em 0;
		}

	blockquote {
		border-left: solid 4px #e5e5e5;
		font-style: italic;
		margin: 0 0 2em 0;
		padding: 0.5em 0 0.5em 2em;
	}

	pre {
		-webkit-overflow-scrolling: touch;
		background: #f8f8f8;
		border-radius: 6px;
		border: solid 1px #e5e5e5;
		font-family: monospace;
		font-size: 0.9em;
		line-height: 1.75em;
		margin: 0 0 2em 0;
		overflow-x: auto;
		padding: 1em 1.5em;
	}

	code {
		background: #f8f8f8;
		border-radius: 6px;
		border: solid 1px #e5e5e5;
		font-family: monospace;
		font-size: 0.9em;
		margin: 0 0.25em;
		padding: 0.25em 0.65em;
	}

	.align-left {
		text-align: left;
	}

	.align-center {
		text-align: center;
	}

	.align-right {
		text-align: right;
	}

/* Row */

	.row {
		display: flex;
		flex-wrap: wrap;
		box-sizing: border-box;
		align-items: stretch;
	}

		.row > * {
			box-sizing: border-box;
		}

		.row.gtr-uniform > * > :last-child {
			margin-bottom: 0;
		}

		.row.aln-left {
			justify-content: flex-start;
		}

		.row.aln-center {
			justify-content: center;
		}

		.row.aln-right {
			justify-content: flex-end;
		}

		.row.aln-top {
			align-items: flex-start;
		}

		.row.aln-middle {
			align-items: center;
		}

		.row.aln-bottom {
			align-items: flex-end;
		}

		.row > .imp {
			order: -1;
		}

		.row > .col-1 {
			width: 8.33333%;
		}

		.row > .off-1 {
			margin-left: 8.33333%;
		}

		.row > .col-2 {
			width: 16.66667%;
		}

		.row > .off-2 {
			margin-left: 16.66667%;
		}

		.row > .col-3 {
			width: 25%;
		}

		.row > .off-3 {
			margin-left: 25%;
		}

		.row > .col-4 {
			width: 33.33333%;
		}

		.row > .off-4 {
			margin-left: 33.33333%;
		}

		.row > .col-5 {
			width: 41.66667%;
		}

		.row > .off-5 {
			margin-left: 41.66667%;
		}

		.row > .col-6 {
			width: 50%;
		}

		.row > .off-6 {
			margin-left: 50%;
		}

		.row > .col-7 {
			width: 58.33333%;
		}

		.row > .off-7 {
			margin-left: 58.33333%;
		}

		.row > .col-8 {
			width: 66.66667%;
		}

		.row > .off-8 {
			margin-left: 66.66667%;
		}

		.row > .col-9 {
			width: 75%;
		}

		.row > .off-9 {
			margin-left: 75%;
		}

		.row > .col-10 {
			width: 83.33333%;
		}

		.row > .off-10 {
			margin-left: 83.33333%;
		}

		.row > .col-11 {
			width: 91.66667%;
		}

		.row > .off-11 {
			margin-left: 91.66667%;
		}

		.row > .col-12 {
			width: 100%;
		}

		.row > .off-12 {
			margin-left: 100%;
		}

		.row.gtr-0 {
			margin-top: 0;
			margin-left: 0em;
		}

			.row.gtr-0 > * {
				padding: 0 0 0 0em;
			}

			.row.gtr-0.gtr-uniform {
				margin-top: 0em;
			}

				.row.gtr-0.gtr-uniform > * {
					padding-top: 0em;
				}

		.row.gtr-25 {
			margin-top: 0;
			margin-left: -0.5em;
		}

			.row.gtr-25 > * {
				padding: 0 0 0 0.5em;
			}

			.row.gtr-25.gtr-uniform {
				margin-top: -0.5em;
			}

				.row.gtr-25.gtr-uniform > * {
					padding-top: 0.5em;
				}

		.row.gtr-50 {
			margin-top: 0;
			margin-left: -1em;
		}

			.row.gtr-50 > * {
				padding: 0 0 0 1em;
			}

			.row.gtr-50.gtr-uniform {
				margin-top: -1em;
			}

				.row.gtr-50.gtr-uniform > * {
					padding-top: 1em;
				}

		.row {
			margin-top: 0;
			margin-left: -2em;
		}

			.row > * {
				padding: 0 0 0 2em;
			}

			.row.gtr-uniform {
				margin-top: -2em;
			}

				.row.gtr-uniform > * {
					padding-top: 2em;
				}

		.row.gtr-150 {
			margin-top: 0;
			margin-left: -3em;
		}

			.row.gtr-150 > * {
				padding: 0 0 0 3em;
			}

			.row.gtr-150.gtr-uniform {
				margin-top: -3em;
			}

				.row.gtr-150.gtr-uniform > * {
					padding-top: 3em;
				}

		.row.gtr-200 {
			margin-top: 0;
			margin-left: -4em;
		}

			.row.gtr-200 > * {
				padding: 0 0 0 4em;
			}

			.row.gtr-200.gtr-uniform {
				margin-top: -4em;
			}

				.row.gtr-200.gtr-uniform > * {
					padding-top: 4em;
				}

		@media screen and (max-width: 1680px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-wide {
					order: -1;
				}

				.row > .col-1-wide {
					width: 8.33333%;
				}

				.row > .off-1-wide {
					margin-left: 8.33333%;
				}

				.row > .col-2-wide {
					width: 16.66667%;
				}

				.row > .off-2-wide {
					margin-left: 16.66667%;
				}

				.row > .col-3-wide {
					width: 25%;
				}

				.row > .off-3-wide {
					margin-left: 25%;
				}

				.row > .col-4-wide {
					width: 33.33333%;
				}

				.row > .off-4-wide {
					margin-left: 33.33333%;
				}

				.row > .col-5-wide {
					width: 41.66667%;
				}

				.row > .off-5-wide {
					margin-left: 41.66667%;
				}

				.row > .col-6-wide {
					width: 50%;
				}

				.row > .off-6-wide {
					margin-left: 50%;
				}

				.row > .col-7-wide {
					width: 58.33333%;
				}

				.row > .off-7-wide {
					margin-left: 58.33333%;
				}

				.row > .col-8-wide {
					width: 66.66667%;
				}

				.row > .off-8-wide {
					margin-left: 66.66667%;
				}

				.row > .col-9-wide {
					width: 75%;
				}

				.row > .off-9-wide {
					margin-left: 75%;
				}

				.row > .col-10-wide {
					width: 83.33333%;
				}

				.row > .off-10-wide {
					margin-left: 83.33333%;
				}

				.row > .col-11-wide {
					width: 91.66667%;
				}

				.row > .off-11-wide {
					margin-left: 91.66667%;
				}

				.row > .col-12-wide {
					width: 100%;
				}

				.row > .off-12-wide {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1em;
						}

				.row {
					margin-top: 0;
					margin-left: -2em;
				}

					.row > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-uniform > * {
							padding-top: 2em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -4em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 4em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -4em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 4em;
						}

		}

		@media screen and (max-width: 1280px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-normal {
					order: -1;
				}

				.row > .col-1-normal {
					width: 8.33333%;
				}

				.row > .off-1-normal {
					margin-left: 8.33333%;
				}

				.row > .col-2-normal {
					width: 16.66667%;
				}

				.row > .off-2-normal {
					margin-left: 16.66667%;
				}

				.row > .col-3-normal {
					width: 25%;
				}

				.row > .off-3-normal {
					margin-left: 25%;
				}

				.row > .col-4-normal {
					width: 33.33333%;
				}

				.row > .off-4-normal {
					margin-left: 33.33333%;
				}

				.row > .col-5-normal {
					width: 41.66667%;
				}

				.row > .off-5-normal {
					margin-left: 41.66667%;
				}

				.row > .col-6-normal {
					width: 50%;
				}

				.row > .off-6-normal {
					margin-left: 50%;
				}

				.row > .col-7-normal {
					width: 58.33333%;
				}

				.row > .off-7-normal {
					margin-left: 58.33333%;
				}

				.row > .col-8-normal {
					width: 66.66667%;
				}

				.row > .off-8-normal {
					margin-left: 66.66667%;
				}

				.row > .col-9-normal {
					width: 75%;
				}

				.row > .off-9-normal {
					margin-left: 75%;
				}

				.row > .col-10-normal {
					width: 83.33333%;
				}

				.row > .off-10-normal {
					margin-left: 83.33333%;
				}

				.row > .col-11-normal {
					width: 91.66667%;
				}

				.row > .off-11-normal {
					margin-left: 91.66667%;
				}

				.row > .col-12-normal {
					width: 100%;
				}

				.row > .off-12-normal {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1em;
						}

				.row {
					margin-top: 0;
					margin-left: -2em;
				}

					.row > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-uniform > * {
							padding-top: 2em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -4em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 4em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -4em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 4em;
						}

		}

		@media screen and (max-width: 980px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-narrow {
					order: -1;
				}

				.row > .col-1-narrow {
					width: 8.33333%;
				}

				.row > .off-1-narrow {
					margin-left: 8.33333%;
				}

				.row > .col-2-narrow {
					width: 16.66667%;
				}

				.row > .off-2-narrow {
					margin-left: 16.66667%;
				}

				.row > .col-3-narrow {
					width: 25%;
				}

				.row > .off-3-narrow {
					margin-left: 25%;
				}

				.row > .col-4-narrow {
					width: 33.33333%;
				}

				.row > .off-4-narrow {
					margin-left: 33.33333%;
				}

				.row > .col-5-narrow {
					width: 41.66667%;
				}

				.row > .off-5-narrow {
					margin-left: 41.66667%;
				}

				.row > .col-6-narrow {
					width: 50%;
				}

				.row > .off-6-narrow {
					margin-left: 50%;
				}

				.row > .col-7-narrow {
					width: 58.33333%;
				}

				.row > .off-7-narrow {
					margin-left: 58.33333%;
				}

				.row > .col-8-narrow {
					width: 66.66667%;
				}

				.row > .off-8-narrow {
					margin-left: 66.66667%;
				}

				.row > .col-9-narrow {
					width: 75%;
				}

				.row > .off-9-narrow {
					margin-left: 75%;
				}

				.row > .col-10-narrow {
					width: 83.33333%;
				}

				.row > .off-10-narrow {
					margin-left: 83.33333%;
				}

				.row > .col-11-narrow {
					width: 91.66667%;
				}

				.row > .off-11-narrow {
					margin-left: 91.66667%;
				}

				.row > .col-12-narrow {
					width: 100%;
				}

				.row > .off-12-narrow {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1em;
						}

				.row {
					margin-top: 0;
					margin-left: -2em;
				}

					.row > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-uniform > * {
							padding-top: 2em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -4em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 4em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -4em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 4em;
						}

		}

		@media screen and (max-width: 840px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-narrower {
					order: -1;
				}

				.row > .col-1-narrower {
					width: 8.33333%;
				}

				.row > .off-1-narrower {
					margin-left: 8.33333%;
				}

				.row > .col-2-narrower {
					width: 16.66667%;
				}

				.row > .off-2-narrower {
					margin-left: 16.66667%;
				}

				.row > .col-3-narrower {
					width: 25%;
				}

				.row > .off-3-narrower {
					margin-left: 25%;
				}

				.row > .col-4-narrower {
					width: 33.33333%;
				}

				.row > .off-4-narrower {
					margin-left: 33.33333%;
				}

				.row > .col-5-narrower {
					width: 41.66667%;
				}

				.row > .off-5-narrower {
					margin-left: 41.66667%;
				}

				.row > .col-6-narrower {
					width: 50%;
				}

				.row > .off-6-narrower {
					margin-left: 50%;
				}

				.row > .col-7-narrower {
					width: 58.33333%;
				}

				.row > .off-7-narrower {
					margin-left: 58.33333%;
				}

				.row > .col-8-narrower {
					width: 66.66667%;
				}

				.row > .off-8-narrower {
					margin-left: 66.66667%;
				}

				.row > .col-9-narrower {
					width: 75%;
				}

				.row > .off-9-narrower {
					margin-left: 75%;
				}

				.row > .col-10-narrower {
					width: 83.33333%;
				}

				.row > .off-10-narrower {
					margin-left: 83.33333%;
				}

				.row > .col-11-narrower {
					width: 91.66667%;
				}

				.row > .off-11-narrower {
					margin-left: 91.66667%;
				}

				.row > .col-12-narrower {
					width: 100%;
				}

				.row > .off-12-narrower {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1em;
						}

				.row {
					margin-top: 0;
					margin-left: -2em;
				}

					.row > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-uniform > * {
							padding-top: 2em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -4em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 4em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -4em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 4em;
						}

		}

		@media screen and (max-width: 736px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-mobile {
					order: -1;
				}

				.row > .col-1-mobile {
					width: 8.33333%;
				}

				.row > .off-1-mobile {
					margin-left: 8.33333%;
				}

				.row > .col-2-mobile {
					width: 16.66667%;
				}

				.row > .off-2-mobile {
					margin-left: 16.66667%;
				}

				.row > .col-3-mobile {
					width: 25%;
				}

				.row > .off-3-mobile {
					margin-left: 25%;
				}

				.row > .col-4-mobile {
					width: 33.33333%;
				}

				.row > .off-4-mobile {
					margin-left: 33.33333%;
				}

				.row > .col-5-mobile {
					width: 41.66667%;
				}

				.row > .off-5-mobile {
					margin-left: 41.66667%;
				}

				.row > .col-6-mobile {
					width: 50%;
				}

				.row > .off-6-mobile {
					margin-left: 50%;
				}

				.row > .col-7-mobile {
					width: 58.33333%;
				}

				.row > .off-7-mobile {
					margin-left: 58.33333%;
				}

				.row > .col-8-mobile {
					width: 66.66667%;
				}

				.row > .off-8-mobile {
					margin-left: 66.66667%;
				}

				.row > .col-9-mobile {
					width: 75%;
				}

				.row > .off-9-mobile {
					margin-left: 75%;
				}

				.row > .col-10-mobile {
					width: 83.33333%;
				}

				.row > .off-10-mobile {
					margin-left: 83.33333%;
				}

				.row > .col-11-mobile {
					width: 91.66667%;
				}

				.row > .off-11-mobile {
					margin-left: 91.66667%;
				}

				.row > .col-12-mobile {
					width: 100%;
				}

				.row > .off-12-mobile {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1em;
						}

				.row {
					margin-top: 0;
					margin-left: -2em;
				}

					.row > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-uniform > * {
							padding-top: 2em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -4em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 4em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -4em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 4em;
						}

		}

		@media screen and (max-width: 480px) {

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-mobilep {
					order: -1;
				}

				.row > .col-1-mobilep {
					width: 8.33333%;
				}

				.row > .off-1-mobilep {
					margin-left: 8.33333%;
				}

				.row > .col-2-mobilep {
					width: 16.66667%;
				}

				.row > .off-2-mobilep {
					margin-left: 16.66667%;
				}

				.row > .col-3-mobilep {
					width: 25%;
				}

				.row > .off-3-mobilep {
					margin-left: 25%;
				}

				.row > .col-4-mobilep {
					width: 33.33333%;
				}

				.row > .off-4-mobilep {
					margin-left: 33.33333%;
				}

				.row > .col-5-mobilep {
					width: 41.66667%;
				}

				.row > .off-5-mobilep {
					margin-left: 41.66667%;
				}

				.row > .col-6-mobilep {
					width: 50%;
				}

				.row > .off-6-mobilep {
					margin-left: 50%;
				}

				.row > .col-7-mobilep {
					width: 58.33333%;
				}

				.row > .off-7-mobilep {
					margin-left: 58.33333%;
				}

				.row > .col-8-mobilep {
					width: 66.66667%;
				}

				.row > .off-8-mobilep {
					margin-left: 66.66667%;
				}

				.row > .col-9-mobilep {
					width: 75%;
				}

				.row > .off-9-mobilep {
					margin-left: 75%;
				}

				.row > .col-10-mobilep {
					width: 83.33333%;
				}

				.row > .off-10-mobilep {
					margin-left: 83.33333%;
				}

				.row > .col-11-mobilep {
					width: 91.66667%;
				}

				.row > .off-11-mobilep {
					margin-left: 91.66667%;
				}

				.row > .col-12-mobilep {
					width: 100%;
				}

				.row > .off-12-mobilep {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0;
					margin-left: 0em;
				}

					.row.gtr-0 > * {
						padding: 0 0 0 0em;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0em;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0em;
						}

				.row.gtr-25 {
					margin-top: 0;
					margin-left: -0.5em;
				}

					.row.gtr-25 > * {
						padding: 0 0 0 0.5em;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -0.5em;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 0.5em;
						}

				.row.gtr-50 {
					margin-top: 0;
					margin-left: -1em;
				}

					.row.gtr-50 > * {
						padding: 0 0 0 1em;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -1em;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 1em;
						}

				.row {
					margin-top: 0;
					margin-left: -2em;
				}

					.row > * {
						padding: 0 0 0 2em;
					}

					.row.gtr-uniform {
						margin-top: -2em;
					}

						.row.gtr-uniform > * {
							padding-top: 2em;
						}

				.row.gtr-150 {
					margin-top: 0;
					margin-left: -3em;
				}

					.row.gtr-150 > * {
						padding: 0 0 0 3em;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -3em;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 3em;
						}

				.row.gtr-200 {
					margin-top: 0;
					margin-left: -4em;
				}

					.row.gtr-200 > * {
						padding: 0 0 0 4em;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -4em;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 4em;
						}

		}

/* Container */

	.container {
		margin: 0 auto;
		max-width: calc(100% - 5em);
		width: 60em;
	}

		.container.xsmall {
			width: 15em;
		}

		.container.small {
			width: 30em;
		}

		.container.medium {
			width: 45em;
		}

		.container.large {
			width: 75em;
		}

		.container.xlarge {
			width: 90em;
		}

		.container.max {
			width: 100%;
		}

		@media screen and (max-width: 840px) {

			.container {
				width: 100% !important;
			}

		}

		@media screen and (max-width: 736px) {

			.container {
				max-width: 100%;
			}

		}

/* Section/Article */

	section.special, article.special {
		text-align: center;
	}

	header p {
		color: #999;
		position: relative;
		margin: 0 0 1.5em 0;
		font-style: italic;
	}

	header h2 + p {
		font-size: 1.25em;
		margin-top: -1em;
		line-height: 1.5em;
	}

	header h3 + p {
		font-size: 1.1em;
		margin-top: -0.85em;
		line-height: 1.5em;
	}

	header h4 + p,
	header h5 + p,
	header h6 + p {
		font-size: 0.8em;
		margin-top: -0.5em;
		line-height: 1.5em;
	}

	header.major {
		padding: 1em 0;
		text-align: center;
	}

		header.major h2 {
			margin: 0;
		}

		header.major p {
			display: inline-block;
			border-top: solid 2px #e5e5e5;
			color: #777;
			margin: 1.5em 0 0 0;
			padding: 1.5em 0 0 0;
			font-style: normal;
		}

/* Form */

	form {
		margin: 0 0 2em 0;
	}

	label {
		color: #646464;
		display: block;
		font-size: 0.9em;
		font-weight: 300;
		margin: 0 0 1em 0;
	}

	input[type="text"],
	input[type="date"],
	input[type="time"],
	input[type="password"],
	input[type="email"],
	select,
	textarea {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		background-color: #f8f8f8;
		border-radius: 6px;
		border: solid 1px #e5e5e5;
		color: inherit;
		display: block;
		outline: 0;
		padding: 0 1em;
		text-decoration: none;
		width: 100%;
	}

		input[type="text"]:invalid,
		input[type="password"]:invalid,
		input[type="email"]:invalid,
		select:invalid,
		textarea:invalid {
			box-shadow: none;
		}

		input[type="text"]:focus,
		input[type="password"]:focus,
		input[type="email"]:focus,
		select:focus,
		textarea:focus {
			border-color: #82a8e0;
			box-shadow: 0 0 0 2px #82a8e0;
		}

	select {
		background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'%3E%3Cpath d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='%23e5e5e5' /%3E%3C/svg%3E");
		background-size: 1.25em;
		background-repeat: no-repeat;
		background-position: calc(100% - 1em) center;
		height: 3em;
		padding-right: 3em;
		text-overflow: ellipsis;
	}

		select option {
			color: #777;
			background-color: #f5f5f5;
		}

		select:focus::-ms-value {
			background-color: transparent;
		}

		select::-ms-expand {
			display: none;
		}

	input[type="text"],
	input[type="password"],
	input[type="email"],
	select {
		height: 3em;
	}

	textarea {
		padding: 0.75em 1em;
	}

	input[type="checkbox"],
	input[type="radio"] {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		display: block;
		float: left;
		margin-right: -2em;
		opacity: 0;
		width: 1em;
		z-index: -1;
	}

		input[type="checkbox"] + label,
		input[type="radio"] + label {
			text-decoration: none;
			color: #777;
			cursor: pointer;
			display: inline-block;
			font-size: 1em;
			font-weight: 300;
			padding-left: 2.55em;
			padding-right: 0.75em;
			position: relative;
		}

			input[type="checkbox"] + label:before,
			input[type="radio"] + label:before {
				-moz-osx-font-smoothing: grayscale;
				-webkit-font-smoothing: antialiased;
				display: inline-block;
				font-style: normal;
				font-variant: normal;
				text-rendering: auto;
				line-height: 1;
				text-transform: none !important;
				font-family: 'Font Awesome 5 Free';
				font-weight: 900;
			}

			input[type="checkbox"] + label:before,
			input[type="radio"] + label:before {
				background: #f8f8f8;
				border-radius: 6px;
				border: solid 1px #e5e5e5;
				content: '';
				display: inline-block;
				font-size: 0.8em;
				height: 2.25em;
				left: 0;
				line-height: 2.25em;
				position: absolute;
				text-align: center;
				top: 0;
				width: 2.25em;
			}

		input[type="checkbox"]:checked + label:before,
		input[type="radio"]:checked + label:before {
			background: #666;
			border-color: #666;
			color: #ffffff;
			content: '\f00c';
		}

		input[type="checkbox"]:focus + label:before,
		input[type="radio"]:focus + label:before {
			border-color: #82a8e0;
			box-shadow: 0 0 0 1px #82a8e0;
		}

	input[type="checkbox"] + label:before {
		border-radius: 6px;
	}

	input[type="radio"] + label:before {
		border-radius: 100%;
	}

	::-webkit-input-placeholder {
		color: #999 !important;
		opacity: 1.0;
	}

	:-moz-placeholder {
		color: #999 !important;
		opacity: 1.0;
	}

	::-moz-placeholder {
		color: #999 !important;
		opacity: 1.0;
	}

	:-ms-input-placeholder {
		color: #999 !important;
		opacity: 1.0;
	}

/* Box */

	.box {
		background: #fff;
		border-radius: 6px;
		box-shadow: 0 2px 0 0 #e5e5e5;
		margin: 0 0 2em 0;
		padding: 3em;
	}

		.box > :last-child {
			margin-bottom: 0;
		}

		.box.alt {
			background: none !important;
			border-radius: 0 !important;
			box-shadow: none !important;
			margin: 0 0 2em 0;
			padding: 0 !important;
		}

		.box.features .features-row {
			border-top: solid 2px #e5e5e5;
			position: relative;
		}

			.box.features .features-row:after {
				clear: both;
				content: '';
				display: block;
			}

			.box.features .features-row section {
				float: left;
				padding: 3em;
				width: 50%;
			}

				.box.features .features-row section :last-child {
					margin-bottom: 0;
				}

				.box.features .features-row section:nth-child(2n) {
					padding-right: 0;
				}

					.box.features .features-row section:nth-child(2n):before {
						background: #e5e5e5;
						content: '';
						display: block;
						height: 100%;
						margin-left: -3em;
						position: absolute;
						top: 0;
						width: 2px;
					}

				.box.features .features-row section:nth-child(2n-1) {
					padding-left: 0;
				}

			.box.features .features-row:first-child {
				border-top: 0;
			}

				.box.features .features-row:first-child section {
					padding-top: 0;
				}

			.box.features .features-row:last-child {
				padding-bottom: 0;
			}

				.box.features .features-row:last-child section {
					padding-bottom: 0;
				}

		.box.special {
			text-align: center;
		}

		.box .image.featured {
			border-radius: 0;
			display: block;
			margin: 3em 0 3em -3em;
			position: relative;
			width: calc(100% + 6em);
		}

			.box .image.featured img {
				border-radius: 0;
				display: block;
				width: 100%;
			}

			.box .image.featured:first-child {
				border-radius: 6px 6px 0 0;
				margin-bottom: 3em;
				margin-top: -3em;
			}

				.box .image.featured:first-child img {
					border-radius: 6px 6px 0 0;
				}

			.box .image.featured:last-child {
				border-radius: 0 0 6px 6px;
				margin-bottom: -3em;
				margin-top: 3em;
			}

				.box .image.featured:last-child img {
					border-radius: 0 0 6px 6px;
				}

/* Icon */

	.icon {
		text-decoration: none;
		border-bottom: none;
		position: relative;
	}

		.icon:before {
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			display: inline-block;
			font-style: normal;
			font-variant: normal;
			text-rendering: auto;
			line-height: 1;
			text-transform: none !important;
			font-family: 'Font Awesome 5 Free';
			font-weight: 400;
		}

		.icon > .label {
			display: none;
		}

		.icon:before {
			line-height: inherit;
		}

		.icon.solid:before {
			font-weight: 900;
		}

		.icon.brands:before {
			font-family: 'Font Awesome 5 Brands';
		}

		.icon.major {
			background: #666;
			border-radius: 100%;
			color: #ffffff;
			cursor: default;
			display: inline-block;
			height: 5.5em;
			line-height: 5.5em;
			margin: 0 0 2em 0;
			width: 5.5em;
		}

			.icon.major:before {
				font-size: 2.5em;
			}

			.icon.major.accent1 {
				background: #666;
				color: #ffffff;
			}

			.icon.major.accent2 {
				background: #82a8e0;
				color: #ffffff;
			}

			.icon.major.accent3 {
				background: #91d4b0;
				color: #ffffff;
			}

			.icon.major.accent4 {
				background: #e88792;
				color: #ffffff;
			}

			.icon.major.accent5 {
				background: #e695b9;
				color: #ffffff;
			}

/* Image */

	.image {
		border-radius: 6px;
		border: 0;
		display: inline-block;
		position: relative;
	}

		.image img {
			border-radius: 6px;
			display: block;
		}

		.image.left {
			float: left;
			padding: 0 1.5em 1em 0;
			top: 0.25em;
		}

		.image.right {
			float: right;
			padding: 0 0 1em 1.5em;
			top: 0.25em;
		}

		.image.fit {
			display: block;
			margin: 0 0 2em 0;
			width: 100%;
		}

			.image.fit img {
				display: block;
				width: 100%;
			}

/* List */

	ol {
		list-style: decimal;
		margin: 0 0 2em 0;
		padding-left: 1.25em;
	}

		ol li {
			padding-left: 0.25em;
		}

	ul {
		list-style: disc;
		margin: 0 0 2em 0;
		padding-left: 1em;
	}

		ul li {
			padding-left: 0.5em;
		}

		ul.alt {
			list-style: none;
			padding-left: 0;
		}

			ul.alt li {
				border-top: solid 1px #e5e5e5;
				padding: 0.5em 0;
			}

				ul.alt li:first-child {
					border-top: 0;
					padding-top: 0;
				}

		ul.icons {
			cursor: default;
			list-style: none;
			padding-left: 0;
		}

			ul.icons li {
				display: inline-block;
				padding: 0 1.25em 0 0;
			}

				ul.icons li:last-child {
					padding-right: 0;
				}

				ul.icons li .icon {
					color: inherit;
				}

					ul.icons li .icon:before {
						font-size: 1.75em;
					}

	dl {
		margin: 0 0 2em 0;
	}

/* Actions */

	ul.actions {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		cursor: default;
		list-style: none;
		margin-left: -1em;
		padding-left: 0;
	}

		ul.actions li {
			padding: 0 0 0 1em;
			vertical-align: middle;
		}

		ul.actions.special {
			-moz-justify-content: center;
			-webkit-justify-content: center;
			-ms-justify-content: center;
			justify-content: center;
			width: 100%;
			margin-left: 0;
		}

			ul.actions.special li:first-child {
				padding-left: 0;
			}

		ul.actions.stacked {
			-moz-flex-direction: column;
			-webkit-flex-direction: column;
			-ms-flex-direction: column;
			flex-direction: column;
			margin-left: 0;
		}

			ul.actions.stacked li {
				padding: 1.3em 0 0 0;
			}

				ul.actions.stacked li:first-child {
					padding-top: 0;
				}

		ul.actions.fit {
			width: calc(100% + 1em);
		}

			ul.actions.fit li {
				-moz-flex-grow: 1;
				-webkit-flex-grow: 1;
				-ms-flex-grow: 1;
				flex-grow: 1;
				-moz-flex-shrink: 1;
				-webkit-flex-shrink: 1;
				-ms-flex-shrink: 1;
				flex-shrink: 1;
				width: 100%;
			}

				ul.actions.fit li > * {
					width: 100%;
				}

			ul.actions.fit.stacked {
				width: 100%;
			}

		@media screen and (max-width: 480px) {

			ul.actions:not(.fixed) {
				-moz-flex-direction: column;
				-webkit-flex-direction: column;
				-ms-flex-direction: column;
				flex-direction: column;
				margin-left: 0;
				width: 100% !important;
			}

				ul.actions:not(.fixed) li {
					-moz-flex-grow: 1;
					-webkit-flex-grow: 1;
					-ms-flex-grow: 1;
					flex-grow: 1;
					-moz-flex-shrink: 1;
					-webkit-flex-shrink: 1;
					-ms-flex-shrink: 1;
					flex-shrink: 1;
					padding: 1em 0 0 0;
					text-align: center;
					width: 100%;
				}

					ul.actions:not(.fixed) li > * {
						width: 100%;
					}

					ul.actions:not(.fixed) li:first-child {
						padding-top: 0;
					}

					ul.actions:not(.fixed) li input[type="submit"],
					ul.actions:not(.fixed) li input[type="reset"],
					ul.actions:not(.fixed) li input[type="button"],
					ul.actions:not(.fixed) li button,
					ul.actions:not(.fixed) li .button {
						width: 100%;
					}

						ul.actions:not(.fixed) li input[type="submit"].icon:before,
						ul.actions:not(.fixed) li input[type="reset"].icon:before,
						ul.actions:not(.fixed) li input[type="button"].icon:before,
						ul.actions:not(.fixed) li button.icon:before,
						ul.actions:not(.fixed) li .button.icon:before {
							margin-left: -0.5em;
						}

		}

/* Table */

	.table-wrapper {
		-webkit-overflow-scrolling: touch;
		overflow-x: auto;
	}

	table {
		margin: 0 0 2em 0;
		width: 100%;
	}

		table tbody tr {
			border: solid 1px #e5e5e5;
			border-left: 0;
			border-right: 0;
		}

			table tbody tr:nth-child(2n + 1) {
				background-color: #f8f8f8;
			}

		table td {
			padding: 0.75em 0.75em;
		}

		table th {
			color: #646464;
			font-size: 0.9em;
			font-weight: 300;
			padding: 0 0.75em 0.75em 0.75em;
			text-align: left;
		}

		table thead {
			border-bottom: solid 2px #e5e5e5;
		}

		table tfoot {
			border-top: solid 2px #e5e5e5;
		}

		table.alt {
			border-collapse: separate;
		}

			table.alt tbody tr td {
				border: solid 1px #e5e5e5;
				border-left-width: 0;
				border-top-width: 0;
			}

				table.alt tbody tr td:first-child {
					border-left-width: 1px;
				}

			table.alt tbody tr:first-child td {
				border-top-width: 1px;
			}

			table.alt thead {
				border-bottom: 0;
			}

			table.alt tfoot {
				border-top: 0;
			}

/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	.button {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		-webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		-ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		background-color: #666;
		border-radius: 6px;
		border: 0;
		color: #ffffff;
		cursor: pointer;
		display: inline-block;
		font-weight: 400;
		height: 3em;
		line-height: 3em;
		padding: 0 2em;
		text-align: center;
		text-decoration: none;
		white-space: nowrap;
	}

		input[type="submit"]:hover,
		input[type="reset"]:hover,
		input[type="button"]:hover,
		.button:hover {
			background-color: #737373;
		}

		input[type="submit"]:active,
		input[type="reset"]:active,
		input[type="button"]:active,
		.button:active {
			background-color: #595959;
		}

		input[type="submit"].icon,
		input[type="reset"].icon,
		input[type="button"].icon,
		.button.icon {
			padding-left: 1.35em;
		}

			input[type="submit"].icon:before,
			input[type="reset"].icon:before,
			input[type="button"].icon:before,
			.button.icon:before {
				margin-right: 0.5em;
			}

		input[type="submit"].fit,
		input[type="reset"].fit,
		input[type="button"].fit,
		.button.fit {
			width: 100%;
		}

		input[type="submit"].small,
		input[type="reset"].small,
		input[type="button"].small,
		.button.small {
			font-size: 0.8em;
			height: 2.7em;
			line-height: 2.7em;
		}

		input[type="submit"].large,
		input[type="reset"].large,
		input[type="button"].large,
		.button.large {
			font-size: 1.25em;
			height: 2.7em;
			line-height: 2.7em;
		}

		input[type="submit"].alt,
		input[type="reset"].alt,
		input[type="button"].alt,
		.button.alt {
			background-color: transparent;
			box-shadow: inset 0 0 0 2px #e5e5e5;
			color: #777;
		}

			input[type="submit"].alt:hover,
			input[type="reset"].alt:hover,
			input[type="button"].alt:hover,
			.button.alt:hover {
				background-color: #f8f8f8;
			}

			input[type="submit"].alt:active,
			input[type="reset"].alt:active,
			input[type="button"].alt:active,
			.button.alt:active {
				background-color: #f0f0f0;
			}

			input[type="submit"].alt.icon:before,
			input[type="reset"].alt.icon:before,
			input[type="button"].alt.icon:before,
			.button.alt.icon:before {
				color: #999;
			}

		input[type="submit"].primary,
		input[type="reset"].primary,
		input[type="button"].primary,
		.button.primary {
			background-color: #82a8e0;
			color: #ffffff !important;
		}

			input[type="submit"].primary:hover,
			input[type="reset"].primary:hover,
			input[type="button"].primary:hover,
			.button.primary:hover {
				background-color: #ecaa96;
			}

			input[type="submit"].primary:active,
			input[type="reset"].primary:active,
			input[type="button"].primary:active,
			.button.primary:active {
				background-color: #e4886a;
			}

		input[type="submit"].disabled, input[type="submit"]:disabled,
		input[type="reset"].disabled,
		input[type="reset"]:disabled,
		input[type="button"].disabled,
		input[type="button"]:disabled,
		.button.disabled,
		.button:disabled {
			background-color: #777 !important;
			box-shadow: inset 0 -0.15em 0 0 rgba(0, 0, 0, 0.15);
			color: #f5f5f5 !important;
			cursor: default;
			opacity: 0.25;
		}

/* Header */

	#page-wrapper {
		padding-top: 3em;
	}

	body.landing #page-wrapper {
		padding-top: 0;
	}

	@-moz-keyframes reveal-header {
		0% {
			top: -5em;
		}

		100% {
			top: 0;
		}
	}

	@-webkit-keyframes reveal-header {
		0% {
			top: -5em;
		}

		100% {
			top: 0;
		}
	}

	@-ms-keyframes reveal-header {
		0% {
			top: -5em;
		}

		100% {
			top: 0;
		}
	}

	@keyframes reveal-header {
		0% {
			top: -5em;
		}

		100% {
			top: 0;
		}
	}

	#header {
		background:#12284c !important;
		color: #bbb;
		cursor: default;
		height: 3.25em;
		left: 0;
		line-height: 3.25em;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 10000;
	
  background-color:#12284c !important;
  background-image:none !important;}

		#header h1 {
			color: inherit;
			height: inherit;
			left: 1.25em;
			line-height: inherit;
			margin: 0;
			padding: 0;
			position: absolute;
			top: 0;
		}

			#header h1 a {
				color: #fff;
				font-weight: 400;
				border: 0;
			}

		#header nav {
			height: inherit;
			line-height: inherit;
			position: absolute;
			right: 0.75em;
			top: 0;
			vertical-align: middle;
		}

			#header nav > ul {
				list-style: none;
				margin: 0;
				padding-left: 0;
			}

				#header nav > ul > li {
					display: inline-block;
					padding-left: 0;
				}

					#header nav > ul > li > ul {
						display: none;
					}

					#header nav > ul > li a {
						display: inline-block;
						height: 2em;
						line-height: 1.95em;
						padding: 0 1em;
						border-radius: 6px;
					}

					#header nav > ul > li a:not(.button) {
						color: #fff;
						display: inline-block;
						text-decoration: none;
						border: 0;
					}

						#header nav > ul > li a:not(.button).icon:before {
							color: #999;
							margin-right: 0.5em;
						}

					#header nav > ul > li:first-child {
						margin-left: 0;
					}

					#header nav > ul > li.active a:not(.button) {
						background-color: rgba(153, 153, 153, 0.25);
					}

					#header nav > ul > li .button {
						margin: 0 0 0 0.5em;
						position: relative;
					}

		#header input[type="submit"],
		#header input[type="reset"],
		#header input[type="button"],
		#header .button {
			background-color: transparent;
			box-shadow: inset 0 0 0 2px #999;
			color: #fff;
		}

			#header input[type="submit"]:hover,
			#header input[type="reset"]:hover,
			#header input[type="button"]:hover,
			#header .button:hover {
				background-color: rgba(153, 153, 153, 0.25);
			}

			#header input[type="submit"]:active,
			#header input[type="reset"]:active,
			#header input[type="button"]:active,
			#header .button:active {
				background-color: rgba(153, 153, 153, 0.5);
			}

		#header .container {
			position: relative;
		}

			#header .container h1 {
				left: 0;
			}

			#header .container nav {
				right: 0;
			}

		#header.reveal {
			-moz-animation: reveal-header 0.5s;
			-webkit-animation: reveal-header 0.5s;
			-ms-animation: reveal-header 0.5s;
			animation: reveal-header 0.5s;
		
  background:#12284c !important;
  background-color:#12284c !important;
  background-image:none !important;}

		#header.alt {
			-moz-animation: none;
			-webkit-animation: none;
			-ms-animation: none;
			animation: none;
			background:#12284c !important;
			color: rgba(255, 255, 255, 0.75);
			position: absolute;
		
  background-color:#12284c !important;
  background-image:none !important;}

			#header.alt nav > ul > li a:not(.button).icon:before {
				color: rgba(255, 255, 255, 0.75);
			
  background:#12284c !important;
  background-color:#12284c !important;
  background-image:none !important;}

			#header.alt nav > ul > li.active a:not(.button) {
				background-color:#12284c !important;
			
  background:#12284c !important;
  background-image:none !important;}

			#header.alt input[type="submit"],
			#header.alt input[type="reset"],
			#header.alt input[type="button"],
			#header.alt .button {
				box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.5);
			
  background:#12284c !important;
  background-color:#12284c !important;
  background-image:none !important;}

				#header.alt input[type="submit"]:hover,
				#header.alt input[type="reset"]:hover,
				#header.alt input[type="button"]:hover,
				#header.alt .button:hover {
					background-color:#12284c !important;
				
  background:#12284c !important;
  background-image:none !important;}

				#header.alt input[type="submit"]:active,
				#header.alt input[type="reset"]:active,
				#header.alt input[type="button"]:active,
				#header.alt .button:active {
					background-color:#12284c !important;
				
  background:#12284c !important;
  background-image:none !important;}

	.dropotron {
		background: #fff;
		border-radius: 6px;
		box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.065), inset 0 -1px 0 0 #fff, inset 0 0 0 1px rgba(229, 229, 229, 0.5);
		list-style: none;
		margin: calc(-0.5em + 1px) 0 0 1px;
		padding: 0.5em 0;
		width: 11em;
	}

		.dropotron li {
			padding: 0;
		}

			.dropotron li a, .dropotron li span {
				-moz-transition: none;
				-webkit-transition: none;
				-ms-transition: none;
				transition: none;
				border: 0;
				border-top: solid 1px #f2f2f2;
				color: inherit;
				display: block;
				padding: 0.15em 1em;
			}

			.dropotron li:first-child > a, .dropotron li:first-child > span {
				border-top: 0;
			}

			.dropotron li.active > a, .dropotron li.active > span, .dropotron li:hover > a, .dropotron li:hover > span {
				background: #82a8e0;
				color: #ffffff;
			}

		.dropotron.level-0 {
			font-size: 0.9em;
			margin: 1em 0 0 0;
		}

			.dropotron.level-0:before {
				-moz-transform: rotate(45deg);
				-webkit-transform: rotate(45deg);
				-ms-transform: rotate(45deg);
				transform: rotate(45deg);
				background: #fff;
				border: solid 1px rgba(229, 229, 229, 0.5);
				border-bottom: 0;
				border-right: 0;
				box-shadow: -0.25em -0.125em 0.125em 0 rgba(0, 0, 0, 0.015);
				content: '';
				display: block;
				height: 0.75em;
				position: absolute;
				right: 1.25em;
				top: -0.375em;
				width: 0.75em;
				z-index: 0;
			}

/* Banner */

	#banner {
		background-attachment: scroll,							fixed;
		background-color: #666;
		background-image: url("images/overlay.png"), url("../../images/banner.jpg");
		background-position: top left,						center center;
		background-repeat: repeat,							no-repeat;
		background-size: auto,							cover;
		color: #fff;
		padding: 12em 0 20em 0;
		text-align: center;
	}

		#banner :last-child {
			margin-bottom: 0;
		}

		#banner h2, #banner h3, #banner h4, #banner h5, #banner h6 {
			color: #fff;
		}

		#banner h2 {
			font-size: 3.5em;
			line-height: 1em;
			margin: 0 0 0.5em 0;
			padding: 0;
		}

		#banner p {
			font-size: 1.25em;
			margin-bottom: 1.75em;
		}

		#banner input[type="submit"],
		#banner input[type="reset"],
		#banner input[type="button"],
		#banner .button {
			background-color: transparent;
			box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.5);
			color: #fff;
			min-width: 12em;
		}

			#banner input[type="submit"]:hover,
			#banner input[type="reset"]:hover,
			#banner input[type="button"]:hover,
			#banner .button:hover {
				background-color: rgba(255, 255, 255, 0.1);
			}

			#banner input[type="submit"]:active,
			#banner input[type="reset"]:active,
			#banner input[type="button"]:active,
			#banner .button:active {
				background-color: rgba(255, 255, 255, 0.2);
			}

			#banner input[type="submit"].primary,
			#banner input[type="reset"].primary,
			#banner input[type="button"].primary,
			#banner .button.primary {
				background: #fff;
				color: #666 !important;
			}

/* Main */

	#main {
		padding: 4em 0;
	}

		#main > header {
			text-align: center;
			margin: 0 0 3em 0;
		}

			#main > header h2 {
				font-size: 2.75em;
				margin: 0;
			}

			#main > header p {
				border-top: solid 2px #e5e5e5;
				color: #777;
				display: inline-block;
				font-style: normal;
				margin: 1em 0 0 0;
				padding: 1em 0 1.25em 0;
			}

	body.landing #main {
		margin-top: -14em;
	}

/* Footer */

	#footer {
		background: #f0f0f0;
		padding: 4em 0 6em 0;
		text-align: center;
	}

		#footer .icons a {
			-moz-transition: opacity 0.2s ease-in-out;
			-webkit-transition: opacity 0.2s ease-in-out;
			-ms-transition: opacity 0.2s ease-in-out;
			transition: opacity 0.2s ease-in-out;
			opacity: 0.35;
		}

			#footer .icons a:hover {
				opacity: 0.75;
			}

		#footer .copyright {
			color: #999;
			font-size: 0.9em;
			line-height: 1em;
			margin: 2em 0 0 0;
			padding: 0;
			text-align: center;
		}

			#footer .copyright a {
				color: inherit;
			}

			#footer .copyright li {
				border-left: solid 1px #dddddd;
				display: inline-block;
				list-style: none;
				margin-left: 1em;
				padding-left: 1em;
			}

				#footer .copyright li:first-child {
					border-left: 0;
					margin-left: 0;
					padding-left: 0;
				}

/* CTA */

	#cta {
		background: #82a8e0;
		color: #f9e6df;
		padding: 3.5em 0 4em 0;
		text-align: center;
	}

		#cta h2, #cta h3, #cta h4, #cta h5, #cta h6 {
			color: inherit;
		}

		#cta form {
			margin: 0 auto;
			max-width: 100%;
			width: 25em;
		}

		#cta input[type="submit"],
		#cta input[type="reset"],
		#cta input[type="button"],
		#cta .button {
			box-shadow: none;
			background: #fff;
			color: #82a8e0;
		}

		#cta input[type="text"],
		#cta input[type="password"],
		#cta input[type="email"],
		#cta select,
		#cta textarea {
			color: #ffffff;
			background: rgba(255, 255, 255, 0.15);
			border: 0;
		}

			#cta input[type="text"]:focus,
			#cta input[type="password"]:focus,
			#cta input[type="email"]:focus,
			#cta select:focus,
			#cta textarea:focus {
				box-shadow: inset 0 0 0 2px #fff;
			}

		#cta ::-webkit-input-placeholder {
			color: rgba(255, 255, 255, 0.75) !important;
		}

		#cta :-moz-placeholder {
			color: rgba(255, 255, 255, 0.75) !important;
		}

		#cta ::-moz-placeholder {
			color: rgba(255, 255, 255, 0.75) !important;
		}

		#cta :-ms-input-placeholder {
			color: rgba(255, 255, 255, 0.75) !important;
		}

		#cta .formerize-placeholder {
			color: rgba(255, 255, 255, 0.75) !important;
		}

/* Wide */

	@media screen and (max-width: 1680px) {

		/* Basic */

			body, input, select, textarea {
				font-size: 13pt;
			}

		/* Banner */

			#banner {
				padding: 10em 0 18em 0;
			}

	}

/* Normal */

	@media screen and (max-width: 1280px) {

		/* Basic */

			body, input, select, textarea {
				font-size: 11pt;
			}

		/* Header */

			.dropotron.level-0 {
				font-size: 1em;
			}

		/* Banner */

			#banner {
				background-attachment: scroll;
			}

				#banner h2 {
					font-size: 3.5em;
				}

	}

/* Narrow */

	@media screen and (max-width: 980px) {

		/* Basic */

			body, input, select, textarea {
				font-size: 11pt;
			}

	}

/* Narrower */

	#navPanel, #navButton {
		display: none;
	}

	@media screen and (max-width: 840px) {

		/* Basic */

			html, body {
				overflow-x: hidden;
			}

			body, input, select, textarea {
				font-size: 11pt;
			}

			h2 br, h3 br, h4 br, h5 br, h6 br {
				display: none;
			}

		/* Section/Article */

			header br {
				display: none;
			}

			header.major {
				padding: 0 4em;
			}

		/* Box */

			.box {
				padding: 3em 2em;
			}

				.box.features > section {
					padding: 3em 2em;
				}

				.box .image.featured {
					margin-left: -2em;
					width: calc(100% + 4em);
				}

					.box .image.featured:first-child {
						margin-bottom: 3em;
						margin-top: -3em;
					}

					.box .image.featured:last-child {
						margin-bottom: -3em;
						margin-top: 3em;
					}

		/* Header */

			#page-wrapper {
				padding-top: 0;
			}

			#header {
				display: none;
			
  background:#12284c !important;
  background-color:#12284c !important;
  background-image:none !important;}

		/* Banner */

		/* Nav */

			#page-wrapper {
				-moz-backface-visibility: hidden;
				-webkit-backface-visibility: hidden;
				-ms-backface-visibility: hidden;
				backface-visibility: hidden;
				-moz-transition: -moz-transform 0.5s ease;
				-webkit-transition: -webkit-transform 0.5s ease;
				-ms-transition: -ms-transform 0.5s ease;
				transition: transform 0.5s ease;
				padding-bottom: 1px;
			}

			#navButton {
				-moz-backface-visibility: hidden;
				-webkit-backface-visibility: hidden;
				-ms-backface-visibility: hidden;
				backface-visibility: hidden;
				-moz-transition: -moz-transform 0.5s ease;
				-webkit-transition: -webkit-transform 0.5s ease;
				-ms-transition: -ms-transform 0.5s ease;
				transition: transform 0.5s ease;
				display: block;
				height: 44px;
				left: 0;
				position: fixed;
				top: 0;
				width: 100%;
				z-index: 10001;
			}

				#navButton .toggle {
					text-decoration: none;
					height: 100%;
					left: 0;
					position: absolute;
					top: 0;
					width: 100%;
					border: 0;
					outline: 0;
				}

					#navButton .toggle:before {
						-moz-osx-font-smoothing: grayscale;
						-webkit-font-smoothing: antialiased;
						display: inline-block;
						font-style: normal;
						font-variant: normal;
						text-rendering: auto;
						line-height: 1;
						text-transform: none !important;
						font-family: 'Font Awesome 5 Free';
						font-weight: 900;
					}

					#navButton .toggle:before {
						background: rgba(192, 192, 192, 0.75);
						border-radius: 6px;
						color: #fff;
						content: '\f0c9';
						display: block;
						font-size: 16px;
						height: 2.25em;
						left: 0.5em;
						line-height: 2.25em;
						position: absolute;
						text-align: center;
						top: 0.5em;
						width: 3.5em;
					}

			#navPanel {
				-moz-backface-visibility: hidden;
				-webkit-backface-visibility: hidden;
				-ms-backface-visibility: hidden;
				backface-visibility: hidden;
				-moz-transform: translateX(-275px);
				-webkit-transform: translateX(-275px);
				-ms-transform: translateX(-275px);
				transform: translateX(-275px);
				-moz-transition: -moz-transform 0.5s ease;
				-webkit-transition: -webkit-transform 0.5s ease;
				-ms-transition: -ms-transform 0.5s ease;
				transition: transform 0.5s ease;
				display: block;
				height: 100%;
				left: 0;
				overflow-y: auto;
				position: fixed;
				top: 0;
				width: 275px;
				z-index: 10002;
				background: #2b2b2b;
				color: #bbb;
			}

				#navPanel .link {
					border-bottom: 0;
					border-top: solid 1px rgba(255, 255, 255, 0.05);
					color: #bbb;
					display: block;
					height: 44px;
					line-height: 44px;
					padding: 0 1em 0 1em;
					text-decoration: none;
				}

					#navPanel .link:first-child {
						border-top: 0;
					}

					#navPanel .link.depth-0 {
						color: #fff;
					}

					#navPanel .link .indent-1 {
						display: inline-block;
						width: 1em;
					}

					#navPanel .link .indent-2 {
						display: inline-block;
						width: 2em;
					}

					#navPanel .link .indent-3 {
						display: inline-block;
						width: 3em;
					}

					#navPanel .link .indent-4 {
						display: inline-block;
						width: 4em;
					}

					#navPanel .link .indent-5 {
						display: inline-block;
						width: 5em;
					}

			body.navPanel-visible #page-wrapper {
				-moz-transform: translateX(275px);
				-webkit-transform: translateX(275px);
				-ms-transform: translateX(275px);
				transform: translateX(275px);
			}

			body.navPanel-visible #navButton {
				-moz-transform: translateX(275px);
				-webkit-transform: translateX(275px);
				-ms-transform: translateX(275px);
				transform: translateX(275px);
			}

			body.navPanel-visible #navPanel {
				-moz-transform: translateX(0);
				-webkit-transform: translateX(0);
				-ms-transform: translateX(0);
				transform: translateX(0);
			}

	}

/* Mobile */

	@media screen and (max-width: 736px) {

		/* Basic */

			body, input, select, textarea {
				font-size: 11pt;
			}

			h2 {
				font-size: 1.75em;
				line-height: 1.35em;
				letter-spacing: -0.025em;
			}

			h3 {
				font-size: 1.5em;
			}

			h4 {
				font-size: 1em;
			}

		/* Section/Article */

			header.major {
				padding: 1em;
			}

				header.major h2, header.major p {
					padding-left: 0.5em;
					padding-right: 0.5em;
				}

		/* Box */

			.box {
				margin: 1em;
				overflow-x: hidden;
				padding: 2em 2em !important;
			}

				.box.features .features-row {
					border-top: 0;
					padding: 0;
				}

					.box.features .features-row section {
						border: 0;
						border-top: solid 1px #e5e5e5 !important;
						float: none;
						margin: 2em 0 0 0 !important;
						padding: 2em 0 0 0 !important;
						width: 100%;
					}

					.box.features .features-row:first-child section:first-child {
						border-top: 0 !important;
						margin-top: 0 !important;
						padding-top: 0 !important;
					}

				.box .image.featured {
					margin-left: -2em;
					width: calc(100% + 4em);
				}

					.box .image.featured:first-child {
						margin-bottom: 2em;
						margin-top: -2em;
					}

					.box .image.featured:last-child {
						margin-bottom: -2em;
						margin-top: 2em;
					}

		/* Banner */

			#banner {
				padding: 4em 0;
			}

				#banner h2 {
					font-size: 2.25em;
				}

				#banner p {
					font-size: 1.25em;
				}

		/* Main */

			#main {
				padding: 4em 0 0 0;
			}

				#main > header {
					margin: 0 2em 1.5em 2em;
				}

					#main > header h2 {
						font-size: 2em;
					}

					#main > header p {
						font-size: 1em;
						padding-bottom: 1em;
					}

			body.landing #main {
				padding: 0;
				margin-top: 0;
			}

		/* Footer */

			#footer {
				padding: 4em 0;
			}

				#footer .copyright li {
					border-left: 0;
					display: block;
					line-height: 2em;
					margin-left: 0;
					padding-left: 0;
				}

	}

/* Mobile (Portrait) */

	@media screen and (max-width: 480px) {

		/* Basic */

			html, body {
				min-width: 320px;
			}

			body, input, select, textarea {
				font-size: 11pt;
			}

		/* Section/Article */

			header.major {
				padding: 0;
			}

		/* List */

			ul.actions {
				margin: 0 0 2em 0;
			}

				ul.actions li {
					display: block;
					padding: 1em 0 0 0;
					text-align: center;
					width: 100%;
				}

					ul.actions li:first-child {
						padding-top: 0;
					}

					ul.actions li > * {
						width: 100%;
						margin: 0 !important;
					}

						ul.actions li > *.icon:before {
							margin-left: -2em;
						}

				ul.actions.small li {
					padding: 0.5em 0 0 0;
				}

					ul.actions.small li:first-child {
						padding-top: 0;
					}

		/* Box */

			.box {
				border-radius: 0;
				box-shadow: none;
				margin: 1em 0 0 0;
				padding: 3em 1em !important;
			}

				.box.features .features-row section {
					margin: 3em 0 0 0 !important;
					padding: 3em 0 0 0 !important;
				}

				.box .image.featured {
					border-radius: 0;
					margin-left: -1em;
					width: calc(100% + 2em);
				}

					.box .image.featured img {
						border-radius: 0 !important;
					}

					.box .image.featured:first-child {
						margin-bottom: 3em;
						margin-top: -3em;
					}

					.box .image.featured:last-child {
						margin-bottom: -3em;
						margin-top: 3em;
					}

		/* Banner */

			#banner {
				padding: 5em 3em 4em 3em;
			}

		/* Main */

			#main > .box:first-child {
				margin-top: 0;
			}

		/* CTA */

			#cta {
				padding: 2.5em 1em 3em 1em;
			}

	}

/* --- SIEEJC: Modales (Admin) --- */
.modal{
  display:none;
  position:fixed;
  top:0; left:0;
  width:100%; height:100%;
  background: rgba(0,0,0,0.55);
  z-index: 10000;
  overflow:auto;
  padding: 2rem 1rem;
}
.modal .modal-content{
  background: #1f2429;
  color: #ffffff;
  border-radius: 12px;
  padding: 2rem;
  margin: 2rem auto;
  box-shadow: 0 10px 30px rgba(0,0,0,0.35);
}
.modal label{ color: rgba(255,255,255,0.85); }
.modal h3, .modal h4{ color: #ffffff; }
.modal input[type="text"], .modal input[type="email"], .modal select{
  background: rgba(255,255,255,0.95);
  color: #1f2429;
}


/* Admin modal password box */
#r_pass{background:#fff;color:#111!important;font-weight:600;}
#modalUser .modal-content label{color:#d6d6d6;}

.detail-value {
  min-height: 2.75rem;
  padding: 0.75rem 0.9rem;
  border: 1px solid rgba(144, 144, 144, 0.25);
  border-radius: 6px;
  background: rgba(245, 245, 245, 0.35);
  color: inherit;
}

.detail-note {
  white-space: pre-wrap;
  word-break: break-word;
  min-height: 8rem;
}

#m_result {
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid rgba(63, 81, 181, 0.25);
  border-radius: 8px;
  background: rgba(63, 81, 181, 0.06);
}

#m_result input[readonly],
#modalResetResult input[readonly] {
  background: #fff;
  font-weight: 600;
}

#modalResetResult {
  position: fixed;
  inset: 0;
  z-index: 10000;
  background: rgba(0, 0, 0, 0.45);
}

#modalResetResult .modal-content {
  margin: 6vh auto;
}

#modalCerrarVisita {
  position: fixed;
  inset: 0;
  z-index: 10000;
  background: rgba(0, 0, 0, 0.45);
}

#modalCerrarVisita .modal-content {
  margin: 6vh auto;
}

#modalCerrarVisita textarea {
  resize: vertical;
  min-height: 8rem;
}

#modalCerrarVisita textarea,
#modalCerrarVisita input,
#modalResetResult input[readonly] {
  color: #222 !important;
  background: #fff !important;
}

#modalCerrarVisita textarea::placeholder {
  color: #777 !important;
}


/* SIEEJC médico fixes */
textarea { resize: none; }
#certificadosTableWrap, .table-responsive { overflow-x: auto; }
.sieejc-certificados-table {
  width: 100%;
  table-layout: fixed;
}
.sieejc-certificados-table th,
.sieejc-certificados-table td {
  word-wrap: break-word;
  overflow-wrap: anywhere;
}


/* tabla certificados ancho controlado */
.sieejc-certificados-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}
.sieejc-certificados-table {
  width: 100%;
  table-layout: fixed;
}
.sieejc-certificados-table th,
.sieejc-certificados-table td {
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}
.sieejc-certificados-table td.actions-col,
.sieejc-certificados-table th.actions-col {
  width: 170px;
}





/* table containment fix */
.sieejc-certificados-host {
  overflow: hidden;
}
.sieejc-certificados-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
}
.sieejc-certificados-table {
  width: 100%;
  min-width: 1120px;
  border-collapse: collapse;
}
.sieejc-certificados-table th,
.sieejc-certificados-table td {
  box-sizing: border-box;
  vertical-align: top;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  padding-right: 0.8em;
}
.sieejc-certificados-table .col-folio { width: 150px; }
.sieejc-certificados-table .col-persona { width: 260px; }
.sieejc-certificados-table .col-medico { width: 220px; }
.sieejc-certificados-table .col-fecha { width: 150px; }
.sieejc-certificados-table .col-pdf { width: 170px; }
.sieejc-certificados-table .col-acciones { width: 170px; }

.sieejc-certificados-table .compact-actions {
  display: flex;
  flex-direction: column;
  gap: 0.55em;
}
.sieejc-certificados-table .compact-actions .button.small,
.sieejc-certificados-table .compact-actions .button.small.alt {
  display: block;
  width: 100%;
  min-width: 150px;
  max-width: 100%;
  padding: 0 0.8em;
  line-height: 2.5em;
  height: auto;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  box-sizing: border-box;
  margin: 0;
  font-size: 0.92em;
}
.sieejc-certificados-table .status-badge {
  display: inline-block;
  max-width: 100%;
  white-space: normal;
}
.sieejc-certificados-table .muted {
  display: inline;
}

/* SIEEJC - emblema institucional fijo
   Se coloca fijo respecto a la ventana para que no cambie de posición
   entre pantallas ni dependa del ancho del contenedor principal. */
body::before {
  content: "";
  position: fixed;
  top: 118px;
  left: 72px;
  width: 185px;
  aspect-ratio: 907 / 895;
  background-image: url("../../images/logo_guardia_civil.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.96;
  pointer-events: none;
  z-index: 1;
  filter: drop-shadow(0 10px 20px rgba(0,0,0,.08));
}

/* Mantiene el contenido principal por encima si llegara a cruzarse visualmente. */
#main.container,
#main.container > header,
#main.container > .box,
#main.container > form,
#main.container > .row,
#main.container > .table-wrapper {
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 1180px) {
  body::before {
    display: none;
  }
}

@media print {
  body::before {
    display: none !important;
  }
}

/* --- SIEEJC: tema institucional azul Guardia Civil --- */
:root {
  --sieejc-blue: #12284C;
  --sieejc-blue-2: #0B1A35;
  --sieejc-blue-3: #1F3D73;
  --sieejc-blue-4: #294E8F;
  --sieejc-blue-soft: rgba(18, 40, 76, .08);
  --sieejc-blue-soft-2: rgba(18, 40, 76, .14);
  --sieejc-border: rgba(18, 40, 76, .16);
  --sieejc-shadow: rgba(18, 40, 76, .18);
}

body {
  background: linear-gradient(180deg, #f7f9fc 0%, #f2f5f9 100%) !important;
}

body,
input,
select,
textarea {
  color: #5d6675;
}

a {
  color: var(--sieejc-blue-3);
}

a:hover {
  color: var(--sieejc-blue-4);
}

h1, h2, h3, h4, h5, h6,
strong, b {
  color: var(--sieejc-blue);
}

/* Cabecera institucional */
#header {
  background:#12284c !important;
  background-color:#12284c !important;
  background-image:none !important;
  color: rgba(255,255,255,.92) !important;
  box-shadow: 0 8px 24px rgba(18,40,76,.22) !important;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

#header h1 a {
  color: #fff !important;
  font-weight: 700 !important;
}

#header h1,
#header nav > ul > li a:not(.button) {
  color: rgba(255,255,255,.92) !important;
}

#header nav > ul > li a {
  border: 0 !important;
  border-radius: 8px !important;
}

#header nav > ul > li a:not(.button):hover,
#header nav > ul > li.active a:not(.button) {
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
}

#header nav > ul > li a:not(.button).icon:before {
  color: rgba(255,255,255,.72) !important;
}

#header .button,
#header nav > ul > li .button,
#header input[type="submit"],
#header input[type="reset"],
#header input[type="button"] {
  background: rgba(255,255,255,.08) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.68) !important;
  color: #fff !important;
  border-radius: 8px !important;
}

#header .button:hover,
#header nav > ul > li .button:hover,
#header input[type="submit"]:hover,
#header input[type="reset"]:hover,
#header input[type="button"]:hover {
  background: rgba(255,255,255,.18) !important;
  box-shadow: inset 0 0 0 1px #fff !important;
}

.dropotron {
  border-radius: 12px !important;
  overflow: hidden;
  box-shadow: 0 18px 44px rgba(18,40,76,.24) !important;
  border: 1px solid rgba(18,40,76,.10) !important;
}

.dropotron li a {
  color: var(--sieejc-blue) !important;
  font-weight: 400;
}

.dropotron li:hover > a {
  background: var(--sieejc-blue-soft) !important;
  color: var(--sieejc-blue-2) !important;
}

/* Contenedores */
#main.container > header h2 {
  color: var(--sieejc-blue);
}

#main.container > header p,
.muted,
.muted-text,
.mini,
.minor-note,
.panel-subtitle,
.export-note {
  color: #667085 !important;
}

.box,
.report-panel,
.report-card,
.summary-card,
.boxish,
.detail-card,
.subject-card,
.secure-note,
.summary-box,
.history-card,
.report-detail-card,
.config-summary,
.table-wrap,
.report-table-wrap,
.list-table-wrap {
  border-color: var(--sieejc-border) !important;
  box-shadow: 0 10px 24px rgba(18,40,76,.06) !important;
}

.box {
  border-top: 4px solid rgba(18,40,76,.12) !important;
}

.box.special,
.report-panel,
.boxish.form-panel {
  border-top: 4px solid var(--sieejc-blue-3) !important;
}

/* Botones */
input[type="submit"],
input[type="reset"],
input[type="button"],
button,
.button,
.report-action-btn,
.list-action,
.modal-btn.primary,
.upload-row input[type=file]::file-selector-button {
  background-color: var(--sieejc-blue) !important;
  color: #fff !important;
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
button:hover,
.button:hover,
.report-action-btn:hover,
.list-action:hover,
.modal-btn.primary:hover,
.upload-row input[type=file]::file-selector-button:hover {
  background-color: var(--sieejc-blue-3) !important;
}

input[type="submit"]:active,
input[type="reset"]:active,
input[type="button"]:active,
button:active,
.button:active,
.report-action-btn:active,
.list-action:active,
.modal-btn.primary:active {
  background-color: var(--sieejc-blue-2) !important;
}

input[type="submit"].primary,
input[type="reset"].primary,
input[type="button"].primary,
.button.primary,
input[type="submit"].special,
input[type="reset"].special,
input[type="button"].special,
.button.special {
  background-color: var(--sieejc-blue-3) !important;
  color: #fff !important;
}

input[type="submit"].primary:hover,
input[type="reset"].primary:hover,
input[type="button"].primary:hover,
.button.primary:hover,
input[type="submit"].special:hover,
input[type="reset"].special:hover,
input[type="button"].special:hover,
.button.special:hover {
  background-color: var(--sieejc-blue) !important;
}

input[type="submit"].alt,
input[type="reset"].alt,
input[type="button"].alt,
button.alt,
.button.alt,
.modal-btn.secondary,
.table-pagination .page-btn {
  background-color: #fff !important;
  box-shadow: inset 0 0 0 2px var(--sieejc-border) !important;
  color: var(--sieejc-blue) !important;
}

input[type="submit"].alt:hover,
input[type="reset"].alt:hover,
input[type="button"].alt:hover,
button.alt:hover,
.button.alt:hover,
.modal-btn.secondary:hover,
.table-pagination .page-btn:hover {
  background-color: var(--sieejc-blue-soft) !important;
}

/* Campos */
input[type="text"],
input[type="date"],
input[type="time"],
input[type="password"],
input[type="email"],
input[type="number"],
select,
textarea,
.control-group input,
.control-group textarea,
.control-group select,
.view-switch select,
.table-pagination .page-size select {
  border-color: rgba(18,40,76,.15) !important;
  background-color: #fff !important;
  color: #1f2937 !important;
}

input[type="text"]:focus,
input[type="date"]:focus,
input[type="time"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
select:focus,
textarea:focus,
.control-group input:focus,
.control-group textarea:focus,
.control-group select:focus,
.view-switch select:focus,
.table-pagination .page-size select:focus {
  border-color: var(--sieejc-blue-3) !important;
  box-shadow: 0 0 0 2px rgba(31,61,115,.18) !important;
}

.control-group label,
.cert-form-grid label,
.detail-label,
.report-detail-label,
.config-item .label,
.history-table th,
.summary-detail-title,
.history-folio {
  color: var(--sieejc-blue) !important;
}

input[type="checkbox"]:checked + label:before,
input[type="radio"]:checked + label:before {
  background: var(--sieejc-blue) !important;
  border-color: var(--sieejc-blue) !important;
}

/* Tablas */
table thead,
table.report-table th,
.report-table.compact th,
.list-table th,
.daily-table th,
.history-table th,
.sieejc-certificados-table th {
  background: var(--sieejc-blue) !important;
  color: #fff !important;
}

table thead th,
table.report-table th,
.report-table.compact th,
.list-table th,
.daily-table th,
.history-table th,
.sieejc-certificados-table th {
  color: #fff !important;
}

table tbody tr:nth-child(2n + 1) {
  background-color: rgba(18,40,76,.025);
}

.table-wrapper,
.table-wrap,
.report-table-wrap,
.list-table-wrap {
  border-color: var(--sieejc-border) !important;
}

/* Badges, tarjetas y estados */
.status-badge,
.badge-state,
.status-pill,
.pill,
.report-status {
  border-color: var(--sieejc-border) !important;
}

.status-badge,
.badge-state,
.pill,
.report-status,
.status-pill {
  background: var(--sieejc-blue-soft) !important;
  color: var(--sieejc-blue) !important;
}

.status-ok,
.badge-state.on,
.status-banner.open {
  background: rgba(22,163,74,.12) !important;
  color: #166534 !important;
}

.status-pending,
.status-pill.warn,
.status-banner.locked {
  background: rgba(245,158,11,.16) !important;
  color: #92400e !important;
}

.badge-state.off {
  background: rgba(220,38,38,.12) !important;
  color: #991b1b !important;
}

.summary-card:hover,
.report-card:hover {
  box-shadow: 0 14px 32px rgba(18,40,76,.10) !important;
}

.summary-card:focus-visible,
.report-card:focus-visible,
.report-action-btn:focus-visible,
.list-action:focus-visible,
.button:focus-visible {
  outline: 2px solid var(--sieejc-blue-3) !important;
  outline-offset: 2px;
}

.summary-card .v,
.report-card strong,
.summary-detail-count,
.config-item .value,
.report-detail-value,
.detail-value,
.history-text {
  color: var(--sieejc-blue) !important;
}

.summary-card .k,
.summary-card .s,
.summary-detail-subtitle,
.summary-detail-note,
.report-detail-label,
.detail-label,
.config-item .label {
  color: #667085 !important;
}

.chart-host {
  border: 1px solid var(--sieejc-border);
  border-radius: 14px;
  background: linear-gradient(180deg, #fff 0%, rgba(18,40,76,.025) 100%);
  padding: 12px;
}

/* Modales */
.modal {
  background: rgba(11,26,53,.62) !important;
}

.modal .modal-content,
.modal-content {
  border: 1px solid rgba(18,40,76,.16) !important;
  box-shadow: 0 22px 58px rgba(11,26,53,.28) !important;
}

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

.modal-header h3,
.modal h3,
.modal h4 {
  color: var(--sieejc-blue) !important;
}

/* Clasificaciones médicas */
.clasificacion-item label:hover {
  border-color: var(--sieejc-blue-3) !important;
  box-shadow: 0 8px 22px rgba(18,40,76,.10) !important;
}

.clasificacion-item input[type=checkbox]:focus + label {
  outline: 2px solid rgba(31,61,115,.22) !important;
}

.clasificacion-item input[type=checkbox]:checked + label {
  border-color: var(--sieejc-blue-3) !important;
  background: linear-gradient(180deg, rgba(18,40,76,.08) 0%, rgba(31,61,115,.12) 100%) !important;
  box-shadow: 0 8px 22px rgba(18,40,76,.14) !important;
  color: var(--sieejc-blue) !important;
}

.clasificacion-item input[type=checkbox]:checked + label:before {
  background: var(--sieejc-blue-3) !important;
  border-color: var(--sieejc-blue-3) !important;
}

/* Logo lateral visible en todas las interfaces */
body::before {
  display: block !important;
  top: 5.15em !important;
  left: 42px !important;
  width: 150px !important;
  height: 150px !important;
  opacity: .92 !important;
  z-index: 20 !important;
  pointer-events: none !important;
  background-image: url("../../images/logo_guardia_civil.png") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  filter: drop-shadow(0 10px 20px rgba(18,40,76,.12)) !important;
}

#header {
  z-index: 10000 !important;

  background:#12284c !important;
  background-color:#12284c !important;
  background-image:none !important;}

#main.container,
#footer {
  position: relative !important;
  z-index: 30 !important;
}

@media screen and (max-width: 1280px) {
  body::before {
    top: 5em !important;
    left: 22px !important;
    width: 118px !important;
    height: 118px !important;
    opacity: .72 !important;
  }
}

@media screen and (max-width: 1180px) {
  body::before {
    display: none !important;
  }
}

@media print {
  body::before {
    display: none !important;
  }
}

/* Validaciones de entrevista procesal */
.field-hint {
  display: block;
  margin-top: .35rem;
  font-size: .82rem;
  line-height: 1.25;
  color: #5f6f88;
}
.field-hint.ok { color: #19764a; }
.field-hint.warning { color: #9a5b00; font-weight: 700; }
.field-hint.error { color: #9b1c1c; font-weight: 700; }
input.field-invalid,
textarea.field-invalid,
select.field-invalid {
  border-color: #b42318 !important;
  box-shadow: 0 0 0 2px rgba(180, 35, 24, .12) !important;
}
input.field-valid {
  border-color: #2f855a !important;
}

/* v4.46 - documentos del expediente y evidencia física desde expediente */
.doc-panel-head,
.evidencia-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(18,45,82,.14);
  border-radius: 12px;
  background: rgba(248,251,255,.9);
  margin-bottom: 10px;
}
.doc-panel-head strong,
.evidencia-toolbar strong { display:block; color:#10294d; font-weight:800; }
.doc-panel-head span,
.evidencia-toolbar span { display:block; color:#5b6d86; font-size:.9em; margin-top:3px; }
.docs-status-table td { vertical-align: middle; }
.docs-status-table td strong { display:block; color:#10294d; }
.docs-status-table td small { display:block; color:#6b7c92; margin-top:3px; }
.doc-actions-cell { min-width: 210px; }
.doc-actions-cell .button { margin: 2px 3px 2px 0; }
.evidencia-card .foto-preview img { object-fit: cover; width:100%; height:100%; }
.evidencia-grid { margin-top: 10px; }



/* SIEEJC inicio homologado + footer institucional */
html, body { min-height: 100%; }
body { min-height: 100vh; }
#page-wrapper { min-height: 100vh; display: flex; flex-direction: column; }
#main { flex: 1 0 auto; }
#footer {
  flex-shrink: 0;
  margin-top: auto !important;
  padding: 2.15rem 1rem !important;
  background: linear-gradient(180deg, #f5f7fb 0%, #eef2f7 100%) !important;
  border-top: 1px solid #dfe7f2 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75) !important;
  color: #7b8794 !important;
  text-align: center !important;
}
#footer .copyright, #footer ul, #footer li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
}
#footer .copyright li, #footer li { color: #7b8794 !important; font-size: .92rem !important; }
.sieejc-home-wrap { max-width: 1180px; margin: 0 auto; }
.sieejc-brand-strip {
  display:flex; align-items:center; justify-content:center; gap:18px;
  margin: 0 auto 1.25rem auto; padding: 0; text-align:left;
}
.sieejc-brand-strip img { width: 78px; height:auto; filter: drop-shadow(0 10px 20px rgba(15,31,61,.18)); }
.sieejc-brand-text strong { display:block; color:#0b2f5f; font-weight:800; letter-spacing:.01em; }
.sieejc-brand-text span { display:block; color:#64748b; font-size:.98rem; }
.sieejc-home-panel {
  background:#fff; border:1px solid #dfe7f2; border-radius:18px;
  box-shadow:0 18px 46px rgba(15,31,61,.09);
  padding: 24px 26px; margin: 0 0 18px;
}
.sieejc-home-panel h2 { margin:0 0 .65rem; color:#0b2f5f; font-size:2.05rem; }
.sieejc-home-panel > p { color:#64748b; margin:0 0 1.45rem; }
.sieejc-home-grid { display:grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap:16px; }
.sieejc-home-card {
  border:1px solid #dfe7f2; border-radius:16px; background:#fff;
  box-shadow:0 10px 26px rgba(15,31,61,.065);
  padding:18px; min-height:190px; display:flex; flex-direction:column; justify-content:space-between;
}
.sieejc-home-card h3 { margin:0 0 .55rem; color:#0b2f5f; font-size:1.45rem; line-height:1.2; }
.sieejc-home-card p { color:#64748b; line-height:1.45; margin:0 0 1rem; }
.sieejc-home-card .button { margin:0 !important; width:100%; text-align:center; }
.sieejc-home-meta {
  display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:12px; margin-top: 16px;
}
.sieejc-home-meta article { border:1px solid #e5edf7; border-radius:14px; padding:14px; background:#fbfdff; }
.sieejc-home-meta strong { display:block; color:#0b2f5f; margin-bottom:4px; }
.sieejc-home-meta span { color:#64748b; }
.sieejc-home-hidden { display:none !important; }
@media (max-width: 1180px){ .sieejc-home-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } .sieejc-home-meta{ grid-template-columns:1fr; } }
@media (max-width: 760px){
  .sieejc-brand-strip{ flex-direction:column; text-align:center; }
  .sieejc-home-panel{ padding:18px 16px; border-radius:16px; }
  .sieejc-home-grid{ grid-template-columns:1fr; }
  .sieejc-home-card{ min-height:auto; }
}


/* =========================================================
   SIEEJC Procesal v9 - Control Procesal, navbar y contenedores
   2026-05-24
   ========================================================= */
@media screen and (min-width: 981px) {
  #header {
    height: 3.25em !important;
    line-height: 3.25em !important;
    background:#12284c !important;
  background-color:#12284c !important;
  background-image:none !important;
    color: rgba(255,255,255,.94) !important;
    box-shadow: 0 8px 24px rgba(18,40,76,.22) !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
  }
  #header h1 {
    height: inherit !important;
    line-height: inherit !important;
    left: 1.25em !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 1rem !important;
    letter-spacing: .01em !important;
    white-space: nowrap !important;
  }
  #header h1 a {
    color: #fff !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    border: 0 !important;
    text-decoration: none !important;
  }
  #header nav {
    position: absolute !important;
    top: 0 !important;
    right: 1.15rem !important;
    height: inherit !important;
    line-height: inherit !important;
    max-width: calc(100% - 280px) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
  }
  #header nav::-webkit-scrollbar { display: none !important; }
  #header nav > ul {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: .34rem !important;
    height: inherit !important;
    line-height: inherit !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
  }
  #header nav > ul > li {
    display: inline-flex !important;
    align-items: center !important;
    height: inherit !important;
    line-height: inherit !important;
    margin: 0 !important;
    padding-left: 0 !important;
  }
  #header nav > ul > li[hidden],
  #header nav > ul > li.sieejc-force-hidden,
  #header nav > ul > li[style*="display: none"],
  #header nav > ul > li[style*="display:none"] {
    display: none !important;
  }
  #header nav > ul > li a,
  #header nav > ul > li a:not(.button) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 2.15rem !important;
    line-height: 2.15rem !important;
    padding: 0 .86rem !important;
    border: 0 !important;
    border-radius: 8px !important;
    color: rgba(255,255,255,.93) !important;
    font-family: inherit !important;
    font-size: .96rem !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
  }
  #header nav > ul > li a:not(.button):hover,
  #header nav > ul > li.active a:not(.button) {
    background: rgba(255,255,255,.12) !important;
    color: #fff !important;
  }
}
.sieejc-force-hidden { display: none !important; }
body.role-pending #nav [data-role-menu],
body.role-pending #navPanel,
body.role-pending .procesal-only,
body.role-pending .juridico-only,
body.role-pending .admin-only {
  display: none !important;
}
#navPanel .link {
  font-size: 1rem !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}
.sieejc-module-brand,
#main.container > header.sieejc-module-brand {
  margin-top: 0 !important;
  margin-bottom: 1.35rem !important;
  text-align: left !important;
}
#main.container > header .sieejc-brand-strip.procesal-module-brand,
.sieejc-brand-strip.procesal-module-brand {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 24px !important;
  min-height: 120px !important;
  margin: 0 auto 1.35rem auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}
#main.container > header .sieejc-brand-strip.procesal-module-brand img,
.sieejc-brand-strip.procesal-module-brand img {
  width: 120px !important;
  max-width: 120px !important;
  height: auto !important;
  flex: 0 0 auto !important;
  filter: drop-shadow(0 12px 24px rgba(15,31,61,.18)) !important;
}
#main.container > header .sieejc-brand-strip.procesal-module-brand .sieejc-brand-text strong,
.sieejc-brand-strip.procesal-module-brand .sieejc-brand-text strong {
  display: block !important;
  color: #163967 !important;
  font-size: 1.62rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}
#main.container > header .sieejc-brand-strip.procesal-module-brand .sieejc-brand-text span,
.sieejc-brand-strip.procesal-module-brand .sieejc-brand-text span {
  display: block !important;
  color: #667085 !important;
  font-size: 1.08rem !important;
  line-height: 1.35 !important;
  margin-top: .15rem !important;
}
#main.container > header {
  margin-top: 0 !important;
}
/* Respira mejor en pantallas operativas amplias sin alterar lógica. */
#main.container.custodia-wide,
#main.container.iphs-wide,
#main.container.detail-wide,
#main.container.xlarge {
  width: min(1720px, calc(100vw - 4rem)) !important;
  max-width: min(1720px, calc(100vw - 4rem)) !important;
}
#main.container .box,
#main.container .iph-shell,
#main.container .juridico-panel,
#main.container .hero-card,
#main.container .detail-card-block {
  box-sizing: border-box !important;
}
@media screen and (max-width: 980px) {
  #main.container.custodia-wide,
  #main.container.iphs-wide,
  #main.container.detail-wide,
  #main.container.xlarge {
    width: min(100%, calc(100vw - 1.5rem)) !important;
    max-width: min(100%, calc(100vw - 1.5rem)) !important;
  }
  #main.container > header .sieejc-brand-strip.procesal-module-brand,
  .sieejc-brand-strip.procesal-module-brand {
    min-height: 0 !important;
    gap: 12px !important;
    text-align: center !important;
    flex-direction: column !important;
  }
  #main.container > header .sieejc-brand-strip.procesal-module-brand img,
  .sieejc-brand-strip.procesal-module-brand img {
    width: 92px !important;
    max-width: 92px !important;
  }
  #main.container > header .sieejc-brand-strip.procesal-module-brand .sieejc-brand-text strong,
  .sieejc-brand-strip.procesal-module-brand .sieejc-brand-text strong {
    font-size: 1.35rem !important;
  }
}
/* FIN SIEEJC Procesal v9 */

/* v11: Jurídico se maneja fuera de Procesal; no debe aparecer en el menú de este módulo. */
#navJuridico,
#nav [href="juridico.html"],
.sieejc-home-card.juridico-only {
  display: none !important;
}


/* =========================================================
   SIEEJC Procesal v12 - Usuarios procesales solo para PROCESAL_ADMIN
   Defensa contra reglas heredadas display:flex !important.
   ========================================================= */
html body:not([data-user-role="procesal_admin"]) #page-wrapper #header #nav > ul > li[data-role-menu="procesal-admin"],
html body.role-pending #page-wrapper #header #nav > ul > li[data-role-menu="procesal-admin"],
html body #page-wrapper #header #nav > ul > li[data-role-menu="procesal-admin"].sieejc-force-hidden,
html body #page-wrapper #header #nav > ul > li[data-role-menu="procesal-admin"][hidden],
html body #page-wrapper #header #nav > ul > li[data-role-menu="procesal-admin"][style*="display: none"],
html body #page-wrapper #header #nav > ul > li[data-role-menu="procesal-admin"][style*="display:none"],
html body:not([data-user-role="procesal_admin"]) .sieejc-home-card.procesal-admin-only,
html body.role-pending .sieejc-home-card.procesal-admin-only,
html body .sieejc-home-card.procesal-admin-only.sieejc-force-hidden,
html body .sieejc-home-card.procesal-admin-only[hidden] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

html body[data-user-role="procesal_admin"] #page-wrapper #header #nav > ul > li[data-role-menu="procesal-admin"]:not([hidden]):not(.sieejc-force-hidden) {
  display: inline-flex !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

html body[data-user-role="procesal_admin"] .sieejc-home-card.procesal-admin-only:not([hidden]):not(.sieejc-force-hidden) {
  display: flex !important;
  visibility: visible !important;
  pointer-events: auto !important;
}


/* v4.59 - tabla documental con iconografía institucional */
.docs-table-wrap{
  border:1px solid rgba(18,45,82,.10);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 12px 28px rgba(15,31,61,.06);
}
.docs-status-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  min-width:920px;
}
.docs-status-table thead th{
  background:#0f2e5d;
  color:#fff;
  font-weight:800;
  letter-spacing:.01em;
  padding:13px 16px;
  border:0;
}
.docs-status-table tbody td{
  padding:14px 16px;
  border-bottom:1px solid #e7edf5;
  vertical-align:middle;
  background:#fff;
}
.docs-status-table tbody tr:nth-child(even) td{ background:#fbfdff; }
.docs-status-table tbody tr:hover td{ background:#f3f8ff; }
.doc-main-cell{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:310px;
}
.doc-type-icon{
  width:42px;
  height:42px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 42px;
  background:#eef4ff;
  color:#123d73;
  border:1px solid #d5e3f5;
  box-shadow:0 8px 18px rgba(15,46,93,.08);
}
.doc-type-icon.pending{
  background:#fff4f4;
  color:#9a3f3f;
  border-color:#f0d3d3;
}
.doc-type-icon.ready{
  background:#eaf7ee;
  color:#166534;
  border-color:#b7e4c7;
}
.doc-type-icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.1;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.doc-main-text strong{
  display:block;
  color:#10294d;
  font-weight:900;
  line-height:1.3;
}
.doc-main-text small{
  display:block;
  color:#6b7c92;
  margin-top:4px;
  font-weight:700;
}
.doc-detail-text{
  color:#5c6b80;
  line-height:1.45;
  display:block;
}
.doc-action-group{
  display:flex;
  gap:8px;
  justify-content:flex-end;
  flex-wrap:wrap;
}
.doc-action-group .button{ margin:0!important; }
.doc-actions-cell{ min-width:240px; }
@media(max-width:980px){
  .doc-action-group{ justify-content:flex-start; }
  .docs-status-table{ min-width:760px; }
}


/* v4.60 - acceso directo a tabla documental desde botón Documento */
.expediente-documents-section{
  scroll-margin-top:18px;
  display:block;
}
.expediente-documents-section .doc-panel-head{
  border-color:rgba(15,46,93,.18);
}


/* v4.66 - Constancia de atención básica: modal limpia, sin checkboxes operativos */
.atencion-basica-modal .modal-body { padding-bottom: 1.25rem; }
.service-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem .9rem;
  margin: 1rem 0 1.25rem;
}
.service-summary-grid span {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: .75rem .9rem;
  border: 1px solid #bfdbfe;
  border-radius: 12px;
  background: #eff6ff;
  color: #0f2e5d;
  font-weight: 800;
}
.atencion-basica-modal textarea {
  min-height: 108px;
  resize: vertical;
}
@media (max-width: 860px) {
  .service-summary-grid { grid-template-columns: 1fr; }
}

/* =========================================================
   SIEEJC Procesal v4.78 - Normalización visual de escala
   Motivo: el tema base heredado usa 16pt en body y hacía que
   títulos, tablas, formularios y botones se vieran demasiado grandes.
   Se mantiene el menú superior compacto y se ajusta solo la escala
   operativa del contenido.
   ========================================================= */
@media screen and (min-width: 981px) {
  body,
  input,
  select,
  textarea {
    font-size: 14px !important;
  }

  #main {
    padding: 3.15rem 0 3.5rem !important;
  }

  #main > header {
    margin: 0 0 2.25rem 0 !important;
  }

  #main > header h2 {
    font-size: clamp(2.15rem, 2.65vw, 2.72rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.025em !important;
  }

  #main > header p {
    font-size: 1.03rem !important;
    margin-top: 0.9rem !important;
    padding-top: 1rem !important;
    line-height: 1.45 !important;
  }

  .sieejc-module-brand,
  #main.container > header.sieejc-module-brand {
    margin-bottom: 1.05rem !important;
  }

  #main.container > header .sieejc-brand-strip.procesal-module-brand,
  .sieejc-brand-strip.procesal-module-brand {
    min-height: 86px !important;
    gap: 16px !important;
    margin-bottom: 0.95rem !important;
  }

  #main.container > header .sieejc-brand-strip.procesal-module-brand img,
  .sieejc-brand-strip.procesal-module-brand img {
    width: 82px !important;
    max-width: 82px !important;
  }

  #main.container > header .sieejc-brand-strip.procesal-module-brand .sieejc-brand-text strong,
  .sieejc-brand-strip.procesal-module-brand .sieejc-brand-text strong {
    font-size: 1.32rem !important;
    line-height: 1.14 !important;
  }

  #main.container > header .sieejc-brand-strip.procesal-module-brand .sieejc-brand-text span,
  .sieejc-brand-strip.procesal-module-brand .sieejc-brand-text span {
    font-size: 0.92rem !important;
    line-height: 1.32 !important;
  }

  .box,
  .report-panel,
  .boxish,
  .detail-card,
  .history-card,
  .table-wrap,
  .report-table-wrap,
  .list-table-wrap {
    border-radius: 14px !important;
  }

  .box {
    padding: 1.65rem 1.9rem !important;
    margin-bottom: 1.45rem !important;
  }

  input[type="text"],
  input[type="date"],
  input[type="time"],
  input[type="password"],
  input[type="email"],
  input[type="number"],
  input[type="datetime-local"],
  select {
    height: 2.75rem !important;
    line-height: 2.75rem !important;
    padding: 0 0.9rem !important;
    font-size: 0.95rem !important;
  }

  textarea {
    font-size: 0.95rem !important;
    line-height: 1.45 !important;
    padding: 0.75rem 0.9rem !important;
  }

  label,
  .form-group label,
  .control-group label,
  .detail-label,
  .muted-text,
  .small-help,
  .mini,
  .minor-note {
    font-size: 0.9rem !important;
  }

  input[type="submit"],
  input[type="reset"],
  input[type="button"],
  button,
  .button {
    height: 2.55rem !important;
    line-height: 2.55rem !important;
    padding: 0 1.25rem !important;
    font-size: 0.92rem !important;
    border-radius: 7px !important;
  }

  .button.small,
  input[type="submit"].small,
  input[type="reset"].small,
  input[type="button"].small {
    height: 2.25rem !important;
    line-height: 2.25rem !important;
    padding: 0 0.85rem !important;
    font-size: 0.82rem !important;
  }

  table th,
  table td,
  .custodia-table th,
  .custodia-table td,
  .history-table th,
  .history-table td,
  .docs-status-table th,
  .docs-status-table td,
  .sieejc-certificados-table th,
  .sieejc-certificados-table td {
    font-size: 0.92rem !important;
    line-height: 1.38 !important;
  }

  table th,
  .custodia-table th,
  .history-table th,
  .docs-status-table th,
  .sieejc-certificados-table th {
    padding: 0.7rem 0.85rem !important;
    font-weight: 700 !important;
  }

  table td,
  .custodia-table td,
  .history-table td,
  .docs-status-table td,
  .sieejc-certificados-table td {
    padding: 0.8rem 0.85rem !important;
  }

  .custodia-wide .box {
    padding: 1.65rem 1.9rem !important;
  }

  .toolbar-grid {
    gap: 0.8rem !important;
  }

  .row-actions {
    gap: 0.42rem !important;
    min-width: 188px !important;
  }

  .row-actions .button {
    height: 2.25rem !important;
    line-height: 2.25rem !important;
    font-size: 0.82rem !important;
    padding-left: 0.55rem !important;
    padding-right: 0.55rem !important;
  }

  .status-chip {
    min-width: 92px !important;
    padding: 0.42rem 0.7rem !important;
    font-size: 0.72rem !important;
  }

  .line-icon.doc-badge {
    width: 30px !important;
    height: 22px !important;
    font-size: 0.62rem !important;
  }

  .pagination-wrap {
    margin-top: 0.95rem !important;
  }

  .pagination-pages .button {
    min-width: 92px !important;
  }
}

/* =========================================================
   SIEEJC Procesal v4.81 - Tablas centradas, filtros por fecha
   e inputs de búsqueda más discretos en pantallas operativas.
   ========================================================= */
#main.container.custodia-wide,
#main.container.historial-wide,
#main.container.iphs-wide,
body.ingreso-contingencia-page #main.container {
  margin-left: auto !important;
  margin-right: auto !important;
}

#main.container.custodia-wide > .box,
#main.container.historial-wide > .box,
body.ingreso-contingencia-page .contingencia-note,
body.ingreso-contingencia-page .contingencia-help-card,
body.ingreso-contingencia-page .contingencia-toolbar,
body.ingreso-contingencia-page .procesal-filter-bar,
body.ingreso-contingencia-page .pending-panel,
.iph-shell {
  margin-left: auto !important;
  margin-right: auto !important;
}

#main.container.custodia-wide > .box {
  width: min(1480px, 100%) !important;
  max-width: min(1480px, 100%) !important;
}

#main.container.historial-wide {
  width: min(1560px, calc(100vw - 3rem)) !important;
  max-width: min(1560px, calc(100vw - 3rem)) !important;
}

#main.container.historial-wide > .box {
  width: min(1320px, 100%) !important;
  max-width: min(1320px, 100%) !important;
}

#main.container.historial-wide > .box.historial-table-box {
  width: min(1500px, 100%) !important;
  max-width: min(1500px, 100%) !important;
}

body.ingreso-contingencia-page .contingencia-note,
body.ingreso-contingencia-page .contingencia-help-card,
body.ingreso-contingencia-page .contingencia-toolbar,
body.ingreso-contingencia-page .procesal-filter-bar {
  max-width: 1400px !important;
  width: min(1400px, calc(100vw - 3rem)) !important;
}

body.ingreso-contingencia-page .pending-panel {
  width: min(1660px, calc(100vw - 3rem)) !important;
  max-width: min(1660px, calc(100vw - 3rem)) !important;
}

/* Filtros de fecha discretos */
.procesal-date-field label {
  display: block !important;
  margin: 0 0 5px 0 !important;
  color: #64748b !important;
  font-size: .78rem !important;
  font-weight: 850 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}

.procesal-date-field input[type="date"] {
  width: 100% !important;
  height: 2.45rem !important;
  line-height: 2.45rem !important;
  margin: 0 !important;
  padding: 0 .78rem !important;
  border: 1px solid #dbe7f4 !important;
  border-radius: 10px !important;
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
  color: #334155 !important;
  font-size: .86rem !important;
  font-weight: 650 !important;
  box-shadow: 0 5px 14px rgba(15,46,93,.035) !important;
}

.procesal-date-field input[type="date"]:focus {
  border-color: #8eb3df !important;
  box-shadow: 0 0 0 3px rgba(31,61,115,.10) !important;
}

#main.container .box input[type="text"],
#main.container .box input[type="date"],
#main.container .box select,
.iph-shell input[type="text"],
.iph-shell input[type="date"],
.iph-shell select,
.contingencia-toolbar input[type="text"],
.contingencia-toolbar input[type="date"],
.contingencia-toolbar select {
  box-shadow: 0 5px 14px rgba(15,46,93,.03) !important;
}

#main.container .box input::placeholder,
.iph-shell input::placeholder,
.contingencia-toolbar input::placeholder {
  color: #94a3b8 !important;
}

/* Layouts con filtros de fecha */
.toolbar-grid.has-date-filter {
  grid-template-columns: minmax(320px,2.1fr) minmax(160px,.7fr) 136px 136px minmax(118px,.5fr) minmax(120px,.5fr) !important;
  gap: 12px !important;
}

.historial-grid.has-date-filter {
  grid-template-columns: minmax(360px,1fr) 136px 136px 122px minmax(110px,auto) !important;
  gap: 12px !important;
}

.iph-toolbar.has-date-filter {
  grid-template-columns: minmax(380px,1fr) 136px 136px 142px minmax(110px,auto) !important;
  gap: 12px !important;
}

.contingencia-grid.has-date-filter {
  grid-template-columns: minmax(420px,1fr) 136px 136px auto !important;
  gap: 12px !important;
}

.contingencia-grid.has-date-filter .contingencia-actions {
  align-self: end !important;
}

/* Tablas operativas: mejor alineación y aire interno */
.table-wrapper,
.pending-table-wrap,
.iph-table-wrap {
  width: 100% !important;
}

.historial-wide-table-main,
.custodia-table,
.pending-table,
.iph-table {
  margin-left: auto !important;
  margin-right: auto !important;
}

.historial-wide-table-main th,
.custodia-table th,
.pending-table th,
.iph-table th {
  letter-spacing: .015em !important;
}

.pending-table td,
.custodia-table td,
.historial-wide-table-main td,
.iph-table td {
  overflow-wrap: anywhere !important;
}

/* Hace más legible la columna Contenido del IPH sin agrandar la tabla. */
.iph-content-stack {
  gap: 6px !important;
}
.iph-content-row {
  gap: 6px !important;
}
.iph-content-pill {
  min-height: 24px !important;
  padding: 5px 8px !important;
  box-shadow: 0 4px 10px rgba(15,46,93,.035) !important;
}
.iph-content-sub {
  margin-top: 1px !important;
  color: #718096 !important;
}

@media screen and (max-width: 1180px) {
  .toolbar-grid.has-date-filter,
  .historial-grid.has-date-filter,
  .iph-toolbar.has-date-filter,
  .contingencia-grid.has-date-filter {
    grid-template-columns: 1fr 1fr !important;
  }
  .toolbar-grid.has-date-filter > div:first-child,
  .historial-grid.has-date-filter > div:first-child,
  .iph-toolbar.has-date-filter > div:first-child,
  .contingencia-grid.has-date-filter > div:first-child,
  .contingencia-grid.has-date-filter .contingencia-actions {
    grid-column: 1 / -1 !important;
  }
}

@media screen and (max-width: 760px) {
  .toolbar-grid.has-date-filter,
  .historial-grid.has-date-filter,
  .iph-toolbar.has-date-filter,
  .contingencia-grid.has-date-filter {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   SIEEJC Procesal v4.82 - Centrado fino ingreso contingencia
   ========================================================= */
body.ingreso-contingencia-page #main.container{
  width:100% !important;
  max-width:100% !important;
  padding-left:0 !important;
  padding-right:0 !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.ingreso-contingencia-page #main.container > header{
  width:min(1180px,calc(100vw - 3rem)) !important;
  max-width:min(1180px,calc(100vw - 3rem)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.ingreso-contingencia-page .contingencia-shell{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding-left:clamp(1.25rem,4vw,4.5rem) !important;
  padding-right:clamp(1.25rem,4vw,4.5rem) !important;
  box-sizing:border-box !important;
  justify-items:center !important;
}
body.ingreso-contingencia-page .contingencia-note,
body.ingreso-contingencia-page .contingencia-help-card,
body.ingreso-contingencia-page .contingencia-toolbar,
body.ingreso-contingencia-page .procesal-filter-bar{
  width:min(1260px,100%) !important;
  max-width:min(1260px,100%) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.ingreso-contingencia-page .pending-panel{
  width:min(1460px,100%) !important;
  max-width:min(1460px,100%) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
body.ingreso-contingencia-page .contingencia-note{
  padding:10px 14px !important;
  font-size:.76rem !important;
  line-height:1.38 !important;
}
body.ingreso-contingencia-page .contingencia-help-card div{ padding:10px 12px !important; }
body.ingreso-contingencia-page .contingencia-help-card span{ font-size:.82rem !important; }
body.ingreso-contingencia-page .contingencia-toolbar{ padding:13px 14px !important; }
body.ingreso-contingencia-page .contingencia-grid.has-date-filter{
  grid-template-columns:minmax(420px,1fr) 118px 118px auto !important;
  align-items:end !important;
}
body.ingreso-contingencia-page .procesal-date-field label{
  font-size:.7rem !important;
  letter-spacing:.045em !important;
}
body.ingreso-contingencia-page .procesal-date-field input[type="date"]{
  height:2.25rem !important;
  line-height:2.25rem !important;
  padding:0 .62rem !important;
  font-size:.78rem !important;
  border-radius:9px !important;
}
body.ingreso-contingencia-page .contingencia-actions .button{
  height:2.45rem !important;
  line-height:2.45rem !important;
  padding:0 1.05rem !important;
  min-width:132px !important;
}
body.ingreso-contingencia-page .procesal-filter-bar{
  justify-content:flex-start !important;
  margin-top:6px !important;
}
body.ingreso-contingencia-page .pending-table{ min-width:1180px !important; }
body.ingreso-contingencia-page .pending-table th:nth-child(1){width:25% !important;}
body.ingreso-contingencia-page .pending-table th:nth-child(2){width:23% !important;}
body.ingreso-contingencia-page .pending-table th:nth-child(3){width:16% !important;}
body.ingreso-contingencia-page .pending-table th:nth-child(4){width:25% !important;}
body.ingreso-contingencia-page .pending-table th:nth-child(5){width:11% !important;}
@media screen and (max-width: 1180px){
  body.ingreso-contingencia-page .contingencia-grid.has-date-filter{ grid-template-columns:1fr 1fr !important; }
  body.ingreso-contingencia-page .contingencia-grid.has-date-filter > div:first-child,
  body.ingreso-contingencia-page .contingencia-grid.has-date-filter .contingencia-actions{ grid-column:1 / -1 !important; }
}
@media screen and (max-width: 760px){
  body.ingreso-contingencia-page .contingencia-shell{ padding-left:1rem !important; padding-right:1rem !important; }
  body.ingreso-contingencia-page .contingencia-grid.has-date-filter{ grid-template-columns:1fr !important; }
}
/* SIEEJC v0.6.6 - candado visual de menús por rol.
   Colapsa completamente elementos ocultos por rol para evitar huecos en la navbar. */
#header nav > ul > li[hidden],
#header nav > ul > li[aria-hidden="true"],
#header nav > ul > li.sieejc-force-hidden,
#header nav > ul > li.admin-only-nav[hidden],
#header nav > ul > li.admin-only-nav.sieejc-force-hidden,
#nav > ul > li[hidden],
#nav > ul > li[aria-hidden="true"],
#nav > ul > li.sieejc-force-hidden,
body[data-page="inicio"] #header nav > ul > li[hidden],
body[data-page="inicio"] #header nav > ul > li[aria-hidden="true"],
body[data-page="inicio"] #header nav > ul > li.sieejc-force-hidden,
body.role-pending #nav .admin-only-nav,
body.role-pending #nav [data-role-menu],
body.role-pending #nav [data-medico-menu],
body.role-pending #nav [data-visitas-menu] {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  flex: 0 0 0 !important;
}

#header nav > ul > li.sieejc-force-visible,
#nav > ul > li.sieejc-force-visible {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: inherit !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  pointer-events: auto !important;
  flex: 0 0 auto !important;
}


/* SIEEJC v0.6.6 - refuerzo: colapsa li ocultos por style inline aunque otro CSS use display:flex !important. */
#header nav > ul > li[style*="display: none"],
#header nav > ul > li[style*="display:none"],
#nav > ul > li[style*="display: none"],
#nav > ul > li[style*="display:none"],
body[data-page="inicio"] #header nav > ul > li[style*="display: none"],
body[data-page="inicio"] #header nav > ul > li[style*="display:none"] {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  flex: 0 0 0 !important;
}


/* v0.6.31 - Administración de usuarios: columna de acciones homologada */
.sieejc-admin-user-actions,
.juridico-user-actions,
.jueces-actions,
.med-actions,
.proc-actions,
.admin-user-actions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(86px,1fr))!important;
  gap:.48rem!important;
  width:min(100%,230px)!important;
  min-width:190px!important;
  max-width:240px!important;
  margin:0 auto!important;
  align-items:stretch!important;
}
.sieejc-admin-user-actions .button,
.juridico-user-actions .button,
.jueces-actions .button,
.med-actions .button,
.proc-actions .button,
.admin-user-actions .button,
.sieejc-admin-user-actions button,
.juridico-user-actions button,
.jueces-actions button,
.med-actions button,
.proc-actions button,
.admin-user-actions button{
  width:100%!important;
  min-width:0!important;
  min-height:40px!important;
  margin:0!important;
  padding:.5rem .7rem!important;
  border-radius:10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  font-weight:850!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}
.sieejc-admin-user-actions .sieejc-action-toggle,
.juridico-user-actions .sieejc-action-toggle,
.jueces-actions .sieejc-action-toggle,
.med-actions .sieejc-action-toggle,
.proc-actions .sieejc-action-toggle,
.admin-user-actions .sieejc-action-toggle,
.sieejc-admin-user-actions .toggle,
.juridico-user-actions .toggle,
.jueces-actions .toggle,
.med-actions .toggle,
.proc-actions .toggle,
.admin-user-actions .toggle,
.proc-actions .wide{
  grid-column:1 / -1!important;
}
.sieejc-user-disable,.danger-soft{
  background:#951f23!important;
  border-color:#951f23!important;
  color:#fff!important;
}
.sieejc-user-enable,.success-soft{
  background:#176b36!important;
  border-color:#176b36!important;
  color:#fff!important;
}
@media(max-width:700px){
  .sieejc-admin-user-actions,
  .juridico-user-actions,
  .jueces-actions,
  .med-actions,
  .proc-actions,
  .admin-user-actions{
    grid-template-columns:1fr!important;
    min-width:140px!important;
  }
}


/* v0.6.32 - acciones de usuarios homologadas */
.sieejc-admin-user-actions .sieejc-action-edit,
.sieejc-admin-user-actions .sieejc-action-reset,
.juridico-user-actions .sieejc-action-edit,
.juridico-user-actions .sieejc-action-reset,
.med-actions .sieejc-action-edit,
.med-actions .sieejc-action-reset,
.proc-actions .sieejc-action-edit,
.proc-actions .sieejc-action-reset,
.admin-user-actions .sieejc-action-edit,
.admin-user-actions .sieejc-action-reset{
  background:#102f61!important;
  border-color:#102f61!important;
  color:#fff!important;
}


/* ==========================================================
   SIEEJC v0.6.34 - Línea institucional transversal de modales
   Homologa modales legacy con .modal-content y .modal-card.
   ========================================================== */
:root{
  --sieejc-modal-blue: var(--sieejc-blue, #12284C);
  --sieejc-modal-blue-2: var(--sieejc-blue-2, #0B1A35);
  --sieejc-modal-blue-3: var(--sieejc-blue-3, #1F3D73);
  --sieejc-modal-line: var(--sieejc-line, #cfd8e3);
  --sieejc-modal-line-2: var(--sieejc-line-2, #e6edf5);
  --sieejc-modal-muted: var(--sieejc-muted, #64748b);
}
.modal{
  position:fixed !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  background:rgba(15,23,42,.56) !important;
  backdrop-filter:blur(3px) !important;
  -webkit-backdrop-filter:blur(3px) !important;
  z-index:10050 !important;
  padding:22px !important;
  overflow:auto !important;
}
.modal .modal-content,
.modal-content,
.modal .modal-card,
.modal-card{
  background:#fff !important;
  color:#1f2937 !important;
  border:1px solid rgba(15,39,77,.14) !important;
  border-radius:18px !important;
  box-shadow:0 26px 72px rgba(11,26,53,.30) !important;
  overflow:hidden !important;
  font-family:"Segoe UI", Roboto, Arial, Helvetica, sans-serif !important;
}
.modal-card.medium{max-width:780px !important; width:min(100%,780px) !important; margin:2rem auto !important;}
.modal-card.wide{max-width:1180px !important; width:min(100%,1180px) !important; margin:2rem auto !important;}
.modal-card.document-preview{max-width:1200px !important; width:min(100%,1200px) !important; margin:2rem auto !important;}
.modal-content > h3:first-child,
.modal-content > h4:first-child,
.modal-head,
.modal-header{
  margin:0 !important;
  padding:20px 22px 16px !important;
  color:var(--sieejc-modal-blue) !important;
  border-bottom:1px solid var(--sieejc-modal-line-2) !important;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%) !important;
}
.modal-head,
.modal-header{
  min-height:68px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
}
.modal-content > h3:first-child,
.modal-content > h4:first-child,
.modal-head h3,
.modal-header h3,
.modal h3,
.modal h4{
  color:var(--sieejc-modal-blue) !important;
  font-weight:600 !important;
  letter-spacing:.01em !important;
}
.modal-body{
  padding:20px 22px !important;
  overflow:auto !important;
  min-height:0 !important;
  color:#334155 !important;
}
.modal-foot,
.modal-footer,
.modal-actions{
  padding:16px 22px !important;
  background:#f8fafc !important;
  border-top:1px solid var(--sieejc-modal-line-2) !important;
  display:flex !important;
  justify-content:flex-end !important;
  gap:12px !important;
  flex-wrap:wrap !important;
}
.modal label{
  color:#43546b !important;
  font-weight:700 !important;
  margin-bottom:.42rem !important;
}
.modal input[type="text"],
.modal input[type="email"],
.modal input[type="password"],
.modal input[type="number"],
.modal input[type="date"],
.modal input[type="time"],
.modal input[type="file"],
.modal select,
.modal textarea{
  background:#fff !important;
  color:#1f2937 !important;
  border:1px solid var(--sieejc-modal-line) !important;
  border-radius:12px !important;
  box-shadow:0 6px 16px rgba(15,39,77,.04) !important;
}
.modal input[type="text"],
.modal input[type="email"],
.modal input[type="password"],
.modal input[type="number"],
.modal input[type="date"],
.modal input[type="time"],
.modal select{
  min-height:48px !important;
}
.modal input:focus,
.modal select:focus,
.modal textarea:focus{
  border-color:#1f477d !important;
  box-shadow:0 0 0 4px rgba(31,71,125,.12) !important;
}
.modal input[disabled],
.modal select[disabled],
.modal textarea[disabled]{
  background:#f8fafc !important;
  color:#64748b !important;
  opacity:1 !important;
}
.modal .button,
.modal button,
.modal input[type="button"],
.modal input[type="submit"]{
  border-radius:10px !important;
  font-weight:800 !important;
  min-height:42px !important;
}
.modal .button.alt,
.modal button.alt,
.modal .button.secondary,
.modal button.secondary{
  background:#fff !important;
  color:var(--sieejc-modal-blue) !important;
  border:1px solid var(--sieejc-modal-line) !important;
  box-shadow:0 6px 14px rgba(18,40,76,.04) !important;
}
.modal .button.alt:hover,
.modal button.alt:hover,
.modal .button.secondary:hover,
.modal button.secondary:hover{
  background:#eef4fb !important;
}
.modal::-webkit-scrollbar,
.modal-body::-webkit-scrollbar,
.modal-content::-webkit-scrollbar,
.modal-card::-webkit-scrollbar{
  width:10px;
  height:10px;
}
.modal::-webkit-scrollbar-thumb,
.modal-body::-webkit-scrollbar-thumb,
.modal-content::-webkit-scrollbar-thumb,
.modal-card::-webkit-scrollbar-thumb{
  background:#aab7c8;
  border-radius:999px;
  border:2px solid #fff;
}
@media(max-width:736px){
  .modal{padding:12px !important;}
  .modal .modal-content,.modal-content,.modal .modal-card,.modal-card{border-radius:14px !important;}
  .modal-head,.modal-header,.modal-body,.modal-foot,.modal-footer,.modal-actions{padding-left:16px !important;padding-right:16px !important;}
}


/* ==========================================================
   SIEEJC v0.6.41 - Estándar visual de tablas y tarjetas
   Mejora legibilidad sin cambiar lógica ni endpoints.
   ========================================================== */
:root{
  --sieejc-ui-blue:#12284C;
  --sieejc-ui-blue-2:#0B1A35;
  --sieejc-ui-blue-3:#1F3D73;
  --sieejc-ui-line:#d8e2ef;
  --sieejc-ui-line-soft:#edf2f8;
  --sieejc-ui-bg:#f6f9fd;
  --sieejc-ui-muted:#64748b;
  --sieejc-ui-shadow:0 16px 42px rgba(15,45,95,.08);
}
.table-wrapper,
.sieejc-table-wrap,
.jueces-table-wrap,
.iph-table-wrap,
.report-detail-table,
.report-mini-table{
  border:1px solid var(--sieejc-ui-line) !important;
  border-radius:16px !important;
  overflow:auto !important;
  background:#fff !important;
  box-shadow:0 12px 30px rgba(15,45,95,.055) !important;
}
.table-wrapper table,
table.alt,
table.jueces-table,
.iph-table,
.report-detail-table table,
.report-mini-table table{
  width:100% !important;
  margin:0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:#fff !important;
  color:#334155 !important;
  font-size:.91rem !important;
}
table.alt thead,
table.jueces-table thead,
.iph-table thead,
.report-detail-table table thead,
.report-mini-table table thead{
  background:transparent !important;
}
table.alt thead tr,
table.jueces-table thead tr,
.iph-table thead tr,
.report-detail-table table thead tr,
.report-mini-table table thead tr{
  background:linear-gradient(90deg,var(--sieejc-ui-blue-2),var(--sieejc-ui-blue)) !important;
}
table.alt th,
table.jueces-table th,
.iph-table th,
.report-detail-table table th,
.report-mini-table table th{
  color:#fff !important;
  font-weight:750 !important;
  font-size:.78rem !important;
  letter-spacing:.018em !important;
  text-transform:none !important;
  padding:.78rem .88rem !important;
  border:0 !important;
  white-space:nowrap !important;
}
table.alt th:first-child,
table.jueces-table th:first-child,
.iph-table th:first-child,
.report-detail-table table th:first-child,
.report-mini-table table th:first-child{
  border-top-left-radius:14px !important;
}
table.alt th:last-child,
table.jueces-table th:last-child,
.iph-table th:last-child,
.report-detail-table table th:last-child,
.report-mini-table table th:last-child{
  border-top-right-radius:14px !important;
}
table.alt td,
table.jueces-table td,
.iph-table td,
.report-detail-table table td,
.report-mini-table table td{
  padding:.82rem .88rem !important;
  border-top:0 !important;
  border-bottom:1px solid var(--sieejc-ui-line-soft) !important;
  vertical-align:middle !important;
  color:#475569 !important;
}
table.alt tbody tr:nth-child(2n + 1),
table.jueces-table tbody tr:nth-child(2n + 1),
.iph-table tbody tr:nth-child(2n + 1){
  background:#fbfdff !important;
}
table.alt tbody tr:hover td,
table.jueces-table tbody tr:hover td,
.iph-table tbody tr:hover td,
.report-detail-table table tbody tr:hover td,
.report-mini-table table tbody tr:hover td{
  background:#f1f6fd !important;
}
table.alt tbody tr:last-child td,
table.jueces-table tbody tr:last-child td,
.iph-table tbody tr:last-child td{
  border-bottom:0 !important;
}
.table-wrapper .button.small,
.jueces-table-wrap .button.small,
.iph-table-wrap .button.small,
table .button.small,
table button.small{
  min-height:32px !important;
  height:auto !important;
  line-height:1.1 !important;
  padding:.45rem .68rem !important;
  border-radius:8px !important;
  font-size:.78rem !important;
  font-weight:800 !important;
  margin:0 !important;
}
.admin-user-actions,
.sieejc-user-actions,
.table-actions,
.jueces-actions{
  display:flex !important;
  gap:.42rem !important;
  flex-wrap:wrap !important;
  align-items:center !important;
}
.admin-user-actions{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(64px,1fr)) !important;
  gap:.42rem !important;
  min-width:150px !important;
}
.admin-user-actions .sieejc-action-toggle{
  grid-column:1 / -1 !important;
}
.admin-user-actions .button,
.sieejc-user-actions .button,
.table-actions .button,
.jueces-actions .button{
  width:100% !important;
  text-align:center !important;
}
.button.success-soft,
button.success-soft,
a.success-soft{
  background:#0f7a43 !important;
  color:#fff !important;
}
.button.success-soft:hover,
button.success-soft:hover,
a.success-soft:hover{background:#0b6336 !important;}
.button.danger-soft,
button.danger-soft,
a.danger-soft{
  background:#9f1f1f !important;
  color:#fff !important;
}
.button.danger-soft:hover,
button.danger-soft:hover,
a.danger-soft:hover{background:#7f1d1d !important;}
.badge,.tag,.status-badge,.badge-soft{
  border-radius:999px !important;
  font-weight:800 !important;
  letter-spacing:.005em !important;
}
@media(max-width:760px){
  table.alt,table.jueces-table,.iph-table{font-size:.86rem !important;}
  table.alt th,table.alt td,table.jueces-table th,table.jueces-table td,.iph-table th,.iph-table td{padding:.68rem .72rem !important;}
}

/* ==========================================================
   SIEEJC v0.6.43 - estándar transversal: iconografía de botones
   y corrección de franja superior en páginas con navbar fija.
   ========================================================== */
html, body { margin-top:0 !important; padding-top:0 !important; }
#page-wrapper:has(> #header){
  padding-top:0 !important;}
#page-wrapper:has(> #header) > #header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  margin-top:0 !important;
  transform:none !important;}
#page-wrapper:has(> #header) > #main.container{
  margin-top:3.25em !important;}
@media screen and (max-width:980px){
  #page-wrapper:has(> #header) > #main.container{ margin-top:0 !important;}
}
.sieejc-iconified{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.45rem !important;
  white-space:nowrap !important;
  vertical-align:middle !important;
}
.sieejc-iconified.fit,
.button.fit.sieejc-iconified{
  display:flex !important;
  width:100% !important;
}
.sieejc-btn-icon{
  width:1.05em !important;
  height:1.05em !important;
  min-width:1.05em !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
  opacity:.96 !important;
}
.sieejc-btn-icon svg{
  width:1.05em !important;
  height:1.05em !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2.15 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.sieejc-btn-text{
  display:inline-block !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.admin-user-actions .sieejc-iconified,
.table-actions .sieejc-iconified,
.actions .sieejc-iconified{
  gap:.34rem !important;
}
.admin-user-actions .sieejc-btn-icon,
.table-actions .sieejc-btn-icon{
  width:.95em !important;
  height:.95em !important;
  min-width:.95em !important;
}
button.sieejc-iconified:not(.jueces-bell-button):not(.sieejc-notif-bell),
a.button.sieejc-iconified{
  text-decoration:none !important;
}
#header nav .sieejc-iconified:not(.jueces-bell-button):not(.sieejc-notif-bell){
  gap:.38rem !important;
}


/* ==========================================================
   SIEEJC v0.6.44 - ajuste fino transversal de loader, acciones
   e iconografía en tablas.
   ========================================================== */
.sieejc-iconified{
  min-width:max-content !important;
}
table .button.small.sieejc-iconified,
table button.small.sieejc-iconified,
.table-wrapper .button.small.sieejc-iconified,
.jueces-table-wrap .button.small.sieejc-iconified,
.iph-table-wrap .button.small.sieejc-iconified{
  min-width:118px !important;
  width:auto !important;
  max-width:none !important;
  justify-content:center !important;
  padding-left:.72rem !important;
  padding-right:.72rem !important;
}
table .button.small.sieejc-iconified .sieejc-btn-text,
table button.small.sieejc-iconified .sieejc-btn-text,
.table-actions .sieejc-btn-text,
.jueces-actions .sieejc-btn-text,
.admin-user-actions .sieejc-btn-text,
.juridico-actions-cell .sieejc-btn-text{
  overflow:visible !important;
  text-overflow:clip !important;
  white-space:nowrap !important;
}
table td:last-child:has(.button),
table td:last-child:has(button),
.juridico-actions-cell,
.doc-actions-cell{
  min-width:176px !important;
}
.table-actions,
.jueces-actions,
.admin-user-actions,
.sieejc-admin-user-actions{
  justify-content:center !important;
}
.jueces-action-stack{
  align-items:stretch !important;
  min-width:178px !important;
}
.jueces-action-btn,
table .jueces-action-btn.sieejc-iconified{
  width:178px !important;
  min-width:178px !important;
  max-width:none !important;
  justify-content:center !important;
}
.jueces-action-btn .sieejc-btn-icon + .sieejc-btn-text{
  overflow:visible !important;
  text-overflow:clip !important;
}
@media(max-width:760px){
  table td:last-child:has(.button),
  table td:last-child:has(button),
  .juridico-actions-cell,
  .doc-actions-cell{min-width:150px !important;}
  .jueces-action-stack,.jueces-action-btn,table .jueces-action-btn.sieejc-iconified{width:100% !important;min-width:0 !important;}
}


/* ==========================================================
   SIEEJC v0.6.45 - Rescate visual de acciones con iconografía
   Evita que los SVG agranden o rompan las columnas de tablas.
   ========================================================== */
table .button.small.sieejc-iconified,
table button.small.sieejc-iconified,
.table-wrapper .button.small.sieejc-iconified,
.jueces-table-wrap .button.small.sieejc-iconified,
.iph-table-wrap .button.small.sieejc-iconified,
.admin-user-actions .button.sieejc-iconified,
.sieejc-admin-user-actions .button.sieejc-iconified,
.juridico-user-actions .button.sieejc-iconified,
.jueces-actions .button.sieejc-iconified{
  min-width:0 !important;
  max-width:100% !important;
  gap:.36rem !important;
  padding-left:.56rem !important;
  padding-right:.56rem !important;
}
.admin-user-actions .sieejc-btn-icon,
.sieejc-admin-user-actions .sieejc-btn-icon,
.juridico-user-actions .sieejc-btn-icon,
.jueces-actions .sieejc-btn-icon,
table .button.small.sieejc-iconified .sieejc-btn-icon{
  width:.92em !important;
  height:.92em !important;
  min-width:.92em !important;
  flex:0 0 .92em !important;
}
.admin-user-actions .sieejc-btn-text,
.sieejc-admin-user-actions .sieejc-btn-text,
.juridico-user-actions .sieejc-btn-text,
.jueces-actions .sieejc-btn-text,
table .button.small.sieejc-iconified .sieejc-btn-text{
  overflow:visible !important;
  text-overflow:clip !important;
  white-space:nowrap !important;
}

/* ==========================================================
   SIEEJC v0.6.47 - afinación transversal de tablas y acciones
   Corrige desbordes, scroll horizontal innecesario y botones
   comprimidos después de la iconografía institucional.
   ========================================================== */
.table-wrapper,
.table-wrap,
.report-table-wrap,
.list-table-wrap,
.jueces-table-wrap,
.iph-table-wrap,
.visitas-users-table-wrap,
.juridico-resolutions-table-wrap{
  max-width:100% !important;
  box-sizing:border-box !important;
}
.table-wrapper table,
.table-wrap table,
.report-table-wrap table,
.list-table-wrap table,
.jueces-table-wrap table,
.iph-table-wrap table{
  box-sizing:border-box !important;
}
.table-wrapper td,
.table-wrapper th,
.table-wrap td,
.table-wrap th,
.report-table-wrap td,
.report-table-wrap th,
.list-table-wrap td,
.list-table-wrap th,
.jueces-table-wrap td,
.jueces-table-wrap th,
.iph-table-wrap td,
.iph-table-wrap th{
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
table td:last-child .button.small.sieejc-iconified,
table td:last-child button.small.sieejc-iconified,
.table-actions .button.small.sieejc-iconified,
.jueces-actions .button.small.sieejc-iconified,
.admin-user-actions .button.small.sieejc-iconified,
.sieejc-admin-user-actions .button.small.sieejc-iconified,
.juridico-action-cell .button.small.sieejc-iconified{
  min-width:0 !important;
  max-width:100% !important;
  white-space:nowrap !important;
}
table td:last-child .sieejc-btn-text,
.table-actions .sieejc-btn-text,
.jueces-actions .sieejc-btn-text,
.admin-user-actions .sieejc-btn-text,
.sieejc-admin-user-actions .sieejc-btn-text,
.juridico-action-cell .sieejc-btn-text{
  overflow:visible !important;
  text-overflow:clip !important;
  white-space:nowrap !important;
}
.sieejc-action-grid-2,
.admin-user-actions,
.sieejc-admin-user-actions{
  align-items:stretch !important;
}
@media(max-width:980px){
  .table-wrapper,
  .table-wrap,
  .report-table-wrap,
  .list-table-wrap,
  .jueces-table-wrap,
  .iph-table-wrap{
    overflow-x:auto !important;
  }
}

/* ==========================================================
   SIEEJC v0.6.56 - Navbar Procesal homologada a IPH Operativo
   ========================================================== */
@media screen and (min-width: 981px){
  body:not(.sieejc-login-page) #page-wrapper > #header,
  body:not(.sieejc-login-page) #header{
    height:3.25em !important;
    min-height:3.25em !important;
    line-height:3.25em !important;
    background:#12284c !important;
  background-color:#12284c !important;
  background-image:none !important;
    box-shadow:0 9px 26px rgba(18,40,76,.24) !important;
  }
  body:not(.sieejc-login-page) #header h1,
  body:not(.sieejc-login-page) #header h1 a{
    height:inherit !important;
    line-height:inherit !important;
  }
  body:not(.sieejc-login-page) #header nav{
    height:inherit !important;
    line-height:inherit !important;
    right:1.25rem !important;
  }
  body:not(.sieejc-login-page) #header nav > ul{
    height:inherit !important;
    line-height:inherit !important;
    gap:.45rem !important;
  }
  body:not(.sieejc-login-page) #header nav > ul > li{
    height:inherit !important;
    line-height:inherit !important;
    align-items:center !important;
  }
  body:not(.sieejc-login-page) #header nav > ul > li a,
  body:not(.sieejc-login-page) #header nav > ul > li a:not(.button){
    height:2.45rem !important;
    min-height:2.45rem !important;
    line-height:2.45rem !important;
    padding:0 .95rem !important;
    font-size:.98rem !important;
  }
  body:not(.sieejc-login-page) #header .sieejc-notif-bell-button,
  body:not(.sieejc-login-page) #header button.sieejc-notif-bell-button.jueces-bell-button{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
  }
  body:not(.sieejc-login-page) #page-wrapper:has(> #header) > #main.container{
    margin-top:3.25em !important;}
}

/* v0.6.56 - Detalle de notificación más legible */
.sieejc-notif-detail > p{font-size:1.02rem;line-height:1.45;color:#344054;margin:.1rem 0 1rem;}
.sieejc-notif-preview-grid article span{letter-spacing:.025em;}

/* ==========================================================
   SIEEJC v0.6.58 - filas documentales lisas
   Evita el efecto escalonado/Z en Documentos del expediente.
   La celda vuelve a comportarse como table-cell y el acomodo
   flexible se hace dentro de un contenedor interno.
   ========================================================== */
table.docs-status-table{
  border-collapse: separate !important;
  border-spacing: 0 !important;
}
.docs-status-table tbody tr{
  position: relative;
}
.docs-status-table tbody tr > td{
  display: table-cell !important;
  border-bottom: 1px solid #e7edf5 !important;
  vertical-align: middle !important;
  background-clip: padding-box !important;
}
.docs-status-table tbody tr:last-child > td{
  border-bottom: 0 !important;
}
.docs-status-table td.doc-main-cell{
  display: table-cell !important;
  min-width: 310px;
}
.doc-main-inner{
  display: flex;
  align-items: center;
  gap: 13px;
  width: 100%;
}
.docs-status-table tbody tr:nth-child(even) > td{
  background:#fbfdff !important;
}
.docs-status-table tbody tr:hover > td{
  background:#f3f8ff !important;
}
.docs-status-table tbody tr > td:first-child{
  border-left: 0 !important;
}
.docs-status-table tbody tr > td:last-child{
  border-right: 0 !important;
}



/* SIEEJC v0.6.72 · tablas lisas, acciones estables y loaders inline de notificaciones */
:where(.sieejc-table-wrap,.table-wrap,.table-wrapper,.table-responsive,.jueces-table-wrap,.jueces-history-table-wrap,.iph-table-wrap,.compact-table-wrap,.admin-table-wrap){overflow-x:auto; overflow-y:visible;}
:where(.sieejc-table-wrap,.table-wrap,.table-wrapper,.table-responsive,.jueces-table-wrap,.jueces-history-table-wrap,.iph-table-wrap,.compact-table-wrap,.admin-table-wrap) table,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table){
  width:100%;
  border-collapse:separate!important;
  border-spacing:0!important;
  background:#fff;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) > thead > tr,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) > tbody > tr{
  display:table-row!important;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) > thead > tr > th,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) > tbody > tr > td{
  display:table-cell!important;
  vertical-align:middle!important;
  background-clip:padding-box!important;
  border-bottom:1px solid #e8eef7!important;
  box-shadow:none!important;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) > tbody > tr:hover > td{
  background:#f6faff!important;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) > tbody > tr:nth-child(even):hover > td{
  background:#f4f8fd!important;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td .cell-flex,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td .cell-stack,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td .doc-cell,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td .jueces-doc-cell{
  display:flex!important;
  align-items:center!important;
  gap:.72rem!important;
  min-width:0!important;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td .table-actions,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td .jueces-action-stack,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td .actions-stack,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td .action-stack{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:.48rem!important;
  min-width:138px!important;
  max-width:100%!important;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td:last-child{
  min-width:145px!important;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td:last-child .button,
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td:last-child button:not(.jueces-notif-close):not(.modal-close):not(.close):not([aria-label="Cerrar"]){
  min-width:124px!important;
  width:100%!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.42rem!important;
  line-height:1.15!important;
  padding:.55rem .72rem!important;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td:last-child .sieejc-btn-icon{
  flex:0 0 auto!important;
  width:1em!important;
  height:1em!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
:where(table.jueces-table, table.jueces-history-table, table.compact-table, table.iph-table, table.sieejc-table, table.data-table, .table-wrapper table, .table-wrap table, .table-responsive table, .admin-table-wrap table) td:last-child .sieejc-btn-text{
  display:inline!important;
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
}
.sieejc-notif-inline-loading{
  min-height:148px;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  padding:1.3rem 1rem;
  color:#0f2d5f;
  text-align:center;
}
.sieejc-notif-inline-emblem{
  width:42px;height:42px;border-radius:999px;position:relative;display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #d8e6f7;box-shadow:0 8px 18px rgba(15,45,95,.10);
}
.sieejc-notif-inline-emblem::before{content:"";position:absolute;inset:5px;border-radius:999px;border:2px solid rgba(15,45,95,.22);border-top-color:#0f2d5f;animation:sieejcNotifSpin .85s linear infinite;}
.sieejc-notif-inline-emblem::after{content:"✦";font-size:.82rem;color:#0f2d5f;line-height:1;}
.sieejc-notif-inline-loading strong{font-size:.98rem;font-weight:900;color:#0f2d5f;}
.sieejc-notif-inline-loading small{font-size:.82rem;color:#667792;}
@keyframes sieejcNotifSpin{to{transform:rotate(360deg)}}

/* SIEEJC Procesal · documentos no disponibles por estado operativo */
.procesal-doc-unavailable {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 34px !important;
  padding: .45rem .7rem !important;
  border: 1px dashed #cbd5e1 !important;
  border-radius: 10px !important;
  background: #f8fafc !important;
  color: #64748b !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  text-align: center !important;
  line-height: 1.25 !important;
}

/* SIEEJC Procesal · evita botones cortados en header de vista previa */
.procesal-module-page .sieejc-modal-card .sieejc-modal-head,
.procesal-module-page .modal-card .modal-head,
.procesal-module-page .modal-card header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: .75rem !important;
}

.procesal-module-page .sieejc-modal-card .sieejc-modal-head h3,
.procesal-module-page .modal-card .modal-head h3,
.procesal-module-page .modal-card header h3 {
  min-width: 0 !important;
  flex: 1 1 auto !important;
  overflow-wrap: anywhere !important;
}

.procesal-module-page .sieejc-modal-card .sieejc-modal-head .button,
.procesal-module-page .modal-card .modal-head .button,
.procesal-module-page .modal-card header .button {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

