/* normalize.css v11 | https://github.com/csstools/normalize.css/ */html {line-height: 1.15;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;}h1 {font-size: 2em;margin: 0.67em 0;}dl dl,dl ol,dl ul,ol dl,ul dl {margin: 0;}ol ol,ol ul,ul ol,ul ul {margin: 0;}hr {box-sizing: content-box;color: inherit;height: 0;overflow: visible;}main {display: block;}pre {font-family: monospace, monospace;font-size: 1em;}a {background-color: transparent;}abbr[title] {text-decoration: underline;text-decoration: underline dotted;}b,strong {font-weight: bolder;}code,kbd,samp {font-family: monospace, monospace;font-size: 1em;}small {font-size: 80%;}audio,video {display: inline-block;}audio:not([controls]) {display: none;height: 0;}img {border-style: none;}svg:not(:root) {overflow: hidden;}table {border-color: inherit;text-indent: 0;}button,input,select {margin: 0;}button {overflow: visible;text-transform: none;}button,[type="button"],[type="reset"],[type="submit"] {-webkit-appearance: button;appearance: button;}fieldset {padding: 0.35em 0.75em 0.625em;}input {overflow: visible;}legend {box-sizing: border-box;color: inherit;display: table;max-width: 100%;white-space: normal;}progress {display: inline-block;vertical-align: baseline;}select {text-transform: none;}textarea {margin: 0;overflow: auto;}[type="checkbox"],[type="radio"] {box-sizing: border-box;padding: 0;}[type="search"] {-webkit-appearance: textfield;appearance: textfield;outline-offset: -2px;}::-webkit-inner-spin-button,::-webkit-outer-spin-button {height: auto;}::-webkit-input-placeholder {color: inherit;opacity: 0.54;}::-webkit-search-decoration {-webkit-appearance: none;appearance: none;}::-webkit-file-upload-button {-webkit-appearance: button;appearance: button;font: inherit;}::-moz-focus-inner {border-style: none;padding: 0;}:-moz-focusring {outline: 1px dotted ButtonText;}:-moz-ui-invalid {box-shadow: none;}details {display: block;}dialog {background-color: white;border: solid;color: black;display: block;height: -moz-fit-content;height: -webkit-fit-content;height: fit-content;left: 0;margin: auto;padding: 1em;position: absolute;right: 0;width: -moz-fit-content;width: -webkit-fit-content;width: fit-content;}dialog:not([open]) {display: none;}summary {display: list-item;}canvas {display: inline-block;}template {display: none;}[hidden] {display: none;}
*, *:after, *:before { box-sizing: border-box; }
*:focus-visible { outline: 2px solid #f7931e; }
html, body { background: #fff; margin: 0; padding: 0; color: #333; font-family: "Montserrat", "Segoe UI", Arial, sans-serif; font-size: 16px; font-weight: 400; line-height: 1.5em; }
body { display: flex; flex-flow: column; }

h1, h2, h3, h4 { margin: 0 0 0.6em; font-weight: normal; line-height: 1.4em; }
p + h2, p + h3, p + h4 { margin: 1em 0 0.6em; }
	p img { max-width: 100%; height: auto !important; }
h1 { font-size: 2.8rem; font-weight: 900; }
h2 { font-size: 1.6rem; }
h3 { font-size: 1.3rem; }
h4 { font-size: 1.1rem; }

/* Fix for Kendo Chart Titles */
text {
	fill: #000000;
	fill-opacity: 1;
}

p { margin: 0 0 1em; }
p:last-child { margin: 0; }
b, strong { font-weight: 800; }
a, button { background: none; padding: 0; border: 0; color: #B12C1A; text-decoration: none; cursor: pointer; transition: all 0.25s ease 0s; }
	a:hover, button:hover { color: #187bab; text-decoration: none; outline: none; }
	a:focus, button:focus { outline: 1px dotted #ddd; }
hr { background: #ccc; display: inline-block; width: 100%; height: 1px; margin: 10px 0; border: 0; }

/* Header */
#header { display: flex; flex-flow: row wrap; align-items: center; gap: 1em; padding: 1em 1.2em; border-bottom: 1px solid #d6d6d6; background: #fff; }
	#header #logo { display: inline-flex; width: 100%; max-width: 560px; min-width: 200px; margin-right: auto; }
		#header #logo img { max-width: 100%; }

/* Navigation */

#navigation { display: flex; flex-flow: row wrap; align-items: center; gap: 0.4em; margin: 0; padding: 0; list-style: none; }

	#navigation a { flex: 1 1 auto; display: inline-flex; padding: 0.6em 0.8em; color: #333; font-size: clamp(1rem, 0.574rem + 0.5vw, 1rem); transition: all 0.25s ease 0s; }
	#navigation-container > #navigation > li > a { border: 2px solid #f7f7f7; border-radius: 1px; background: transparent; }
	#navigation-container > #navigation > li.has-children > a { cursor: default; }
	#navigation-container > #navigation > li > a#back-to-site { border: 2px solid #f7f7f7; background: #F7F7F7; color: #B12C1A; font-size: clamp(0.9rem, 0.583rem + 0.33vw, 0.875rem); font-weight: bold; }
		#navigation-container > #navigation > li:hover > a:not(#back-to-site), #navigation-container > #navigation > li:focus-visible > a:not(#back-to-site) { border: 2px solid #f7931e; }
		#navigation-container > #navigation > li > a#back-to-site:hover { border: 2px solid #B12C1A; background: #B12C1A; color: #fff; }

		#navigation ul { position: absolute; left: 0; top: 100%; visibility: hidden; opacity: 0; width: 14rem; margin: 0; padding: 0.2em 0.8em 1em; border: 2px solid rgba(0,0,0,0.1); background: #f7f7f7; list-style: none; transition: all 0.25s ease 0s; }
			#navigation ul a { width: 100%; padding: 0.6em 0; font-size: 0.85em; border-bottom: 2px solid rgba(0,0,0,0.1); }
				#navigation ul a:hover, #navigation ul a:focus { border-bottom: 2px solid #f7931e; }

			#navigation ul > li > ul { left: 100%; top: 0; }
				#navigation li { position: relative; }
					#navigation li:hover > ul, #navigation li:focus-within > ul { display: block; visibility: visible; opacity: 1; transition-delay: 0s; }

/* --- Main --- */

#main { flex: 1 1 auto; display: flex; flex-flow: row wrap; min-height: 0; }

/* --- Landing --- */

#page-title { width: 100%; background: url(https://www.rld.nm.gov/wp-content/uploads/2022/06/NMRLD-WebBanner-Cannabis.png) no-repeat center top; background-size: cover; }
	#landing-intro { width: 94%; max-width: 1400px; margin-right: auto; margin-left: auto; padding: 3em 0 4em; font-size: 1.3em; line-height: 1.5em; color: #fff; }
		#landing-intro h1::first-line { font-size: 0.8em; font-weight: 400; }

#info { width: 100%; padding: 3em 0; background: #f7f7f7; font-size: 1.2em; line-height: 1.6em; }
	#info .icon-blocks { display: flex; flex-flow: row wrap; gap: 1em; }
		#info .icon-blocks .icon-block { flex: 1 1 30%; display: flex; align-items: center; justify-content: center; flex-flow: column; gap: 0.8em; padding: 1em; border-radius: 5px; background: #B12C1A; color: #fff; font-weight: bold; line-height: 1.3em; text-align: center; transition: all 0.25s ease 0s; }
			#info .icon-blocks .icon-block:hover { background: #e56a1e; }
				#info .icon-blocks .icon-block img { width: 90%; max-width: 60px; }

#data-highlights { width: 100%; }
	#data-highlights #statistics { background: none; padding: 4vw; }
		#data-highlights #statistics .statistic-block { width: 18%; padding: 1.4em 1.8em; background: #b12c1a; }
		#data-highlights #statistics .statistic-block:nth-child(2) { background: #e56a1e; }
		#data-highlights #statistics .statistic-block:nth-child(3) { background: #f7931e; }
		#data-highlights #statistics .statistic-block:nth-child(4) { background: #fdb130; }
		#data-highlights #statistics .statistic-block:nth-child(5) { background: #fdb130; }
			#data-highlights #statistics .statistic-block .stat { font-size: 1.3em; }

/* Layout */
.general-container { width: 94%; max-width: 1400px; margin-right: auto; margin-left: auto; }
.general-container.thin { max-width: 1200px; }
.vert-spacing { padding: 2em 0; }
main .push-up { margin-top: 3vw; }
main .push-down { margin-bottom: 3vw; }

.columns-2 { display: flex; flex-flow: row wrap; gap: 4%; }
.columns-2.no-gap { gap: 0; }
	.columns-2 > * { flex: 1 1 auto; width: 46%; min-width: 300px; }

/* Blurb */
.blurb { display: flex; flex-flow: column; justify-content: center; padding: 4vw; background: #f7f7f7; }
.blurb.red { background: #b12c1a; color: #fff; }
	.blurb strong { color: #e56a1e; }
#locations-container .blurb { padding: 1.4em; }
	#locations-container .blurb h2 { font-size: 1.3em; }

/* Mapping */
#statistics { display: flex; flex-flow: row wrap; align-content: flex-start; gap: 1.4em 1.8vw; padding: 2vw; background: #b12c1a; overflow: auto; color: #fff; }
	#statistics .statistic-main-title { flex: 1 1 auto; width: 100%; padding: 1em 1.4em; border-radius: 5px; background: rgba(255,255,255,0.1); font-size: 1em; font-weight: 400; letter-spacing: 0.2em; text-transform: uppercase; }
	#statistics .statistic-block { flex: 1 1 auto; width: 23%; min-width: 240px; border-radius: 5px; }
		#statistics .statistic-block .statistic-title { display: inline-block; width: 100%; margin-bottom: 0.6em; padding-bottom: 0.6em; border-bottom: 1px solid rgba(255,255,255,0.2); font-size: clamp(0.875rem, 0.784rem + 0.45vw, 1.125rem); }
		#statistics .statistic-block .stat { display: inline-block; width: 100%; font-size: clamp(1rem, 0.818rem + 0.91vw, 1.5rem); font-weight: 900; line-height: 1em; }
		#statistics .statistic-block .stat-big { display: inline-block; width: 100%; font-size: clamp(3rem, 0.818rem + 0.91vw, 4.5rem); font-weight: 900; line-height: 1em; }
		#statistics button { display: inline-block; width: 100%; margin-top: auto; padding: 1em 1.4em; border-radius: 4px; background: #f9a11b; color: #fff; text-transform: uppercase; }
		#statistics #updates { display: inline-block; width: calc(100% + 2.8em); margin: 0 -1.4em -1.4em; padding: 1.4em; border-top: 1px solid #000; background: #54585a; }
			#statistics #updates a { color: #f9a11b; text-decoration: underline; }

#map-filter { display: flex; flex-flow: row wrap; gap: 1.4em; width: 100%; padding: 1em; }
	#map-filter > input, #map-filter > select { padding: 0.8em; border: 0; border-radius: 2px; background: #fff; }
	#map-filter input[type="search"] { display: flex; flex-flow: row; border: 0; height: 38px; padding: 9px 4px 9px 40px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' class='bi bi-search' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'%3E%3C/path%3E%3C/svg%3E") no-repeat 13px center; }

#locations-container { flex: 1 1 auto; width: 35%; min-width: 300px; height: 100%; overflow: auto; background: #383d3f; }
	#locations-container > h2 { margin: 0; padding: 1em 1em 0; color: #fff; font-size: 1.2em; font-weight: bold; text-transform: uppercase; letter-spacing: 2px; }

#map-container { flex: 1 1 auto; display: flex; min-width: 320px; min-height: 400px; background: #fff; }
	#map-container #map { flex: 1 1 auto; background: #efefef; }
		#map-container #map .leaflet-container { height: 100% !important; min-height: 60vh; }
	#map-container #charts { width: 28%; max-width: 300px; height: 100%; border-left: 1px solid #54585a; overflow: auto; }

/* Leaflet Map */
.leaflet-popup-content-wrapper { border-radius: 0% !important; overflow: auto; max-height: 350px; }

.popup-title { color: #993333; font-size:larger; }
.popup-totals { text-transform: uppercase; width: 100%; }
.popup-totals-amount { font-weight: bold; }

	.item { padding: 15px !important; border-bottom: 1px solid #ccc !important; cursor: pointer; }
	.item:hover { background-color: #ccc; }
		.item h3 { color: #993333; font-size: 1em; font-weight: bold; }

.last-updated { font-size: smaller; }

/* Charts */
.k-chart { margin: 2.4em auto 0; }
.graph-info { display: flex; flex-flow: row; justify-content: center; gap: 0.4em; max-width: 90%; margin: 0 auto; font-size: 0.75em; font-style: italic; text-align: center; }
	.graph-info .info-icon { width: 20px; height: auto; fill: #e56a1e; }
	.graph-info .info-icon.large { width: 24px; }
	
/* Grid */
.k-grid-header th.k-header .k-link { cursor: pointer; }

/* Static Table */
.static-table { width: 800px; max-width: 92%; margin: 0 auto; border-collapse: collapse; border-radius: 10px; text-align: left; }
	.static-table tr { display: flex; justify-content: space-between; margin: 0.4em 0; border: 2px solid rgba(0,0,0,0.1); border-radius: 5px; }
	.static-table tr:first-child { background: #E56A1E; color: #fff; }
		.static-table th, .static-table td { padding: 0.8em; font-size: 1.2em; }
		.static-table td { text-align: right; }

/* RealFile Tables */
.rf-table table { width: 100%; border-collapse: collapse; }
	.rf-table .back a { display: inline-block; margin: 10px 0; padding: 6px 10px; border-radius: 3px; background: rgba(0,0,0,0.8); color: #fff; font-size: 0.8em; font-weight: bold; text-decoration: none; text-transform: uppercase; }
	.rf-search-container { padding: 20px; background: #F2F2F2; }
		.rf-search-container label { margin-right: 6px; }
		.rf-search-container .rf-search-box { margin: 0 0 0 8px; padding: 4px 6px; border: 1px solid rgba(0,0,0,0.2); border-radius: 3px; font-size: 16px; }
	.rf-table tr th { padding: 0.8em 1em; border: 1px solid rgba(0,0,0,0.1); background: #B12C1A; color: #fff; text-align: left; }
	.rf-table tr td { padding: 0.8em 1em; border: 1px solid rgba(0,0,0,0.1); }
		.rf-table tr td a { display: inline-block; padding: 2px 8px; border-radius: 3px; background: #E56A1E; color: #fff !important; font-size: 0.9em; font-weight: bold; white-space: nowrap; transition: all 0.3s ease 0s; }
			.rf-table tr td a:hover { background: #F7931E; color: #fff !important; text-decoration: none; }
	.rf-table .breadcrumbs { padding: 10px 0; border-top: 1px solid rgba(0,0,0,0.2); }
		.rf-table .breadcrumbs a { padding: 0 10px; color: rgba(0,0,0,0.7); font-size: 0.9em; font-style: italic; }
		.rf-table .breadcrumbs a:first-child { padding-left: 0; }

/* Data Catalog Table */
.rf-table table { width: 100%; }
#dataCatalogLink { width: 100%; text-align: center; margin: 1em; font-weight: bold; font-size: 1.4em; }

/* Footer */
#footer { display: flex; flex-flow: row wrap; align-items: center; gap: 1em; padding: 1.4em; background: #f7f7f7; font-size: smaller; margin-top: 20px; }
#footer.disclaimer { background: #B12C1A; color: #fff; }

/* > 980 */

@media only screen and (min-width: 980px) {

	body.cap { height: 100vh; overflow: hidden; }

	body #main.full-height { min-height: 80vh; }

	a[href^="tel:"], a[href^="tel:"]:hover { color: inherit; cursor: pointer; text-decoration: none; font-weight: inherit; cursor: default; }

	/* --- Header --- */

	#navigation-container > #navigation > li > a { border: 2px solid #fff; }

	/* Main */

	/* --- Dispensaries --- */

	#locations-container { max-width: 460px; height: 80vh; border-bottom: 1px solid #EAE8E8; }
	#map-container { height: 80vh; }

}

/* 980 */

@media only screen and (max-width: 980px) {

	html, body { font-size: 14px; }

	h1 { font-size: 2rem; }

	/* Main */

	/* --- Landing --- */

	#main.landing { background: none; }

		#landing-intro { width: 100%; padding: 2em; font-size: 1.2em; }

		#landing-map-preview { position: relative; width: 100%; max-height: 60vh; }
			#landing-map-preview img { width: 100%; }

		#data-highlights #statistics { background: none; padding: 4vw; }

	/* --- Dispensaries --- */

	#locations-container, #map-container { width: 100vw; }

	/* Layout */
	.general-container { width: 94%; max-width: 1400px; margin-right: auto; margin-left: auto; }

	.columns-2 { gap: 1.4em; }
		.columns-2 > * { width: 100%; }
	
	/* Blurb */
	.blurb { padding: 2em; }

	/* Mapping */
	#statistics { flex-flow: row wrap; width: 100%; height: auto; padding: 2em; }
		#statistics .statistic-block { flex: 1 1 auto; }
			#statistics .statistic-block .stat { min-width: 40%; }
		#statistics #updates { background: #000; }

	#map-container #charts { width: 100%; height: auto; }

}

/* 600 */

@media only screen and (max-width: 600px) {

	html, body { font-size: 12px; }

	/* Header */
	#navigation-container { gap: 0.4em }
		#navigation-container a { padding: 0.4em 0.6em; }

}