@charset "UTF-8";
/* -------------------------------
    Global spacing variables
--------------------------------- */
/*
*  Global colour variables
*
*  1 - Greyscale colours
*  2 - System colours
*  3 - Accent colours
*    3.1 - Main
*    3.2 - Light
*    3.3 - Dark
*    3.4 - Callout backgrounds
*/
/*** 1 - Greyscale colours ***/
/*** 2 - System colours ***/
/*** 3 - Accent colours ***/
/* Main */
/* Light */
/* Dark */
/* callout backgrounds */
/* icon colours */
/* service ontario header colours */
/* -------------------------------
    Global font-weight variables
--------------------------------- */
/* -------------------------------
    Global font-size variables
--------------------------------- */
/* -------------------------------
    Global font variables
--------------------------------- */
/*** 1 - Breakpoint sizes for media queries ***/
/* -------------------------------
    Global letter-spacing variables
--------------------------------- */
/* Rem calc function */
/* Pixel to REM Conversion */
/* -------------------------------
    Global line-height variables
--------------------------------- */
/* -------------------------------
    Global typography variables
--------------------------------- */
h6,
.ontario-h6,
h5,
.ontario-h5,
h4,
.ontario-h4,
h3,
.ontario-h3,
h2,
.ontario-h2,
h1 > .ontario-label--heading,
.ontario-fieldset__legend--large h1,
.ontario-fieldset__legend--heading h1,
h1,
.ontario-h1 {
	font-style: normal;
	font-weight: 700;
	text-rendering: optimizeLegibility;
	margin-bottom: 1rem;
	font-feature-settings: normal;
	font-family: 'Raleway Modified', 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

h1 > .ontario-label--heading,
.ontario-fieldset__legend--large h1,
.ontario-fieldset__legend--heading h1,
h1,
.ontario-h1 {
	font-size: 2rem;
	letter-spacing: 0.04rem;
	line-height: 1.29;
	margin: 2.5rem 0 1.5rem 0;
	max-width: 70rem;
}
@media screen and (min-width: 40em) {
	h1 > .ontario-label--heading,
	.ontario-fieldset__legend--large h1,
	.ontario-fieldset__legend--heading h1,
	h1,
	.ontario-h1 {
		font-size: 2.5rem;
		letter-spacing: 0.04rem;
		line-height: 1.2;
	}
}

h2,
.ontario-h2 {
	font-size: 1.6875rem;
	letter-spacing: 0.03rem;
	line-height: 1.37;
	margin: 0 0 0.75rem 0;
	max-width: 48rem;
}
@media screen and (min-width: 40em) {
	h2,
	.ontario-h2 {
		font-size: 2.0625rem;
		letter-spacing: 0.02rem;
		line-height: 1.33;
	}
}

h3,
.ontario-h3 {
	font-size: 1.4375rem;
	letter-spacing: 0.02rem;
	line-height: 1.39;
	margin: 0 0 0.75rem 0;
	max-width: 48rem;
}
@media screen and (min-width: 40em) {
	h3,
	.ontario-h3 {
		font-size: 1.75rem;
		letter-spacing: 0.02rem;
		line-height: 1.43;
	}
}

h4,
.ontario-h4 {
	font-size: 1.25rem;
	letter-spacing: 0.03rem;
	line-height: 1.5;
	margin: 0 0 0.75rem 0;
	max-width: 48rem;
}
@media screen and (min-width: 40em) {
	h4,
	.ontario-h4 {
		font-size: 1.5rem;
		letter-spacing: 0.0313rem;
		line-height: 1.5;
	}
}

h5,
.ontario-h5 {
	font-size: 1.125rem;
	letter-spacing: 0.03rem;
	line-height: 1.56;
	margin: 0 0 0.75rem 0;
	max-width: 48rem;
}
@media screen and (min-width: 40em) {
	h5,
	.ontario-h5 {
		font-size: 1.1875rem;
		letter-spacing: 0.025rem;
		line-height: 1.5;
	}
}

h6,
.ontario-h6 {
	font-size: 1rem;
	line-height: 1.56;
	letter-spacing: 0.03rem;
	max-width: 48rem;
	margin: 0 0 0.75rem 0;
}
@media screen and (min-width: 40em) {
	h6,
	.ontario-h6 {
		font-size: 1rem;
		letter-spacing: 0.025rem;
		line-height: 1.5;
	}
}

.ontario-lead-statement {
	font-size: 1.25rem;
	line-height: 1.6;
	max-width: 70rem;
}
@media screen and (min-width: 40em) {
	.ontario-lead-statement {
		font-size: 1.375rem;
	}
}

/*
*  Global variables
*
*  Used across multiple components
*/
/*
*  Global elements
*
*  1 - Unclassed elements
*    1.1 - Base
*    1.2 - Typography
*    1.3 - Forms
*    1.4 - Horizontal Rule
*    1.5 - Lists
*/
/*** 1 - Unclassed Elements ***/
/* Base */
html {
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 1rem;
}

body {
	font-size: 1rem;
	line-height: 1.6;
	background-color: #ffffff;
	color: rgb(25.5, 25.5, 25.5);
	margin: 0;
}

/* Typography */
p {
	font-size: inherit;
	margin-bottom: 1.25rem;
	text-rendering: optimizeLegibility;
	margin: 0 0 1.5rem 0;
}

cite {
	font-style: italic;
	line-height: inherit;
}

strong {
	font-weight: 700;
	line-height: inherit;
}

/* everything - including before and after - should inherit their box sizing */
*,
*::before,
*::after {
	box-sizing: inherit;
}

main p,
main p:not(.ontario-lead-statement),
main dd,
main li {
	max-width: 48rem;
}

hr {
	border: 0;
	padding: 0;
	margin: 2.5rem 0;
	border-bottom: 4px solid #cccccc;
}

/* Horizontal Rule */
hr.ontario-hr--dark {
	border-bottom: 4px solid rgb(25.5, 25.5, 25.5);
}

a {
	color: #0066cc;
	text-decoration: underline;
}
a:visited {
	color: #551a8b;
}
a:hover {
	color: #00478f;
}
a:active {
	color: #002142;
}
a:focus {
	-moz-box-shadow: 0 0 0 4px #009adb;
	-webkit-box-shadow: 0 0 0 4px #009adb;
	box-shadow: 0 0 0 4px #009adb;
	outline: 4px solid transparent;
	transition: all 0.1s ease-in-out;
}

​p {
	margin: 0 0 1.5rem 0;
}

​p + h1,
p + h2,
p + h3,
p + h4,
p + h5,
p + h6,
ul + h1,
ul + h2,
ul + h3,
ul + h4,
ul + h5,
ul + h6,
ol + h1,
ol + h2,
ol + h3,
ol + h4,
ol + h5,
ol + h6,
h1 + h2,
h2 + h3,
h3 + h4,
h4 + h5,
h5 + h6 {
	margin-top: 2rem;
}

p code,
td code,
li code {
	line-height: 2.25rem;
}

/* Forms */
input[type='text'],
input[type='number'],
input[type='email'],
input[type='date'],
input[type='color'],
input[type='search'],
input[type='tel'],
textarea {
	background-origin: initial;
	height: auto;
	-webkit-appearance: none;
	-moz-appearance: none;
}

input[type='checkbox'] + label,
input[type='radio'] + label {
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	margin-left: 0;
	margin-right: 0;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
	page-break-inside: avoid;
}

legend,
label {
	display: block;
	margin: 0;
}

select {
	background-origin: initial;
	height: auto;
	-webkit-appearance: none;
	-moz-appearance: none;
}

/* Lists */
ul,
ol {
	padding: 0;
}

ul {
	margin-left: 2rem;
}

ul li {
	padding: 0 0 0.75rem 0;
}

ol {
	margin-left: 1.75rem;
}

ol li {
	padding: 0 0 0.75rem 0.25rem;
}

ul li:last-child,
ol li:last-child {
	padding-bottom: 0;
}

ul[class*='columns-'] li:last-child,
ol[class*='columns-'] li:last-child {
	padding-bottom: 0.75rem;
}

ul ul,
ol ul {
	margin: 0.5rem 0 0.5rem 2rem;
}

ul ol,
ol ol {
	margin: 0.5rem 0 0.5rem 1.75rem;
}

p + ul,
p + ol {
	margin-top: -0.75rem;
}

@media screen and (min-width: 40em) {
	ul {
		margin: 0.5rem 0 1.5rem 3rem;
	}
	ol {
		margin: 0.5rem 0 1.5rem 2.75rem;
	}
	ul ul,
	ol ul {
		margin: 0.5rem 0 0.5rem 3rem;
	}
	ul ol,
	ol ol {
		margin: 0.5rem 0 0.5rem 2.75rem;
	}
}
/*
* Visibility
*
* Helper classes to determine visibility of elements
*/
.ontario-hide {
	display: none !important;
}

.ontario-invisible {
	visibility: hidden !important;
}

@media screen and (max-width: 39.99875em) {
	.ontario-hide-for-small-only {
		display: none !important;
	}
}
@media screen and (max-width: 0em), screen and (min-width: 40em) {
	.ontario-show-for-small-only {
		display: none !important;
	}
}
@media print, screen and (min-width: 40em) {
	.ontario-hide-for-medium {
		display: none !important;
	}
}
@media screen and (max-width: 39.99875em) {
	.ontario-show-for-medium {
		display: none !important;
	}
}
@media screen and (min-width: 40em) and (max-width: 72.99875em) {
	.ontario-hide-for-medium-only {
		display: none !important;
	}
}
@media screen and (max-width: 39.99875em), screen and (min-width: 73em) {
	.ontario-show-for-medium-only {
		display: none !important;
	}
}
@media print, screen and (min-width: 73em) {
	.ontario-hide-for-large {
		display: none !important;
	}
}
@media screen and (max-width: 72.99875em) {
	.ontario-show-for-large {
		display: none !important;
	}
}
@media screen and (min-width: 73em) and (max-width: 95.99875em) {
	.ontario-hide-for-large-only {
		display: none !important;
	}
}
@media screen and (max-width: 72.99875em), screen and (min-width: 96em) {
	.ontario-show-for-large-only {
		display: none !important;
	}
}
.ontario-show-for-sr,
.ontario-show-on-focus {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.ontario-show-on-focus:active,
.ontario-show-on-focus:focus {
	position: static;
	width: auto;
	height: auto;
	overflow: visible;
	clip: auto;
}

.ontario-show-for-landscape,
.ontario-hide-for-portrait {
	display: block !important;
}

@media screen and (orientation: landscape) {
	.ontario-show-for-landscape,
	.ontario-hide-for-portrait {
		display: block !important;
	}
}
@media screen and (orientation: portrait) {
	.ontario-show-for-landscape,
	.ontario-hide-for-portrait {
		display: none !important;
	}
}
.ontario-hide-for-landscape,
.ontario-show-for-portrait {
	display: none !important;
}

@media screen and (orientation: landscape) {
	.ontario-hide-for-landscape,
	.ontario-show-for-portrait {
		display: none !important;
	}
}
@media screen and (orientation: portrait) {
	.ontario-hide-for-landscape,
	.ontario-show-for-portrait {
		display: block !important;
	}
}
.ontario-fieldset__legend {
	color: rgb(25.5, 25.5, 25.5);
	font-family: 'Raleway Modified', 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 1.1875rem;
	font-weight: 700;
	margin: 0 0 1rem 0;
	line-height: 1.5;
	max-width: 38.75em;
	white-space: normal;
	width: 100%;
	hyphens: auto;
}
@media screen and (max-width: 40em) {
	.ontario-fieldset__legend {
		font-size: 1.125rem;
		line-height: 1.56;
	}
}

.ontario-fieldset__legend--large,
.ontario-fieldset__legend--heading {
	letter-spacing: 0.02rem;
	line-height: 1.2;
}
.ontario-fieldset__legend--large h1,
.ontario-fieldset__legend--heading h1 {
	display: inline-block;
	margin: 0;
}
@media screen and (max-width: 40em) {
	.ontario-fieldset__legend--large,
	.ontario-fieldset__legend--heading {
		font-size: 1.4375rem;
		line-height: 1.39;
	}
}

.ontario-fieldset__legend--large {
	font-size: 1.75rem;
}

.ontario-fieldset__legend-required-flag,
.ontario-fieldset__legend-optional-flag {
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
}
.ontario-fieldset__legend-required-flag:before,
.ontario-fieldset__legend-optional-flag:before {
	content: ' ';
}

.ontario-label {
	cursor: pointer;
	color: rgb(25.5, 25.5, 25.5);
	font-family: 'Raleway Modified', 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 1.1875rem;
	font-weight: 700;
	line-height: 1.5;
	margin: 0 0 1rem 0;
	max-width: 38.75em;
	white-space: normal;
	width: 100%;
	hyphens: auto;
}
@media screen and (max-width: 40em) {
	.ontario-label {
		font-size: 1.125rem;
		line-height: 1.56;
	}
}

.ontario-label--large {
	font-size: 1.75rem;
	letter-spacing: 0.02rem;
	line-height: 1.2;
	max-width: 26.25em;
}
@media screen and (max-width: 40em) {
	.ontario-label--large {
		font-size: 1.4375rem;
		line-height: 1.39;
	}
}

h1 > .ontario-label--heading {
	display: inline-block;
	margin: 0;
}

.ontario-label__flag {
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
}
.ontario-label__flag:before {
	content: ' ';
}

/* -------------------------------
    Focus placeholder variables
--------------------------------- */
/* -------------------------------
    Focus placeholder
--------------------------------- */
.ontario-input:focus,
.ontario-input:active {
	box-shadow: 0 0 0 4px #009adb;
	outline: 4px solid transparent;
	transition: box-shadow 0.1s ease-in-out;
}

.ontario-input {
	border: 2px solid rgb(25.5, 25.5, 25.5);
	border-radius: 4px;
	box-sizing: border-box;
	color: rgb(25.5, 25.5, 25.5);
	display: block;
	font-size: 1rem;
	font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	line-height: 1.5;
	margin: 0;
	max-width: 48rem;
	width: 100%;
	padding: 0.625rem 1rem;
	transition: box-shadow 0.1s ease-in-out;
}
.ontario-input--2-char-width {
	max-width: 8ex;
}

.ontario-input--3-char-width {
	max-width: 10ex;
}

.ontario-input--4-char-width {
	max-width: 12ex;
}

.ontario-input--5-char-width {
	max-width: 14ex;
}

.ontario-input--7-char-width {
	max-width: 17ex;
}

.ontario-input--10-char-width {
	max-width: 23ex;
}

.ontario-input--20-char-width {
	max-width: 41ex;
}

.ontario-error-messaging {
	display: flex;
	align-items: flex-start;
	margin: -0.25rem 0 0.5rem 0;
	color: #d81a21;
	max-width: 48rem;
}

.ontario-error-messaging__content {
	margin-left: 0.5rem;
	margin-top: 0.125rem;
}

.ontario-input__error {
	border-color: #d81a21 !important;
}

.ontario-error__hidden {
	display: none;
}

.ontario-dropdown {
	background-color: #ffffff;
	background-position: right 0.5rem center;
	background-repeat: no-repeat;
	background-size: 2rem;
	padding-right: 2.25rem;
	cursor: pointer;
}
.ontario-dropdown.ontario-dropdown-hint-expander--true {
	margin-bottom: 1rem;
}

/* These styles are to fix differences in default styling for dropdowns in IE */
.ontario-dropdown::-ms-expand {
	display: none;
}

.ontario-dropdown option {
	font-weight: normal;
}

.ontario-dropdown--error select {
	border: 0.125rem solid #cd0000;
}
