/*
Theme Name: Theme—MOB
Description: Theme created by Manoverboard for Pitblado.
Author: Manoverboard    
Author URI: http://www.manoverboard.com/
Lead: Daniel Lamb
Version: 1
*/

/********************************************
    Fonts, Temporary, Must Purchase
********************************************/

@font-face {
	font-family: 'suisse';
	src: url('fonts/SuisseIntl-Light-WebXL.woff2') format('woff2'), url('fonts/SuisseIntl-Light-WebXL.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'suisse';
	src: url('fonts/SuisseIntl-Regular-WebXL.woff2') format('woff2'), url('fonts/SuisseIntl-Regular-WebXL.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'suisse';
	src: url('fonts/SuisseIntl-Medium-WebM.woff2') format('woff2'), url('fonts/SuisseIntl-Medium-WebM.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'suisse';
	src: url('fonts/SuisseIntl-SemiBold-WebM.woff2') format('woff2'), url('fonts/SuisseIntl-SemiBold-WebM.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

/* .screen-reader-text shares this rule because woocommerce_enqueue_styles is
   disabled (functions.php), so WooCommerce's own definition never loads and its
   accessibility labels render as visible text. The quantity template's
   <label class="screen-reader-text">Pay My Bill quantity</label> was showing
   above the "Add an Invoice" button. Hiding it here keeps it for screen readers. */
.visually-hidden,
.screen-reader-text {
	font-size: 20px;
	position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}


div:not(.lawyer-inner) a:not([href*='https://pitblado2025.wpenginepowered.com']):not([href*='https://www.pitblado.com']):not([href*='https://pitblado.com']):not([href*='https://pitblado.localwp']):not([href^='#']):not([href^='tel']):not([href^='fax']):not([href^='mailto']):not([href^='/']):not([href*='https://pitblado.myhello.site']):after {
	content: '';

	width: 0.9em;
	height: 0.85em;
	font-size: 0.9em;

	line-height: inherit;

	display: inline-block;
	background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' focusable='false' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='50px' height='50px' viewBox='0 0 53 53' enable-background='new 0 0 50 50' xml:space='preserve'%3E%3Cpath fill='%23041C2C' d='M48.594,0L32.656,0.017c-0.777,0-1.406,0.629-1.406,1.406v3.253c0,0.777,0.629,1.406,1.406,1.407 c0.01,0,0.019,0,0.028,0l7.19-0.266l0.201,0.201L12.844,33.251c-0.458,0.457-0.46,1.198-0.003,1.657 c0.001,0.001,0.002,0.002,0.003,0.003l2.246,2.246c0.457,0.458,1.199,0.46,1.657,0.003c0.001-0.001,0.002-0.002,0.003-0.003 L43.982,9.924l0.201,0.201l-0.266,7.19c-0.016,0.776,0.602,1.418,1.377,1.434c0.01,0,0.02,0,0.029,0h3.253 c0.776,0,1.406-0.629,1.406-1.406L50,1.406C50,0.629,49.371,0,48.594,0z M42.188,28.125h-1.563c-0.863,0-1.563,0.699-1.563,1.563 v15.039c0,0.324-0.262,0.586-0.586,0.586H5.273c-0.324,0-0.586-0.262-0.586-0.586V11.523c0-0.324,0.262-0.586,0.586-0.586h15.039 c0.863,0,1.563-0.7,1.563-1.563V7.813c0-0.863-0.7-1.563-1.563-1.563H4.688C2.099,6.25,0,8.349,0,10.938v34.375 C0,47.901,2.099,50,4.688,50l0,0h34.375c2.589,0,4.688-2.099,4.688-4.688l0,0V29.688C43.75,28.824,43.051,28.125,42.188,28.125z'/%3E%3C/svg%3E");	background-size: 0.9em 0.9em;
	background-repeat: no-repeat;
	margin-left: 3px;
}

#footer a:not([href*='https://pitblado2025.wpenginepowered.com']):not([href*='https://www.pitblado.com']):not([href*='https://pitblado.com']):not([href*='https://pitblado.localwp']):not([href^='#']):not([href^='tel']):not([href^='fax']):not([href^='mailto']):not([href^='/']):not([href*='https://pitblado.myhello.site']):not(#meritas):after {
	content: '';

	width: 0.9em;
	height: 0.85em;
	font-size: 0.9em;
	line-height: inherit;

	display: inline-block;
	background-image: url("data:image/svg+xml,%3Csvg version='1.1' id='Layer_1' focusable='false' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='50px' height='50px' viewBox='0 0 53 53' enable-background='new 0 0 50 50' xml:space='preserve'%3E%3Cpath fill='white' d='M48.594,0L32.656,0.017c-0.777,0-1.406,0.629-1.406,1.406v3.253c0,0.777,0.629,1.406,1.406,1.407 c0.01,0,0.019,0,0.028,0l7.19-0.266l0.201,0.201L12.844,33.251c-0.458,0.457-0.46,1.198-0.003,1.657 c0.001,0.001,0.002,0.002,0.003,0.003l2.246,2.246c0.457,0.458,1.199,0.46,1.657,0.003c0.001-0.001,0.002-0.002,0.003-0.003 L43.982,9.924l0.201,0.201l-0.266,7.19c-0.016,0.776,0.602,1.418,1.377,1.434c0.01,0,0.02,0,0.029,0h3.253 c0.776,0,1.406-0.629,1.406-1.406L50,1.406C50,0.629,49.371,0,48.594,0z M42.188,28.125h-1.563c-0.863,0-1.563,0.699-1.563,1.563 v15.039c0,0.324-0.262,0.586-0.586,0.586H5.273c-0.324,0-0.586-0.262-0.586-0.586V11.523c0-0.324,0.262-0.586,0.586-0.586h15.039 c0.863,0,1.563-0.7,1.563-1.563V7.813c0-0.863-0.7-1.563-1.563-1.563H4.688C2.099,6.25,0,8.349,0,10.938v34.375 C0,47.901,2.099,50,4.688,50l0,0h34.375c2.589,0,4.688-2.099,4.688-4.688l0,0V29.688C43.75,28.824,43.051,28.125,42.188,28.125z'/%3E%3C/svg%3E");	background-size: 0.9em 0.9em;
	background-repeat: no-repeat;
	margin-left: 5px;
}


#footer a br {
	display: none;
}


button {
    opacity: 1;
    box-shadow: none;
    background: transparent;
    outline: none;
    border: none;
}
#skip-link{
	position: absolute;
	overflow: hidden;
	top: auto;
	left: -10000px;
	width: 1px;
	height: 1px;
	transition: none;
	font-size: 20px;
   }
   
   #skip-link:focus {
	position: absolute;
	outline:  5px black;
	background:  white;
	overflow:  visible;
	padding:  10px 20px;
	font-weight: bold;
	background:  white;
	top: 65px;
	left: 5px;
	width: auto;
	height: auto;
	z-index: 1000000000;
   }


:focus {
    outline: 3px solid  rgba(4, 28, 44, 0.66) !important;
}
.layer-hero :focus {
	outline-color: white !important;
}
#footer :focus,
.layer-image-strip :focus ,
.layer-image-strip :focus {
    outline: 3px solid rgba(255,255,255, 0.66) !important;
  
}
body:not(.user-is-tabbing) :focus,
body:not(.user-is-tabbing) #footer :focus,
body:not(.user-is-tabbing) .layer-image-strip :focus ,
body:not(.user-is-tabbing) .layer-image-strip :focus {
  outline: none !important;
}
body.user-is-tabbing .tinter {
	opacity: 0.5 !important;
}



textarea,
input.text,
input[type="text"],
input[type="button"],
input[type="submit"],
.input-checkbox {
-webkit-appearance: none !important;
border-radius: 0;
}

html {
    scroll-behavior: smooth;
    margin-top: 0 !important;
}
body {
    overflow: hidden;
    margin: 0;
    padding: 0;    
    height: 100%;
    width: 100%;
    box-sizing: border-box;

}
.scrollbar-track {
    z-index: 100000 !important;
}
#wrapper {
	/* necessary for smooth scroll */
    height: 100vh;
    box-sizing: border-box;
}
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;
}
/* styling wasn't showing up in the practice areas pages */
strong { font-weight: 500; }
em { font-style: italic; }
/* HTML5 display-role reset for older browsers */

/* clearfix ------------ */

.cf:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
* html .cf {
	zoom: 1;
}
/* IE6 */

*:first-child+html .cf {
	zoom: 1;
}
/* IE7 */

.error {
	color: red !important;
}
a {
    color: #041C2C;
    text-decoration-thickness: 1px;
}


/********************************************
    Core Styles
********************************************/
body {
    word-break: normal;
}
body, 
body * {
    font-family: suisse, arial, helvetica, sans-serif;
}
body,
input,
textarea,
radio,
checkbox {
	background-color: transparent;
	font-weight: 400;
	font-style: normal;
	line-height: 1;
	text-align: left;
}
#wrapper {
	position: relative;
}
.wo {
	text-align: center;
	padding: 0 30px;
}
.pv {
	padding-top: 65px;
	padding-bottom: 65px;
}
.wo .inner {
	text-align: left;
	width: 1220px;
	max-width: 100%;
	margin: 0 auto;
}
.video-wrapper {
	position: relative;
	padding-bottom: 56.25%;
	/* 16:9 */
	padding-top: 25px;
	height: 0;
}
.video-wrapper object,
.video-wrapper embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.acf-map {
	width: 100%;
	height: 400px;
	border: #ccc solid 1px;
	margin: 20px 0;
}
/* Fixes potential theme css conflict. */

.acf-map img {
	max-width: inherit !important;
}
/********************************************
    Header
********************************************/

#header {}
/********************************************
    Contact Form 7
********************************************/


.nav-in-layer input,
.nav-in-layer select {
    outline: none;
}
.nav-in-layer select {
    text-indent: 11px;
}


.form-layer {
	padding: 0 20px 100px;
	text-align: center;
	background-color: white;
}
.form h2 {
    font-size: 180%;
    font-weight: 400;
    color: #687780;
}
.form p {
	font-size: 180%;
	margin-top: 25px;
	display: block;
    clear: both;
    text-align: left;
}
.form p.three-field-date,
.form p.two-field-date {
	font-size: 100%;
	margin-top: 0;
}
.form label,
.form legend {
	display: inline-block;
	padding-bottom: 5px;
	font-size: 180%;
}
.form label {
    /* display: none; 
    unhidden for access */
    
    display: block;
    position: absolute;
    left: -50000px;
    height: 1px;
}
.form legend {
	margin-top: 25px;
}
.form input,
.form textarea,
.form checkbox,
.form radio {
	box-sizing: border-box;
	border: none;
    outline: none;
	margin: 0;
	padding: 0;
	width: 600px;
	max-width: 100%;
    font-size: 127%;
    font-family: suisse, arial, helvetica, sans-serif;
    color: #041C2C;
	line-height: 1.2;
    padding: 7px 0;
    border-bottom: 1px solid #687780;
    margin-bottom: 7px;
}
.form input[type="submit"] {
	text-align: center;
	font-size: 127%;
    width: auto;
    border-bottom: 0;
    background-color: #041C2C;
    border-radius: 100px;
    color: white;
    height: 56px;
    line-height: 56px;
    padding: 0 30px;
    cursor: pointer;
}
.form input[type="submit"]:focus {
    background-color: #687780;
}
.form input:focus,
.form textarea:focus {
    border-bottom: 1px solid #041C2C;

}
.form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-sizing: border-box !important;
	background-color: url('img/dropdown-arrow.png') no-repeat 96% 50% transparent;
	background-size: 16px 9px;
}
.wpcf7-list-item {
	display: block;
	padding-right: 20px;
	margin: 10px 0;
}
.wpcf7-list-item input {
	width: auto;
	margin-right: 5px;
}
.wpcf7-list-item-label {
	font-size: 180%;
}
select {
    cursor: pointer;
}
/******************************** form validation */

div.wpcf7-mail-sent-ok,
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing,
div.wpcf7-response-output {
	border: none !important;
	font-size: 200%;
	background-color: white;
	display: block !important;
	width: 100%;
	padding: 30px;
}
div.wpcf7-mail-sent-ok:before {
	content: "Success";
	background-color: seagreen;
	color: white;
	padding: 3px 10px;
	border-radius: 5px;
	margin-right: 10px;
}
div.wpcf7-validation-errors:before,
div.wpcf7-acceptance-missing:before {
	content: "Attention";
	background-color: darkorange;
	color: white;
	padding: 3px 10px;
	border-radius: 5px;
	margin-right: 10px;
}
span.wpcf7-not-valid-tip {
	color: firebrick !important;
	font-weight: 400 !important;
	display: block !important;
	font-size: 100% !important;
	margin-bottom: -20px !important;
}


/********************************************
    woocommerce form
********************************************/
.postid-1683 .layer.first-layer {
    padding-top: 200px;
}



.postid-1683 h1.product_title {
    width: 32.4%;
    float: left;

}

.type-product {
    width: 50%;
    max-width: 100%;
    float: left;

}

@media screen and (max-width: 1024px) {
    .postid-1683 h1.product_title {
        width: 100%;
        float: none;
        margin-bottom: 60px;
    
    }
    
    .type-product {
        width: 100%;
        float: none;
    
    }
}
.type-product * {
    text-indent: 0 !important;
}
#payment li {
    margin-left: 0;
    list-style-type: none;
    padding-left: 0;
}
.type-product abbr {
    text-decoration: none;
}
#opc-messages li,
#opc-messages .woocommerce-message,
.checkout.woocommerce-checkout .woocommerce-error li  {
    margin: 0;
    padding: 15px 0;
    list-style-type: none;
    line-height: 1.5;
    background-color: transparent !important;
    padding: 14px 12px;
    width: 100%;
    box-sizing: border-box;
    color: #041C2C;
    font-weight: 600;
    font-size: 230%;
    text-indent: 0;
    border-radius: 0;
    border: 1px solid #041C2C;
}




#customer_details {
    margin-top: 60px;
	margin-bottom: 120px;
}
.type-product .entry-summary,
.type-product .woocommerce-checkout  {
    /* border: 1px dotted red; */
    margin-bottom: 30px;
}
.type-product p p,
.type-product p li, 
.type-product li p {
    font-size: 100%;
}
.type-product .form-row {
    margin-top: 0;
    margin-bottom: 40px;
}
.type-product input,
#wc-moneris-credit-card-form input,
#monerisDataInput {
    box-sizing: border-box;
    border: none;
    border-bottom-color: currentcolor;
    border-bottom-style: none;
    border-bottom-width: medium;
    outline: none !important;
    margin: 0;
    margin-bottom: 0px;
    padding: 0;
    width: 600px;
    max-width: 100%;
    font-size: 30px !important;
    font-family: suisse, arial, helvetica, sans-serif;
    color: #041C2C;
    line-height: 1.2;
    padding: 7px 0 !important;
    border: none !important;
    border-bottom: 1px solid #687780 !important;
    margin-bottom: 7px;
    width: 100%;
    text-transform: capitalize;
}

#billing_first_name_field,
#billing_last_name_field,
#wc-moneris-expiry_field,
#wc-moneris-csc_field {
    width: 47%;
    float: left;
}
#billing_last_name_field,
#wc-moneris-csc_field {
    margin-left: 6%;
}
#billing_email {
    text-transform: none !important;
}

.product-addon-totals {
    display: none;
}

/* components to hide */
.entry-summary .price:first-child {
    display: none;
}
/*
.woocommerce-Price-amount,
.woocommerce-product-details__short-description {
    display: none;
}
*/
tr.opc_cart_item,
.cart-subtotal {
    displaY: none;
}
.wc-pao-addon-container {
    position: relative;
}
.wc-pao-addon-container label,
.woocommerce-billing-fields__field-wrapper label,
#payment label {
    font-size: 230%;
    font-weight: 400;
    font-size: 23px;
    font-family: suisse, arial, helvetica, sans-serif;
    color: #041C2C;
    line-height: 1.2;
    display: block;
    width: 100%;
    margin-bottom: 10px;
}

.wc-pao-addon-heading,
.woocommerce-billing-fields h3 {
    font-size: 180%;
    font-weight: 500;
    color: #687780;
    padding: 0;
    margin: 0;
    margin-bottom: 80px;

}
.product-addon-totals li:first-child {
    display: none;
}
div.product-addon-totals .wc-pao-subtotal-line {
    border: none;
}
/*
.opc_order_review {
display: none;
}
*/
#order_review_heading {
    display: none;
}

.wc_payment_methods,
.wc_payment_methods li {
    padding: 0;
    margin: 0;
}
#monerisDataLabel,
#monerisDataInput {
    left: -10000px;
}
#woocommerce-checkout-payment,
#woocommerce-checkout-payment ul,
#woocommerce-checkout-payment li {
padding: 0;
margin: 0;
}

.single_add_to_cart_button,
#place_order {
    display: block;
    height: 50px;
    line-height: 52px !important;
    width: 135px;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    background-color: #041C2C;
    color: white !important;
    border-radius: 25px;
    border: none;
    text-align: center;
    text-decoration: none;
    text-indent: 0;
    font-size: 175% !important;
}


.shop_table.woocommerce-checkout-review-order-table {
    width: 100%;
    display: block;
    height: 50px;
    line-height: 52px !important;
    padding: 10px 0;
    margin: 120px 0;
    box-sizing: border-box;
    color: #041C2C !important;
    border-radius: 0;
    border-top: 3px solid #041C2C;
    text-align: center;
    text-decoration: none;
    text-indent: 0;
    font-size: 175% !important;
}
.shop_table.woocommerce-checkout-review-order-table td,
.shop_table.woocommerce-checkout-review-order-table th {
    padding: 12px 0;
    width: 100%;
    text-align: left;
    box-sizing: border-box;
    font-size: 30px;
font-weight: 600;
}
.shop_table.woocommerce-checkout-review-order-table strong {
    font-weight: 600;
}
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.sv-wc-payment-gateway-card-icons {
    displaY: none !important;
}

.shop_table {
    displaY: block;
    width: 100%;
    border-top: 1px solid;
}
.shop_table thead {
    display: none;
}
.shop-table thead,
.shop-table tbody,
.shop-table tfoot {
    display: block;
    width: 100%;
}


.shop-table th,
.shop-table td,
.product-details * {
    font-size: 23px;
}
.shop_table p {
    font-size: 23px !important;
}
.shop_table .variation {
    display: none;
}
/********************************************
    Pagination
********************************************/

#navAdjacent {
	box-sizing: border-box;
	background-color: #1c3c55;
	padding: 60px 30px;
	text-align: center;
}
.nav-adjacent-inner {
	width: 1080px;
	max-width: 100%;
	margin: 0 auto;
}
#navAdjacent .prev-button a,
#navAdjacent .next-button a,
#navAdjacent .all-button a {
	font-size: 210%;
	font-weight: 600;
	color: white;
}
.nav-in-layer .all:hover {
    color: white !important;
    background-color: #041C2C !important;
}

#navAdjacent .fa {
	color: #fca443;
	font-size: 150%;
	vertical-align: middle;
	padding-bottom: 5px;
}
#navAdjacent .prev-button a,
#navAdjacent .next-button a {
	text-decoration: none;
	vertical-align: middle;
}
#navAdjacent .all-button a {
	font-size: 240%;
	font-weight: 400;
	display: block;
	width: 100%;
	text-decoration: underline;
	position: absolute;
	width: 30%;
	left: 50%;
	margin-left: -15%;
}
#navAdjacent .prev-button a {
	float: left;
}
#navAdjacent .next-button a {
	float: right;
}
/* positioning context */

.pc {
	position: relative;
}
.hidden {
	display: none;
}
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;
}
/* ------------------------------------------------------------------ */

html {
	overflow-x: hidden;
}
body {
	position: relative;
	font-family: suisse, arial, helvetica, sans-serif;
	font-weight: 400;
	color: #041C2C;
	margin: auto;

	outline: none;
	border: none;
	font-size: 62.5%;
	line-height: 1.34;
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
#header {
	z-index: 10000;
	position: absolute;
	top: 0;
	left: 50%;
	/* transform: translatex(-50%); */
	width: 85%;
	max-width: 100%;
	min-height: 80px;
	margin: 0;
	padding: 0;
}
#header .outer {
    width: 100%;
    background-color: transparent;

}
#header:hover .outer,
#header.show-search .outer {
	background-color: white;
}
#header .inner {
	width: 85%;
	height: 80px;
	max-width: 100%;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-content: center;
    align-items: center;
    background-color: transparent;
}
/*
#header #navContainer{
	display: flex;
	align-items: center;
}
*/
.sub-nav-back {
    display: none;
}
/* header logo ------------------------------------------------------------------ */

#siteLogo,
#footerLogo {
	display: block;
	height: 32px;
	width: 145px;
	background-size: 145px 32px;
}

#siteLogo svg path,
#footerLogo svg path {
	fill: white;
}

#header:hover svg path,
.opaque svg path,
.show-search svg path,
.forceopaque #siteLogo svg path {
	fill: #041C2C;
}
.siteLogo.mask {
	display: block;
	height: 32px;
	width: 145px;
	/* margin-right: auto; */
    overflow: hidden !important;
    padding: 3px;
}
#header li,
#footer li {
	text-indent: 0;
}
/* ------------------------------------------------------------------ */



#message-bar {
    background-color: #041C2C;
    padding: 20px;
    text-align: center;
    color: white;

        /* 1px gap left edge bug fix, firefox */
        outline: 1px solid #041C2C;
}
#message-bar small {
    color: white;
    font-size: 180%;
}
#message-bar small a{
    color: white;
    text-decoration: underline;
}
#header nav ul {
	list-style-type: none;
	display: flex;
	justify-content: space-between;
	align-content: center;
	align-items: center;
}
#header nav li {
	display: inline;
	overflow: hidden;
}



#header li  {
    position: relative;
}
#header nav li {
    overflow: visible;
}
#header nav li li a {
    padding: 10px 1vw;
    height: auto;
    line-height: 1.3;
    displaY: block;
    white-space: nowrap;
    text-align: left;
}
#header .sub-menu {
    width: auto;
    position: absolute;
    padding: 20px 10px;
    top: 100%;
    left: calc(1vw + 20px);

    transform: translatey(-10px);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);

    box-sizing: border-box;
}
#header a:hover .sub-menu {
    display: block;
}








#header nav li a {
	padding: 0 2.2vw;
	font-size: 180%;
	font-weight: 500;
	height: 80px;
	box-sizing: border-box;
	line-height: 80px;
	position: relative;
}
nav li.menu-item a {
	display: inline-block;
	text-decoration: none;
    color: white;
    position: relative;
}
#header:hover nav li.menu-item a,
.opaque nav li.menu-item a,
.show-search nav li.menu-item a,
.forceopaque nav li.menu-item a {
	color: #041C2C;
}
#header li.menu-item a {
    transition: transform 0.5s ease-in-out;
}
#header li.menu-item a:hover {
    /* transform: translatex(6px); */
    transition: all 0.1s ease-in-out;
}

#header nav li a:before {
    content: "";
    display: block;
    height: 1px;
    width: calc(100% - 3.2vw);
    position: absolute;
    bottom: 25px;
    lefT: 50%;
    transform: translatex(-50%);
}

#header nav li li a:before {
    display: none !important;
    width: calc(100% - 2vw);
    bottom: 0;
}

#header nav li a:hover:before,
#header.opaque nav li a:hover:before,
#header.show-search nav li a:hover:before,
#header.forceopaque nav li a:hover:before,
#header nav li.current-menu-item a:before {
    background-color: #041C2C;
}

#header nav li.current-menu-item a:before {
    background-color: white;
}
#header nav li.current-menu-item a:hover:before,
#header.opaque nav li.current-menu-item a:before,
#header.show-search nav li.current-menu-item a:before,
#header.forceopaque nav li.current-menu-item a:before {
    background-color: #041C2C;
}
.nav-extras {
    height: 80px;
    display: flex;
    align-items: center;
}


.payBillButton {
	margin-right: 2.2vw;
}
#header nav ul ul {
	display: none;
	position: absolute;
	top: 80px;
	width: 5000px;
	left: 50%;
	transform: translatex(-50%);
	color: white;
	/* padding: 15px 0; */
	text-align: center;
}
#header nav ul li:hover>ul,
#header nav ul li:hover>ul:hover {
	display: block;
	background-color: white;
}
#header nav ul ul ul {
	display: none;
}
/* nav hide effect------------------------------------------------------------------ */

#header:hover,
#header:hover nav li a,
#header:hover #payBillButton,
#header:hover #searchButton,
#header.opaque,
#header.opaque nav li a,
#header.opaque #payBillButton,
#header.opaque #searchButton,
#header.show-search,
#header.show-search nav li a,
#header.show-search #payBillButton,
#header.show-search #searchButton,
#header.forceopaque,
#header.forceopaque nav li a,
#header.forceopaque #payBillButton,
#header.forceopaque #searchButton {
	transition: all 0.1s ease-in-out;
}

#header:hover #payBillButton,
#header.opaque #payBillButton,
#header.show-search #payBillButton,
#header.forceopaque #payBillButton {
    color: white;
    background-color: #041C2C;
}
/*
#header.nav-down {
	transition: all 0.2s ease-in-out;
}
#header.nav-up {
	transition: all 0.6s ease-in-out;
}
*/
#header {
	position: fixed;
	top: 0;
    width: 100%;
    transform: translate(-50%,  0);

}
#header.nav-up {
    transform: translate(-50%, -100%);
}
/*
#header.nav-down .outer {
	transition: all 0.05s ease-in-out;
}
#header.nav-up .outer {
	transition: all 0.6s ease-in-out;
}
*/
#header:hover .outer,
#header.opaque .outer,
#header.forceopaque .outer {

	background-color: white;
}
#header:hover nav li a,
#header:hover nav.menu-item li a span:after,
#header.opaque nav li a,
.opaque nav.menu-item li a span:after,
#header.show-search nav li a,
.show-search nav.menu-item li a span:after,
#header.forceopaque nav li a,
.forceopaque nav.menu-item li a span:after {
	color: #041C2C;
}

#header:hover #searchButton,
.opaque #searchButton,
.show-search #searchButton,
.forceopaque #searchButton {
	background-image: url('img/search-blue.svg');
}
#header:hover #menuButton,
.opaque #menuButton,
.show-search #menuButton,
.forceopaque #menuButton {
	background-image: url('img/menu-blue.svg');
}
.menuButton {
	display: none !important;
}
/* end nav hide effect */

#meritas {
	height: 41px;
	width: 160px;
}
#header .payBillButton {
	display: inline-block;
    height: 52px;
    padding: 3px;
}
#header #payBillButton {
	display: block;
	height: 50px;
	line-height: 50px !important;
	width: 135px;
	padding: 0;
	margin: 0;
    box-sizing: border-box;  
	background-color: white;
	color: e#041C2C;
	border-radius: 25px;
	text-align: center;
	text-decoration: none;
	text-indent: 0;
	font-size: 175% !important;
}
a,
a:before,
a:after,
.slick-next,
.slick-prev,
.all,
.button.circle:before,
.filter-but,
.load-but,
.alm-load-more-btn {
	transition: color .1s ease-out, background .1s ease-out, left 1s ease-out, right 1s ease-out;
	z-index: 1000;
}
.layer-news-header .filter-but {
    width: 150px;
}

#newsletterSignup small {
	transition: opacity 1s ease-out;
}
#header #payBillButton:hover {
	background-color: #041C2C !important;
	color: white !important;
}
.searchButton.mask,
.menuButton.mask,
.payBillButton.mask {
	overflow: hidden !important;
}
.searchButton.mask,
.menuButton.mask {
	width: 52px;
    height: 52px;
    padding: 3px;
}
#searchButton,
#menuButton {
	display: inline-block;
	height: 52px;
	width: 52px;
	padding: 0;
	margin: 0;
	background-size: 52px 52px;
	background-position: center center;
	background-repeat: no-repeat;
	color: transparent;
}
#searchButton {
	background-image: url('img/search.svg');
}
#menuButton {
	background-image: url('img/menu.svg');
	display: none;
}







#searchFormWrap {
    background-color: white;
    border-top: 1px solid  #eee;
    border-bottom: 1px solid  #eee;
    width: 100%;
    paddinG: 70px 0;
    text-align: center;

    display: none;
}
.show-search #searchFormWrap {
    display: block;
}
#searchform {
    display: block;
    width: 85%;
    margin: 0 auto;
    text-align: left;
}



#searchform .search-submit
/* ,
#searchform label */ {
    display: none;
}
#searchform input:focus {
/* outline: none !important; */
}


#searchform input {
    outlinE: none;
    border: none;
    font-size: calc(340% + 1.4vw);
    font-weight: 400;
    color: #687780;
    -webkit-appearance: none;
    -moz-appearance: none;
    
}
#searchform input:focus {
    color: #041C2C;
}













.layer {
    padding: 0;
    margin: 168px 0;
	box-sizing: border-box;
	text-align: center;
	position: relative;
}
.layer.first-layer {
    margin-top: 0 !important;
}

.inner {
	width: 85%;
	max-width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
	text-align: left;
	position: relative;
}
.layer-hero {
	background-color: #041C2C !important;
	height: 50vw;
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	padding: 7.5vw 0;
}
.layer-hero.short {
    height: 540px;
    padding-bottom: 70px;
}
.layer-hero img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
    transition: none !important;
    
    opacity: 0;
}
.layer-hero img.align-top {
    object-position: top;
}
.layer-hero img.align-bottom{
	object-position: bottom;
}




.layer.layer-two-columns-image h2 {
    line-height: 1.35;
    font-size: 400%;
    font-weight: 300 !important;
    color: #687780;
}

.layer.layer-two-columns-image h2 {
    color: #041C2C;
    font-weight: 600;
}


.layer.layer-two-columns-image .two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3.4%;
    align-items: center;
    justify-content: center;
}
.layer.layer-two-columns-image .two-col figcaption {
    display: block;
    padding: 0;
    margin: 0;
    margin-top: 5px;
    box-sizing: border-box;
    font-size: 161%;
    font-family: suisse, arial, helvetica, sans-serif;
    color: #687780;
}
.layer.layer-two-columns-image .two-col img {
    width: 100%;
}
@media screen and (max-width: 1024px) {
    .layer.layer-two-columns-image .two-col {
        grid-template-columns: 1fr;
    }
    .layer.layer-two-columns-image .inner {
        width: 90%;
    }

}




.layer.where-to-next {
    position: relative; 
    padding: 168px 0;
    margin: 0;
}
.layer-hero .tinter,
.layer.where-to-next .tinter,
.layer-video .tinter {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-color: black;

	transition: opacity 1s ease-in-out;
}


.layer-hero .eyebrow {
	height: 25px;
	overflow: hidden;
	positioN: relative;
}
.layer-hero .eyebrow span {
	display: block;
}
.layer-hero h2 {
	margin-top: 40px;
}
.ko {
	background-color: #555;
}
.layer.ko * {
	color: white;
}
nav li {
	list-style-type: none;
}
.layer .huge {
    font-size: 510%;
    font-size: calc(410% + 2vw);

	font-weight: 300;
	line-height: 1.12;
	letter-spacing: -1px;
}
.layer-hero .button {
	margin-top: 50px;
}
.eyebrow {
	font-size: 180%;
	font-weight: 400;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 400;
}
h3 {
	font-size: 310%;
}
h4 {
    margin-top: 60px;
    font-size: 260%;
    font-weight: 400;

}
p {
	font-size: 230%;
}
h2{
	font-size: 400%
}
.button {
	displaY: block;
	font-size: 180%;
	color: #041C2C;
	text-decoration: none;
	cursor: pointer;
}
.button.circle {
	text-indent: 72px;
	height: 57px !important;
	line-height: 57px;
	position: relative;
	vertical-align: middle;
    display: inline-block;

}
.button.circle:before {
	content: "→";
	width: 57px;
    height: 57px;
    line-height: 54px;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translatey(-50%);
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	border: 1px solid #041C2C;
	background-color: white;
	color: #041C2C !important;
	border-radius: 100%;
	text-align: center;
	text-indent: 0;
}
@media reader, speech, aural {
    .button.circle:before {
        content: "";
    }
      
} 
.button.circle:hover:before {
	background-color: #041C2C;
    color: white !important;

}
.layer-hero .button.circle:before { 
    border: none !important;
}
#footer .button.circle:before {
	border: 1px solid white;
}

.arrow-to-the-left {
    padding-left: 1.2em;
    position: relative;
}
.arrow-to-the-left:before {
    content: "→";
    width: 1em;
    height: 1em;
    line-height: 1em;
    font-size: 1em;

    position: absolute;
    left: 0;
    color: inherit;
    opacity: 1;

    /*

	position: absolute;
	left: 0;
	top: 50%;
	transform: translatey(-50%);
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	border: 1px solid #041C2C;
	background-color: white;
	color: #041C2C !important;
	border-radius: 100%;
	text-align: center;
    text-indent: 0;
    */
}
@media reader, speech, aural {
    .arrow-to-the-left:before {
        content: "";
    }    
} 
.layer-three-col {}
.layer-three-col h3 {
	margin-top: 76px;
}
.layer-three-col p {
	margin-top: 40px;
	font-weight: 400;
}
.layer-image-strip {
	height: 34vw;
	overflow: hidden;
}
.layer-image-strip img {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: auto;
	object-fit: cover;
	transform: translatey(-50%);
}
.layer-video {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 56.25vw;
    margin-bottom: 0 !important;
}
.layer-video .text-on-video {
    width: 800px;
    max-width: 75%;
    display: block;

    position: relative;
    color: #041C2C;
    text-align: left;
}
.layer-video .text-on-video p {
    font-size: 400%;
    font-weight: 400;
    line-height: 1.3;
    color: white;
}

.layer-video .video-links {
    displaY: flex;
    align-items: center;
    align-content: center;
    margin-top: 40px;
}

.layer-video .button.play-button {
    
}

.layer-video .button.play-button:before {
    content: "" !important;
    
    border-color: white !important;
    background-color: transparent !important;
    background-image: url('img/play-button.svg') !important;
    background-position: center center;
    background-repeat: no-repeat;
    font-family: webdings;
}
.layer-video .button.play-button:hover:before {
    background-color: rgba(255,255,255,0.3) !important;
}
.layer-video .transcript-link {
    display: none;
    width: auto;
    font-size: 161%;
    padding-left: 0;
    opacity: 0.5;
    color: white;
    background: transparent;
    border: 1px solid white;
    text-decoration: none;
    border-radius: 100px;
    text-align: center;
    padding: 6px 9px;
    margin-left: 30px;
    font-weight: 400;

    transition: all 0.2s cubic-bezier(.42,.19,.02,.99);
}
.layer-video .transcript-link:hover {
    opacity: 1;
}
.layer-video #transcript-link.show {
    display: inline-block;

}
.layer-transcript {
    height: 1px;
    padding-bottom: 0;
margin-top: 0 !important;
}
.layer-transcript.show {
    height: auto;
    padding-bottom: 60px;
    border-bottom: 1px solid #041C2C;
    padding: 60px 0;


}
@media screen and (max-width: 800px) {
    .layer-transcript {
        height: 1px;
        padding: 0 !important;
    margin-top: 0 !important;
    }
    .layer-transcript.show {
        height: auto;
        padding: 60px 0 !important;
        border-bottom: 1px solid #041C2C;
        padding: 60px 0;
    
    
    }
    .layer-image-strip,
    .layer-image-strip img {
        min-height: 50vw !important;
        height: auto !important;
    }
    .layer-image-strip img {
        min-height: 100% !important;
        height: 100% !important;
    }
    .layer-video .button.play-button {
        margin-top: 0 !important;
    }
}
@media screen and (max-width: 640px) {
    #message-bar small {
        font-size: 161%;
    }
    #message-bar a {
        display: block;
    }
}
.layer-transcript .inner {
    position: relative;
    padding-right: 50px;
}
#transcript-close {
    width: 35px;
    height: 35px;
    position: absolute;
    right: 0;
    top: 0;
    -webkit-appearance: none;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
    padding: 0;
    color: #041C2C;
    font-style: normal;
    font-size: 500%;
    font-family: Arial, Baskerville, monospace;
    line-height: 35px;
    border: 0;
    background: none;
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}
@media screen and  (max-width: 800px) {
    .layer-video .text-on-video {
        max-width: 100%;
    }
    .layer-video .text-on-video p {
        font-size: 230%;
    }
    .layer-video .button.play-button {
        margin-top: 20px;
    }
}
.layer-transcript {
    height: 1px;
    overflow: hidden;
}
.layer-transcript .inner {
    width: 1024px !important; 
    max-width: 90%;
}
.layer-transcript p {
    font-size: 180%;
    font-weight: 400;
    line-height: 1.5;
    margin: 20px 0;
}



.testimonials {
	width: 100%;
	position: initial;
}
.testimonial-inner {
	/* height: 300px; */
	height: 100%;
	display: flex;
	flex-flow: column;
	justify-content: space-between;
}

.slick-list.draggable {
	cursor: grab;
	padding: 3px 0;
}


.testimonials {
	padding-top: 130px;
}
.testimonials .inner {
	position: relative;
}
.testimonials .quote {
	font-size: 230%;
	font-weight: 300;
	margin-right: 10%;
}
.testimonials .quotee-name {
	margin-top: 40px;
	font-size: 23px;
}
.testimonials .quotee-job {
	margin-top: 10px;
	font-size: 18px;
	font-weight: 300;
	color: #687780;
}


.person-testimonials {
    margin: 168px 0;
}
.person-testimonials.has2 .person-testimonial {
    width: 50%;
    float: left;
    padding-right: 10%;
    box-sizing: border-box;
}
.layer-person .person-testimonials .person-testimonial .quotee-name {
	margin-top: 40px;
    font-size: 23px;
    font-weight: 400;
}
.layer-person .person-testimonials .person-testimonial .quotee-job {
	margin-top: 10px;
	font-size: 18px;
	font-weight: 300;
	color: #687780;
}





.nav-in-layer {
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	width: auto;
}
.nav-in-layer button,
.slick-next,
.slick-prev,
.all,
.filter-but,
.load-but,
.alm-load-more-btn {
	height: 36px;
	line-height: 34px;
	width: 119px;
	margin-left: 40px;
	border-radius: 18px;
	padding: 0;
    text-align: left; /*this doesn't work in safari for some reason!*/
    text-indent: 11px;
	box-sizing: border-box;
	border: 1px solid #041C2C;
	background-color: transparent;
	font-size: 161%;
	display: inline-block;
	text-decoration: none;
	color: #041C2C;
}


.nav-in-layer select
.nav-in-layer button,
.slick-next,
.slick-prev,
.all,
.filter-but,
.load-but,
.alm-load-more-btn,
.layer-staff nav form input,
.layer-staff nav form select {
    text-indent: 0 !important;
    text-align: center !important;
    text-align-last:center;
}

.nav-in-layer .label {
	height: 36px;
	width: 119px;
	margin-left: 40px;
	padding: 0;
	text-align: center;
	box-sizing: border-box;
	font-size: 161%;
}
.nav-in-layer .previous:before,
.slick-prev:before {
	content: "←";
	margin-right: 5px;
	top: -1px;
	position: relative;
}
.nav-in-layer .next:after,
.slick-next:after,
.all:after {
	content: "→";
	margin-left: 5px;
	top: -1px;
	position: relative;
}
@media reader, speech, aural {
    .nav-in-layer .previous:before,
    .slick-prev:before,
    .nav-in-layer .next:after,
    .slick-next:after,
    .all:after {
        content: "";
    }    
} 
.slick-next:hover:after,
.all:hover:after {
	margin-lefT: 10px;
}
.slick-prev:hover:before {
	margin-right: 10px;
}
.slick-next:after,
.all:after,
.slick-prev:before {
	transition: margin .1s ease-out, margin .1s ease-out !important;
}
.nav-in-layer button:hover,
.slick-prev:hover,
.slick-next:hover {
	background-color: #041C2C;
	color: white !important;
}
.slick-next {
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer;
}
.slick-prev {
	position: absolute;
	top: 0;
	right: 180px;
	cursor: pointer;
}
.slick-disabled:hover {
	background-color: white;
	color: #687780 !important;
}
.slick-next.slick-disabled:hover:after {
	margin-left: 5px !important;
}
.slick-prev.slick-disabled:hover:before {
	margin-right: 5px !important;
}
.slick-disabled {
	cursor: default;
	color: #687780 !important;
}
.filter-but {
    /*
	position: absolute;
	top: -80px !important;
    right: 0;
    */
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	position: relative;
	/* display: flex; these don't work either
	align-items: center;
	justify-content: center; */
}
.center {
	text-align: center;
}
.load-but,
.alm-load-more-btn {
	position: relative !important;
	margin: 0 auto;
	cursor: pointer;
}
.stories h3 {
    /*
    font-size: 400%;
    */
    font-weight: 300;
    font-size: 310%;
}
article h3 {
	font-size: 400%;
	font-weight: 300;
}
article h3 a {
	text-decoration: none;
	color: inherit;
	display: inline-block;
}
article h3 a:hover {
    opacity: 0.6;
}
.meta {
	padding-top: 40px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.7%;
	font-size: 180%;
	font-weight: 300;
	width: 100%;
    color: #687780;
    position: relative;
}
.single .meta {
    padding-top: 60px;

}
.meta p,
.meta .author-title {
    font-size: 100% !important;
    position: absolute;
    transform: translatey(-100%);
}
.meta .time,
.meta .category {
	displaY: block;
}
.meta li,
.meta p.author-title {
    display: block;
    padding: 5px 0;
}
.layer .category a {
	text-decoration: none;
	color: #687780;
	/* padding: 3px 0; */
	margin: 3px 0;
	border-bottom: 1px solid #041C2C;
}
.layer .category a:hover {
	cursor: pointer;
	color: #041C2C;
}
.layer .category h3 a {
	text-decoration: none;
	border-bottom: none;

}
.stories img {
	width: 100%;
	height: 280px;
	object-fit: cover;
	object-position: 50% 50%; 
}
.stories img:hover {
    opacity: 0.8;
}
.story {
	position: relative;
	align-self: end;
	/* padding-bottom: 20vw; doesn't need padding*/
}
.story-inner {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: auto;
}
.story-inner h3{
	height: 200px;
}
.three-col {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 3.4%;
}
.testimonials {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 3.4%;
}
.stories {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	justify-content: stretch;
	gap: 3.4%;
	grid-auto-columns: 1fr;
	margin-top: 100px;
}
.stories article{
	height: 100%;
}
.two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 3.4%;
}

.layer-find-a-lawyer .two-col {
	margin-top: 110px;
	position: relative;
}
.layer-find-a-lawyer img {
	max-width: 100%;
	object-fit: cover;
	width: 85%; /* width of container */
    height: 85%; /* height of container */
}
.layer-find-a-lawyer h3 {
	color: #687780;
}
.layer-find-a-lawyer p {
	margin-top: 60px;
	font-weight: 300;
}
.layer-find-a-lawyer strong,
.layer-find-a-lawyer b {
	color: #041C2C;
}
.layer-find-a-lawyer .huge {
    font-size: calc(310% + 2vw);
}
.layer-find-a-lawyer .button {
	/*position: absolute;
	bottom: 0;
    left: 0;*/
    position: relative;
    margin-top: 60px;
}
#footer {
    padding: 168px 0;
    margin-bottom: 0 !important;

    overflow: hidden;
    width: 100%;
}
#footer {
	background-color: #041C2C;
}
#footer a,
#footer input,
#footer select,
#footer p,
#footer h3,
#footer h2,
#footer h4 {
	color: white;
}
#footer .inner {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
    grid-template-areas: 
    "a a b b b b b b c d d d" 
    "e e f f g g h h i d d d" 
    "j j k k k k k k l n n n";
    gap: 10.1% 2.7%;
    gap: 0 2.7% !important;
}

#footer .inner > * {
    margin-bottom: 50px;
}
#footerLogo {
    grid-area: a;
    margin-top: -12px;
}
#newsletterSignup {
    position: relative;
	grid-area: d;
}
#footerMenu {
	grid-area: b;
}
#footerMenu ul {
	displaY: grid;
	grid-template-rows: 1fr 1fr 1fr;
	grid-auto-flow: column;
	gap: 0 1.7%;
}
#footerMenu ul li a {
	font-size: 180%;
	text-decoration: none;
	height: 40px;
	width: 1fr;
}
#footer .button.circle a {
	padding-left: 70px;
    margin-right: -70px;
    min-height: 57px;
    display: block;
}
#footerMenu .button a {
	font-size: 100% !important;
}
#footerNavSocial {
	grid-area: h;
}
#footerNavSocial li a {
	displaY: block;
	font-size: 180%;
	text-decoration: none;
	text-decoration: none;
	padding-bottom: 20px;
}
#footerNavSocial li a:before {
	content: "\2192";
	display: inline-block;
	margin-right: 5px;
	color: #9BA4AB;
}
#footer a{
	text-decoration: none;
}
#footer a:hover {
	/* color: #687780; */
	opacity: 0.5;
}
#winnipegAddress {
	grid-area: f;
}

.address p {
	margin-top: 10px;
	font-size: 161%;
	line-height: 1.64;
}
#footer .address a  {
	min-height: 25px;
	display: block;
}
#footer .address a.p-tel,
#footer .address a.u-email {
	display: inline-block;
}
.address strong {
	display: inline-block;
  
	font-size: 130%;
    font-weight: 400;
	line-height: 1;

	margin-top: 0; 
	margin-bottom: 10px;

}

.address .p-adr {
	margin-top: 0
}
#footer h2 {
	font-size: 180%;
}
#footer input {
	margin-top: 20px;
	margin-bottom: 20px;
	height: 70px;
	border-radius: 35px;
	border: 1px solid white;
	line-height: 70px;
	width: 100%;
	font-size: 180%;
	background-color: transparent;
	text-indent: 15px;
    font-weight: 400;
    
    padding: 0 20px;
    text-indent: 0;
    height: 50px;
    line-height: 50px;

    box-sizing: border-box;
    widtH: calc(100% - 60px);
}
#footer input#mc-embedded-subscribe {
    position: absolute;
    top: 44px;
    right: 0;

    margin-top: 0;
    padding: 0;

    width: 50px;
    height: 50px;    
    line-height: 47px;
    text-align: center;

    background-color: white;
    color: black;
}


#meritas {
	grid-area: j;
}
#footer #meritas:hover a{
	color: #041C2C !important;
}
#legalMenu {
	grid-area: k;
}

.service-layer {

    text-align: left;
}
.lawyers-layer.service-layer h3 {
    padding-bottom: 44px;
}
.lawyers-layer.service-layer .lawyers {
    padding-top: 0;
}
.service-layer.skinny-left .two-col  {
    grid-template-columns: 1fr 2fr;
}
.service-layer.skinny-right .two-col  {
    grid-template-columns: 2fr 1fr;
}


/* tighten gap when two col follows any other layer */
.service-layer + .service-two-col {
    margin-top: -50px;
}

.home .layer-statement{
	padding-bottom: 0px;
}
.layer h2{
	font-size: 400%;
}

/* services page */
.page-id-123 .layer-statement{
	padding-bottom: 0px;
}
.layer-statement h3 {
	font-size: 400%;
	font-weight: 300;
	line-height: 1.35;
	color: #687780;
	width: 50%;
}

/* services page */
.service-intro .text {
    text-align: left;
    width: 900px;
    max-width: 100%;
}
.service-two-col .text {
    width: 900px;
    max-width: 100%;

}
.service-intro p{
	font-size: 230%;
	font-weight: 300;
	line-height: 1.35;
    color: #041C2C;
    margin: 23px 0;
}
.service-intro p:first-child {
    margin-top: 0;
}
.service-intro ul li {
	font-size: 230%;
	font-weight: 300;
	margin-left: 20px;
    list-style-type: disc;
    padding: 10px 0;
}
.service-intro ul li li {
	font-size: 100%;
}
.service-intro ul li b,
.service-intro ul li strong {
	font-weight: 400;

}
.service-row .one-col li {
    margin: 23px 0;
    margin-left: 0px;
    padding-right: 16.7888%;
}

.layer-statement strong,
.layer-statement b {
	color: #041C2C;
	font-weight: 600;
}


.layer-one-column .text {
    max-width: 100%;
    widtH: 900px;
}
.layer-one-column .text p,
.layer-one-column li {
    font-size: 230%;
   font-weight: 300;
   margin: 23px 0;
}
.layer-one-column li {
    margin-left: 23px;
	list-style-type: disc;
}
.layer-one-column li li {
    font-size: 100%;
}
.layer-one-column ul ul li {
	list-style-type: circle;
	margin-left: 46px;
	margin-top: 15px;
	margin-bottom: 15px;
}
/* layer two columns */

.layer-two-columns p,
.layer-person .two-col p,
.service-row .two-col li {
	font-weight: 300;
	margin: 23px 0;
	padding-right: 16.7888%;
	font-size: 230%;
}
.service-row .two-col p {
    margin-bottom: 23px;
	font-weight: 300;
}
.service-row .two-col li {
	font-weight: 300;
	margin-left: 20px;
}
.service-row .two-col ul {
	list-style-type: disc;
}
.service-row .two-col ol {
	list-style-type: decimal;
}
.service-row .two-col li li {
	font-size: 100%;
}
/* service-labels */

.service-labels {
	margin-top: 130px;
	padding-bottom: 30px;
}
.service-labels span {
	display: block;
	float: left;
	font-size: 180%;
	color: #687780;
}
.label-open {
    width: 16.66666666666667%;
    /* new */ 
    text-align: right;
}
.label-name {
	width: 50%;
}
.label-sub-practice {
	width: 16.66666666666667%;
}
.label-lawyers {
	width: 16.66666666666667%;
}
/* layer two columns */

.layer-services-header {}
.service-rows {
	width: 100% !important;
	height: auto;
}
.service-rows.inactive {
	display: block !important;
	height: 0;
	overflow: hidden;
}
.layer-services-header .eyebrow {}

.layer-services-header .filters {
	margin-top: 50px;
}

.layer-services-header .filters a,
.layer-services-header .filters button {
	display: inline-block;
	height: 50px;
	line-height: 52px !important;
	width: auto;
	padding: 0 28px;
	margin: 0;
	margin-right: 20px;
	box-sizing: border-box;
	color: white;
	background-color: #041C2C !important;
	border-radius: 25px;
	text-align: center;
	text-decoration: none;
	text-indent: 0;
	font-size: 175% !important;
}

.layer-services-header .filters a.inactive,
.layer-services-header .filters button.inactive {
	background-color: #687780 !important;
	cursor: pointer;
}
.layer-services-header .filters a.active,
.layer-services-header .filters button.active {
	cursor: default;
}

.layer-staff .people-types {
    margin-top: -8px;
}

.layer-staff .people-types button {
	display: inline-block;
	height: 50px;
	line-height: 52px !important;
	width: auto;
	padding: 0 28px;
	margin: 0;
	margin-right: 20px;
	box-sizing: border-box;
    color: white;
    font-weight: 400;
    background-color: #687780 !important;
    
	border-radius: 25px;
	text-align: center;
	text-decoration: none;
	text-indent: 0;
    font-size: 175% !important;
    font-weight: 400;
    cursor: pointer;
    outline: none;
    bordeR: none;
}
.layer-staff .people-types button.active {
    background-color: #041C2C !important;
    color: white;
}



.people-types button:not(.active) {
    opacity: 1;
    font-weight: 400 !important;
    color: white !important;
}
#staffNav-practice.inactive {
    opacity: 0.5;
    font-weight: 400 !important;

}



/* service-row header */
.archive .service-row {
    margin-top: 80px;
}
.service-row .header {
	height: 114px;
	line-height: 114px;
    border-top: 1px solid #687780;
    display: block;
    text-decoration: none;
    transition: background-color .1s ease-out;
}
.page .service-row .header {
	cursor: pointer;

}
.page .service-row .header:hover {
    opacity: 1;
    background-color: rgba(4, 27, 42, 0.05);
}

.tax-practice-area .service-row .header,
.tax-industry .service-row .header {
    border-bottom: 1px solid #687780;
}
.service-row .header .inner {
	display: flex;
	align-items: center;
	align-content: center;
}
.service-row .header .button {
    width: 16.66666666666667%;
    /* new */
    text-align: right;
}
:not(.page) .service-row .header .button {
    width: 100%;
}

.tax-practice-area .service-row .header .button,
.tax-industry      .service-row .header .button,
.tax-practice-area .service-row .header .button .inner-button,
.tax-industry      .service-row .header .button .inner-button,
.tax-practice-area .service-row .header .button button,
.tax-industry      .service-row .header .button button {
    text-align: left;
}
.service-row .header .button:hover,
.service-row a:hover {
    opacity: 0.6;
}
.service-row .header .name {
    width: 50%;
}
.service-row .header .name a {
	text-decoration: none;
}
.service-row .header .sub-practice-count {
	width: 16.66666666666667%;
}
.service-row .header .lawyer-count {
	width: 16.66666666666667%;
}
.service-row .two-col p {
	padding-right: 0;
}
.service-row .sub-practices {
    width: 16.66666666666667%;
    padding-right: 20px;
    padding-top: 10px;
    box-sizing: border-box;
    
	float: left;
	display: block;
}
/* service-row content */

.service-row .service-main {
	width: 83.33333333333333%;
	float: left;
	display: block;
}
.service-row .subheading {
	font-size: 540%;
	font-weighT: 300;
	padding-bottom: 70px;
}
.service-row .stats {
	display: block;
	width: 100%;
	clear: both;
}
.service-row .stat {
	width: 33.333333333%;
	float: left;
	display: block;
}
.service-row .header .button {
	font-size: 100% !important;
	box-sizing: border-box;
	height: 114px;
	cursor: default;
}
.service-row .header .inner-button,
.service-row .header button,
.service-row .header .name,
.service-row .header .sub-practice-count,
.service-row .header .lawyer-count {
	line-height: 1;
	flex-grow: 0;
	flex-shrink: 0;
}
.service-row .header .button .inner-button,
.service-row .header .button button {
	width: 114px;
	height: 114px;
    /* text-align: left; */
    text-align: right;
	background-color: transparent;
	border: none;
	outline: none;
	cursor: pointer;
    position: relative;
    
    font-size: 500% !important;
    font-weight: 300;
    font-family: suisse;
}
.service-row .header .button .inner-button .line,
.service-row .header .button button .line {
	display: block;
	width: 26px;
	height: 3px;
	background-color: #061C2B;
	position: absolute;
	top: 50%;
	left: 0;
	transform-origin: 50% 50%;
	transform: translatey( -50%);
	transition: transform .1s ease-in-out;
}
.service-row .header .button .inner-button .line1,
.service-row .header .button button .line1 {
	transform: translatey( -50%) rotate(90deg);
}
.service-row .header .button .inner-button .line2,
.service-row .header .button button .line2 {
	transform: translatey( -50%);
}
.service-row .header .button .inner-button.on .line1,
.service-row .header .button button.on .line1 {
	transform: translatey( -50%) rotate(135deg);
}
.service-row .header .button .inner-button.on .line2,
.service-row .header .button button.on .line1 {
	transform: translatey( -50%) rotate(45deg);
}
.service-row .header .name {
    font-size: 310%;
    font-weight: 300;
}
.service-row .header .sub-practice-count,
.service-row .header .lawyer-count {
	font-size: 180%;
}
.service-row,
.service-row .content {
	clear: both;
}
.service-row .content {}
.service-row .two-col {
	clear: both;
}




.service-main h1,
.service-row .subheading,
.service-layer,
.service-main .stats {
    padding-top: 0;
    padding-bottom: 0;
    margin: 100px 0 90px;
}
.service-main h1,
.service-row .subheading {
    margin-top: 0;
}
.service-row .content {
	display: block;
	padding-top: 68px;
}
.service-row .content.hide {
	display: block !important;
	height: 0px;
	overflow: hidden;
	padding-top: 0;
}
.sub-practices h4,
.sub-practices a {
	font-size: 180%;
	font-weight: 300;
	line-height: 1.2;
}
.sub-practices h4 {
	padding-bottom: 22px;
}
.sub-practices h4:first-child {
    margin-top: 10px;
}
.sub-practices a {
	display: block;
	padding: 11px 0;
	color: #687780;
	text-decoration: none;
}
.sub-practices a:hover {
	color: #041C2C;
}
/* service-row .stats */
.service-main h1 {
    font-size: 230%;
    font-weight: 400;
}

.service-main .stats .number,
.service-main .stats .text {
	font-weight: 300;
	display: block;
}
.service-main .stats .number {
	font-size: 720%;
}
.service-main .stats .text {
	font-size: 180%;
}
.service-main .testimonial {
	width: 69.51048951048951%;
}
/* service-row .stats */


.service-row .testimonial .quote {
	font-size: 400%;
	font-weight: 300;
	padding-bottom: 40px;
}
.service-row .testimonial .quote:before {
	content: "“";
	position: absolute;
	display: inline-block;
	transform: translatex(-100%);
}
.service-row .testimonial .quote:after {
	content: "”";
}
.service-row .testimonial .quotee-name {
	font-size: 230%;
	font-weight: 500;
}
.service-row .testimonial .quotee-job {
	font-size: 180%;
	font-weight: 300;
}
/* service-row .lawyer-tile card */

.lawyers-layer {
	margin-top: 150px;
}
.lawyers-layer h3 {
	font-size: 180%;
	font-weight: 500;
}
.service-row .lawyers {
	padding-top: 66px;
}
.lawyers .lawyer-tile .lawyer-inner > a {
    display: inline-block;
    background-color: #eee;
}
.lawyers .lawyer-tile .name a {
	color: inherit;
    text-decoration: none;


}
.lawyers .lawyer-tile {
	float: left;
	display: block;
}
.lawyers .lawyer-tile img {
	max-width: 100%;
    height: auto;
    transition: all .1s ease-in-out;
    float: left;

}
.lawyer-tile a:hover img {
    opacity: 0.6;
}
/*because the logo size is a little different */
/*
.lawyers .lawyer-tile img[alt="missing photo"]{
	width: 100%; 
	border: 3px solid #aaaaaa;
}
*/
.lawyers {
	width: 100%;
}

.lawyers.four {
	width: 100%;
}
.lawyers.four .lawyer-tile {
	box-sizing: border-box;
	width: 25%;
	padding-left: 0.7803468208092485%;
	padding-right: 0.7803468208092485%;
    padding-bottom: 75px;
    height: auto;
}
.lawyers.four .lawyer-tile .name {
	font-size: 310%;
	font-weight: 300;
	padding-top: 20px;
	padding-bottom: 5px;
}
.lawyers.four .lawyer-tile .title {
	font-size: 180%;
	font-weight: 300;
	color: #687780;
}


@media screen and (max-width: 800px) {
    .lawyers.four .lawyer-tile {
        width: 100%;
        /* max-width: 240px; */
        max-width: 95%;
        padding-bottom: 35px;

    }

}


.lawyers.five .lawyer-tile {
	padding-right: 0;
	padding-bottom: 0;
    width: auto;
}
.lawyers.five .lawyer-tile .name {
	font-size: 180%;
	font-weight: 300;
	padding-top: 20px;
	padding-bottom: 5px;
	margin-top: 0;
}
.lawyers.five .lawyer-tile .title {
	font-size: 161%;
	font-weight: 300;
	color: #687780;
}


.lawyers.five {
    display: grid !important;
    grid-template-columns: repeat(6, 1fr);
    gap: 20px 3%;
    justify-content: center;
}
@media screen and (max-width: 800px) {
    .lawyers.five {
        grid-template-columns: repeat(4, 1fr);
        gap: 20px 3%;

    }
}

@media screen and (max-width: 600px) {
    .lawyers.five {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px 3%;

    }
}


.lawyer-slideshow,
.lawyers {
	width: 100%;
	position: relative;
}

/* what-we-said */

.what-we-said {
	display: flex;
	justify-content: space-between;
	align-items: center;
	align-content: center;
}
.what-we-said .left,
.what-we-said .left {
	flex-shrink: 0;
	flex-grow: 0;
}
.what-we-said .left {
	float: left;
	width: 48.95104895104895%;
}
.what-we-said .left h3 {
	font-size: 230%;
	font-weight: 400;
}
.what-we-said .left p {
	font-size: 400%;
	font-weight: 300;
	padding-top: 50px;
	padding-bottom: 30px;
}
.what-we-said a {
    text-decoration: none;
    display: inline-block;
}
.what-we-said .right a {

    opacity: 1 !important;
}
/*
.what-we-said .left p:before {
    content: '\201D';
display: inline-block;
transform: translatex(-100%);
}
*/

.what-we-said .left .meta {
	font-size: 161%;
	font-weight: 300;
	padding-top: 0;
}
.what-we-said .right {
	width: 28.67132867132867%;
}



.what-we-said .right a.button.circle {
    text-indent: 0;
    line-height: 1.2;
    position: relative;
    heighT: auto !important;
    display: block;
    padding-left: 60px;
}
.what-we-said .right a.button.circle:before {
    width: 50px;
    height: 50px;
    line-height: 47px;

    position: absolute;
    top: 50%;
    lefT: 0;
    transform: translate(0,-50%);

}



/* where to next */

.where-to-next img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: right bottom;
}
.where-to-next .text {
	width: 74.33526011560694%;
}
.where-to-next .text .eyebrow,
.where-to-next .text p {
	color: white;
}
.where-to-next .text p {
	padding-top: 30px;
	font-weight: 300;
}
.where-to-next .text p a {
	font-weight: 500;
	text-decoration: none;
	color: white;
	border-bottom: 1px solid white;
}

/* single blog post */
.single h1{
    font-size: 710%;
    font-size: 550%;
    letter-spacing: -.01em;
    line-height: 1.112676056338028;
	margin-bottom: 40px;
}
.single .post-content p{
	font-weight: lighter;
	margin: 20px 0 0 0;
	padding: 0;
}
/* THIS IS UGLY, SEE IF THE HTML CODE CAN BE CHANGED TO BE NOT INLINE */
.single .post-content p[style="padding-left: 40px;"] {
	color: #687780;
	padding: 40px 0;
}
/*adjacent siblings*/
.single .post-content p[style="padding-left: 40px;"] + p[style="padding-left: 40px;"]{
	padding-top: 0;
}

.single .inner .news-meta img {
    width: 100%;
}
.single .inner img{
    max-width: 100%;
	width: auto;
    height: auto;
}
.single .inner .post-content img {
    padding: 10px 0;

}
.stories .story-inner img {
    width: 100%;
	height: 340px;
    object-fit: cover;
    object-position: top;

}



/* insights typography */

.single .post-content h2,
.single .post-content h3,
.single .post-content h4,
.single .post-content h5,
.single .post-content h6 {


}

.single .post-content h2 {
    font-size: 400%;
    font-weight: 500;

    margin-top: 60px;
    margin-bottom: 20px;
}
.single .post-content h3 {
    font-size: 310%;
    font-weight: 500;

    margin-top: 60px;
    margin-bottom: 20px;
}
.single .post-content h4 {
    font-size: 230%;
    font-weight: 500;

    margin-top: 60px;
    margin-bottom: 20px;
}
.single .post-content h5 {
    font-size: 180%;
    font-weight: 600;

    margin-top: 60px;
    margin-bottom: 20px;
}
.single .post-content h6 {
    font-size: 180%;
    font-weight: 600;

    margin-top: 60px;
    margin-bottom: 20px;
    color:#687780;
}



.single .post-content ul {
    list-style-type: disc;
	margin-left: 20px;
}
.single .post-content ul ul {
	margin-top: 10px;
	margin-bottom: 20px;
	list-style-type: circle;
}
.single .post-content ul ul ul {
	list-style-type: square;
}
.single .post-content ol {
	list-style-type: decimal;
}
.single .post-content ol ol {
	margin-top: 10px;
	margin-bottom: 20px;
	list-style-type: lower-latin;
}
.single .post-content ol ol ol {
	list-style-type: lower-roman;
	margin-left: 20px;
}
.single .post-content ol ol,
.single .post-content ul ol {
	list-style-type: lower-roman;
}
.single .post-content ul li,
.single .post-content ol li {
	margin-left: 1em;
	text-indent: 0;
}
.single .post-content li li {
    font-size: 100%;
} 
.single .post-content ul,
.single .post-content ol {
    margin: 20px 0 30px 0;
    padding-left: 0;
    list-style-position: outside;

}
.single .post-content ul {
	list-style-type: disc;
}
.single .post-content ol {
	list-style-type: decimal;
}
.single .post-content ul ul,
.single .post-content ol ul,
.single .post-content ol ul,
.single .post-content ol ol {
	margin: 30px 0;
}

.single .post-content li {
    font-size: 230%;
    font-weighT: 300;
    margin: 10px 0;
}

.single .post-content li li {
    font-size: 100%;
}


/* new advanced insight layout */
.single .advLayout {
    clear: both;
    margin: 60px 0;
    min-width: 620px;
}
.single .advLayoutActive.news-meta {
    min-width: 620px;
 
}

.single .advLayout p {
    margin: 30px 0;
}



.advLayout-grid-of-people {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
    gap: 30px;
}
.advLayout .adv-grid-item p {
    margin: 0;
    margin-top: 0;
    padding: 0;
    font-size: 180%;
    padding-top: 3px !important;
}
.advLayout .adv-grid-item p.title {
    font-size: 161%;
}

.adv-grid-item img {
    width: 100%; 
    height: auto;
    padding: 0 !important;
}

.advLayout-four-column p {
	margin: 0 !important;
}

@media screen and (min-width: 1025px) {
    .single .advLayout-one-column > *,
    .single .advLayout-two-column .adv-col > *,
	.single .advLayout-four-column .adv-col > * {
        margin-top: 0;
    }
    .single .advLayout-two-column .adv-col {
        box-sizing: border-box;
        width: 50%;
    }
	.single .advLayout-four-column .adv-col {
        box-sizing: border-box;
        width: 25%;
    }
    .single .advLayout-two-column .adv-col1,
	.single .advLayout-four-column .adv-col1,
	.single .advLayout-four-column .adv-col2,
	.single .advLayout-four-column .adv-col3 {
        padding-right: 30px;
        float: left;
    }
    .single .advLayout-two-column .adv-col2,
	.single .advLayout-four-column .adv-col4{
        padding-left: 30px;
        float: right;
    }
}


@media screen and (max-width: 1200px) and (min-width: 700px) {
	.single .advLayout-four-column .adv-col {
        box-sizing: border-box;
        width: 50%;
    }

	.single .advLayout-four-column .adv-col1,
	.single .advLayout-four-column .adv-col3 {
        padding-right: 30px;
        float: left;
    }

	.single .advLayout-four-column .adv-col2,
	.single .advLayout-four-column .adv-col4{
        padding-left: 30px;
        float: right;
		padding-right: 0;
    }
}

@media screen and (max-width: 1024px) {
    .single .advLayout,
    .single .advLayoutActive.news-meta {
        min-width: auto;
    }

}



/* to target images folks put in themselves */
.single-person .inner p img{
	width: auto;
}
.single .inner img.attachment-post-thumbnail{
	/* padding-bottom: 40px; */
}
.single .inner .meta{
	display: flex;
	justify-content: space-between;
	padding-bottom: 40px;
}




/* people */


.layer-staff header {}
.layer-staff header .label {
	font-size: 180%;
	font-weight: 300;
	float: left;
	box-sizing: border-box;
}
.layer-staff header .label-staff {
	width: 50%;
	padding-left: 0.7803468208092485%;
}
.layer-staff header .label-filter {
	width: 25%;
	padding-left: 0.7803468208092485%;
}
.layer-staff header .label-search {
	width: 25%;
}
.layer-staff nav {
	displaY: block;
	padding-bottom: 100px;
}


#staffNav {
    width: 100%;
    display:grid;
    grid-template-columns: 2fr 1fr 1fr;
    grid-gap: 1.560693641618497%;

}
#staffNav form {
    width: 100%;
}



.layer-staff nav form input,
.layer-staff nav form select {
	box-sizing: border-box;
	height: 36px;
	line-height: 34px;
	width: 100%;
	border-radius: 18px;
	padding: 0;
	text-align: left;
	text-indent: 11px;
	box-sizing: border-box;
	border: 1px solid #041C2C;
	background-color: transparent;
	font-size: 161%;
	-webkit-appearance: none;
	-moz-appearance: none;
	position: relative;
}
.layer-staff nav form select {
	background-image: url('img/arrow-down.svg');
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 35px 35px;
}
.layer-staff nav form input {
	color: #687780;
}
.layer-staff nav form input:active,
.layer-staff nav form input:focus {
	color: #041C2C;
}

.layer-person .content {}
.layer-person .content .image {
	width: 32.02312138728324%;
	float: right;
}
.layer-person .content .image img {
	width: 100%;
	height: auto;
}
.layer-person .content .main {
	width: 65.78034682080925%;
	float: left;
}
.layer-person .back-link {
    font-size: 180%;
    padding-bottom: 40px;
    display: block;
}
.layer-person .back-link a {
	font-size: 100%;
}
.layer-news-single nav {
    width: 33.79710144927536%;
    float: left;
}

header p.latest-news-header {
    width: 49.15942028985507%;
    float: none;
    font-size: 400%;
    font-weight: 300;
    color:  #687780;
    margin-bottom: 50px;

}
header p.latest-news-header strong{

    font-weight: 500;
    color:  #041C2C;

}


.single .layer-news-single > .inner article {
    width: 49.15942028985507%;
    margin-left: 33.79710144927536%;

}




@media screen and (max-width: 1024px) {
    header .back-link,
    header p.latest-news-header,
    .single .layer-news-single > .inner article {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        margin-left: 0;
        margin-right: 0;
}
.layer-news-single nav {
    width: 100%;
    float: none;
	margin-bottom: 30px;
}
}



.back-link a {
	text-decoration: none;
	border-bottom: 1px solid #041C2C;
    color: #041C2C;
    font-size: 180%;
}
.layer-person .name {
	margin-top: 25px;
	font-size: 710%;
	font-weight: 300;
	line-height: 1;
    margin-bottom: 0;
}
.layer-person .title {
	margin-top: 10px;
	font-size: 310%;
	font-weight: 300;
	color: #687780;
}
.layer-person .intro {
	box-sizing: border-box;
	margin-top: 50px;
	font-size: 310%;
	font-weight: 300;
	padding-right: 47.63157894736842%;
}
.layer-person .network {
	margin-top: 70px;
}
.layer-person .network-section {
	border-top: 1px solid #9BA4AB;
	padding: 10px 0;
}
.layer-person .network-section:first-child {
	border-top: none;
}
.layer-person .network-section .logo {
	width: 23.19859402460457%;
	padding-right: 2.636203866432337%;
	float: left;
}
.layer-person .network-section h3,
.layer-person .network-section .logo,
.layer-person .network-section a {
	display: block;
	font-size: 180%;
	font-weight: 300;
	margin: 10px 0;
}
.layer-person .network-section .links {
	width: 74.69244288224956%;
	float: right;
}
.layer-person .network-section h3 {
	width: 23.19859402460457%;
	float: left;
}
.layer-person .network-section a {
	width: 50%;
	float: left;
	color: #607079;
	text-decoration: none;
}

.layer-person .network-section a:hover, 
.layer-person .aside li a:hover {
    opacity: 0.6 !important;
}


.layer-person .network h3,
.layer-person .network .logo {
	font-weight: 400;
}
.layer-person .content2 {
	margin-top: 70px;
}
.layer-person .content2 .bio {
    /*

        */

        width: 65.78034682080925%;
        float: left;
}
.layer-person .content2 .bio .bioInner {

	box-sizing: border-box;
	padding-right: 21.52230971128609%;
}
.layer-person .content2 .aside {
	width: 32.02312138728324%;
	float: right;
}

.layer-person .content2 .bio p {
	font-size: 230%;
	font-weight: 300;
    margin: 18px 0;
}

.layer-person .content2 .bio .person-testimonial {
    font-size: 90%;
}

.layer-person .content2 .bio .person-testimonial p.quote {
    /* font-style: italic; */
    
}


.layer-person .education {
	width: 100%;
}
.layer-person .education ul {
	padding-top: 30px;
}
.layer-person .practice-areas,
.layer-person .industries {
    width: 100%;
    float: none;
    padding-right: 0;
    box-sizing: border-box;
}
.layer-person .practice-areas.dont-split-columns,
.layer-person .industries.dont-split-columns {


    width: 50%;
    float: left;
    padding-right: 5%;
    box-sizing: border-box;
}
.layer-person .practice-areas {
	margin-top: 140px;
}
.layer-person .industries {
	margin-top: 140px;
}
.layer-person .aside h2 {
	font-size: 310%;
	font-weight: 300;
}
.layer-person .bio li {
	margin-left: 20px;
	list-style: disc;
}
.layer-person .aside li,
.layer-person li {
	font-size: 180%;
	font-weight: 300;
    margin-bottom: 14px;
    margin-top: 30px;
    
    -webkit-column-break-inside: avoid;
          page-break-inside: avoid;
               break-inside: avoid;

}
.layer-person .aside li:first-child,
.layer-person li:first-child {
	margin-top: 0;
}
.layer-person .aside ul ul li,
.layer-person ul ul li{
    margin-top: 0;

}
.layer-person .aside .industries ul{
	margin-top: 30px;
}
.layer-person .aside li a {
	/* margin: 30px 0 10px; */
	margin: 0 0 10px;
	text-decoration: none;
	padding-left: 30px;
	display: block;
	color: #687780;
	position: relative;
}
.layer-person .aside ul {
	padding-left: 0;
	margin-left: 0;
}
.layer-person .aside .practice-areas ul {
	column-count: 2;
	column-width: 200px;
	margin-top: 30px;
}
.layer-person .aside .practice-areas ul ul {
	margin-top: 0;
	margin-bottom: 30px;
}
.layer-person .aside .practice-areas.dont-split-columns  ul,
.layer-person .aside .industries.dont-split-columns  ul {
	column-count: 1;
}
.layer-person .aside ul .children{
	column-count: 1;
}
.layer-person .aside li li a {
	color: #061C2B;
	margin-top: 7px;
}
.layer-person .aside li a:before {
	content: '→';
	position: absolute;
	top: -2px;
	left: 0;
	display: block;
}
@media reader, speech, aural {
    .layer-person .aside li a:before {
        content: "";
    }    
} 
.layer-person .aside li li a:before {
	content: '';
	display: none;
}
.layer-person .aside li li {
	font-size: 100%;
}
.layer-person .accordion-sections {
	margin-top: 160px;
}
.layer-person .accordion-sections .section {
	border-top: 1px solid #9BA4AB;
}
.layer-person .accordion-sections .section ul ul{
	padding-left: 40px;
}
.layer-person .accordion-sections .section-header {
	padding: 20px 20px;
	position: relative;
}
.layer-person .accordion-sections .section-header {
    background-color: none;
    outline: none;
    width: 100%;
    text-align: left;
    font-size: 100%;
    border: none;
    cursor: pointer;

    transition: all 0.2s cubic-bezier(.42,.19,.02,.99);

}
.layer-person .accordion-sections .section-header:hover {
    background-color: rgba(4, 27, 42, 0.05);
    padding: 20px;

}
.layer-person .accordion-sections .section-header:hover .button { 
    right: 20px;

}
.layer-person .accordion-sections .section-header.expanded:hover .button { 
    right: 20px;

}
.layer-person .accordion-sections .section-header.expanded {
    background-color: transparent;
    padding: 20px 20px;

}
.layer-person .accordion-sections .section-header .button {
	outline: none;
	border: none;
	background-color: transparent;
	font-size: 230%;
	display: block;
	position: absolute;
	top: 20px;
	right: 20px;
    cursor: pointer;
    
    transition: all 0.2s cubic-bezier(.42,.19,.02,.99);

}
.layer-person .accordion-sections .section-header.expanded .button {
    transform: rotate(45deg);
}



.layer-person .accordion-sections .section-header h3 {
	font-size: 230%;
}
.layer-person .accordion-sections .section-content {
	padding: 20px;
}
.layer-person .accordion-sections .section-content a:hover {
    color: #9BA4AB;
}

.layer-two-columns.alt-layout h2 {
	width: 31.29411764705882%;
	float: left;
	font-weight: 500;
	font-size: 230%;
}
.layer-two-columns.alt-layout p {
	width: auto;
	margin: 0;
	margin-left: 34.58823529411765%;
	padding-right: 0;
	float: none;
	color: #687780;
}
.layer-monster-links {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.layer-monster-links .row:last-child {
	border-bottom: 1px solid #687780;
}
.layer-monster-links .row {
	border-top: 1px solid #687780;
}
.layer-monster-links a {
	font-size: 710%;
	font-weighT: 300;
	padding: 41px 0;
	display: block;
	color: #687780;
	text-decoration: none;
}
.layer-monster-links .row:hover {
    background-color: rgba(4, 27, 42, 0.05);
}
.layer-monster-links a .arrow {
	float: right;
}
.layer-news-header {
    margin: 60px 0;
}
.layer-news-extended {
    margin-top: 60px;
}
.layer-news {
	padding-top: 0;
}
.layer-news-extended {
	padding-top: 0;
}
.layer-news-extended article {
	position: relative;
	border-top: 1px solid #687780;
	padding: 40px 0;
}
/*
.layer-news-extended article:last-of-type {
	border-bottom: 1px solid #687780;
}
*/
.layer-news-extended .meta {
	padding-top: 60px;
	grid-template-columns: 3fr 2fr;
}
.layer-news-extended .meta .time {
	float: left;
}
.layer-news-extended .meta .category {
	float: right;
}
.layer-news-extended .button {
	position: absolute;
	top: 30px;
    right: 0;
    padding: 0 25px;
    width: auto !important;
}
.layer-news-extended .button {
    padding-left: 0;
}
.layer-news-extended .button a {
	color: #041C2C;
    text-decoration: none;
    display: block;
}
.layer-news-extended article .text {
	width: 40.63583815028902%;
}
.layer-news-single {
    margin: 50px 0;
}
.layer-person,
.layer-news-single.first-layer,
.service-layers,
.layer-search-results-header
 {
    margin-top: 0 !important;
    padding-top: 200px !important;
}

/* footer */

#legalMenu {}
#legalMenu ul {
	width: 100%;
	display: grid;
	grid-template-columns: repeat( 3, 1fr);
	gap: 40px;
}
#legalMenu li a {
	width: 100%;
	font-size: 161%;
	text-decoration: none;
}
#interlakeAddress {
	grid-area: g;
}
#footer small {
	font-size: 161%;
	font-weight: 400;
	line-heighT: 1.66;
	color: white;
	display: block;
}
#newsletterSignup small {
	opacity: 0.61;
}
#newsletterSignup small:hover {
	opacity: 1;
}
#copyright {
	grid-area: n;
	font-size: 161%;
}
.mask {
	display: block;
	overflow: hidden;
}
#header .mask {
	display: inline-block;
}
.huge .mask .text {
	display: block;
}
.huge .mask.show .text {
	bottom: 0;
}
/* mediaquery ----------------------------------------------------*/

@media screen and (max-width: 1400px) and (min-width: 801px) {
	#footerNavSocial {
		display: none;
	}
	#footer .inner {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-template-areas: "a b b" "c d e" "f g g" "m j j" "k l r" "n o r" "p q q";
		gap: 50px 3.4%;
    }

	#footerLogo {
		grid-area: a;
	}
	#footerMenu {
		grid-area: b;
	}
	#winnipegAddress {
		grid-area: d;
	}
	#interlakeAddress {
		grid-area: e;
	}
	#newsletterSignup {
		grid-area: j;
	}
	#legalMenu {
		grid-area: l;
	}
	#meritas {
		grid-area: q;
	}
	#copyright {
		grid-area: o;
	}
	
	.inner,
	.layer-testimonials .inner {
		width: 90%;
		padding-left: 0;
		padding-right: 0;
    }
    #header .inner {
        width: 100%;
        padding-left: 5%;
        padding-right: 5%;
        box-sizing: border-box;
    }
	#header,
	.layer {
		width: 100%;
	}
	#legalMenu {
		display: block;
	}
	#legalMenu li {
		width: auto;
		display: inline;
	}
	#footerNavSocial {
		display: block;
		grid-area: r;
	}
}








/* mediaquery ----------------------------------------------------*/

@media screen and (max-width: 1200px) {
	#header {
		transition: all .1s ease-out;
	}
	#header nav {
		display: block;
		top: 80px;
		background-color: white;
		padding: 5%;
		position: absolute;
		width: 100vw;
		left: 0;
		margin-left: 0;
		righT: 0;
		box-sizing: border-box;
		height: 100vh;
		height: calc(100vh - 80px);
	}
	#header nav {
		display: none;
	}
	#header nav ul {
		display: block;
	}
	.expand #header nav {
		display: block;
	}
	.expand #header {
		background-color: white;
    }
    #header nav li {
        displaY: block;
        position: relative;
    }
	#header nav li a {
		display: block;
		width: 100%;
		color: #041C2C;
        font-size: 340%;
        font-weight: 500;
		padding: 0;
        line-heighT: 1.1;
        height: auto;
        padding: 10px 0;
    }
    #header nav li a:before,
    #header nav li a:after,
    #header nav li a:hover:before,
    #header nav li a:hover:after {
        margin: 0;
        padding: 0;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
        transform: none;
        content: "";
        background-color: transparent;
        display: none;
    }
    #header nav li .sub-menu,
    #header nav li:hover .sub-menu {
        display: none;
    }



    #header nav {
        transition: left 1s ease-in-out;
    }
    #header nav.opendrawer {
        left: -100vw;
    }
    #header nav.opendrawer li.menu-item-has-children .sub-menu.show  {
        left: 0;
        z-index: 20000;
    }









	.expand #siteLogo svg path {
		fill: #041C2C;
	}
	#searchButton {
		position: absolute;
		top: 10px;
		right: calc(5vw + 45px);
	}
	#menuButton {
		position: absolute;
		top: 10px;
		right: calc(5vw - 10px);
		display: block;
	}
	.expand #searchButton {
		background-image: url('img/search-blue.svg');
	}
	.expand #menuButton {
		background-image: url('img/menu-blue.svg');
	}
	.menuButton {
		display: block !important;
	}
	#payBillButton {
		width: auto;
		position: absolute;
		left: auto;
		top: auto;
		z-index: 1000000;
		right: 0;
		top: calc(100vh - 5vw - 60px);
	}
	#header #payBillButton {
		background-color:white;
		color:  #041C2C !important;
		margin-left: auto;
		display: none;
    }
    #header #payBillButton:hover {
		background-color: #041C2C;
		color:  white !important;

	}
	.expand #header #payBillButton {
		display: block;
    }
    @media screen and (max-width: 1200px) {
        #header #payBillButton {
            color: white !important;
        }
    }
	/* .layer {
		padding-top: 90px;
		padding-bottom: 90px;
	} */
	.layer-hero {
		height: 554px;
		padding-bottom: 25px;
	}
	.layer-hero h2 {
		margin-top: 20px;
	}
	.layer-hero .button {
		margin-top: 20px;
	}
	.huge {
		font-size: 350%;
		letter-spacing: -0.5px;
	}
	.layer-find-a-lawyer .two-col {
		display: block;
		margin-top: 36px;
	}
	.layer-find-a-lawyer .button {
		position: relative;
		bottom: auto;
		left: auto;
		margin-top: 60px;
		margin-bottom: 30px;
    }
    









}


/* mediaquery ----------------------------------------------------*/

@media screen and (max-width: 800px) {
	/*
    html {
        background: #041C2C;
        text-align: center;
    }
    body {
        width: 375px;
        margin: 0 auto;
        background-color: white;
    }
    */
	#header nav {
		display: none;
	}
	#siteLogo {
		width: 106.35px;
		height: 24px;
		background-size: 106.35px 24px;
		position: absolute;
		/* top: 0; */
	}
	#header {}
	#header,
	.layer {
		width: 100%;
	}
	.inner,
	.layer-testimonials .inner {
		width: 90%;
		padding-left: 0;
		padding-right: 0;
    }
    #header .inner {
        width: 100%;
        padding-left: 5%;
        padding-right: 5%;
        box-sizing: border-box;
    }
	.layer-three-col h3 {
		font-size: 230%;
	}
	.layer-three-col p {
		font-size: 180%;
	}
	.three-col {
		display: block;
	}
	.three-col .col {
		padding: 36px 0 44px;
	}
	.layer-three-col h3 {
		margin-top: 0;
	}
	.layer-three-col p {
		margin-top: 30px;
	}
	.nav-in-layer {
		display: none;
	}
	.layer-news .nav-in-layer {
		display: block;
	}
	.layer-testimonials {
		padding-bottom: 0;
	}
	.layer-testimonials .nav-in-layer,
	.layer-testimonials .slick-next,
	.layer-testimonials .slick-prev {
		display: none !important;
	}
	.testimonials {
		padding-top: 46px;
		padding-bottom: 30px;
	}
	.testimonials .quote {
		font-size: 180%;
	}
	.testimonials .quotee-name,
	.testimonials .quotee-job {
		font-size: 180%;
	}
	.testimonials .quotee-job {
		margin-top: 2px;
	}
	.testimonials:after {
		content: " ";
		display: block;
		background-color: #9BA4AB;
		width: 100px;
		height: 2px;
		position: absolute;
		bottom: 0;
		left: -15px;
	}
	.layer-news h2 {
		width: 50%;
	}
	.layer-news .story-inner h3{
		height: auto;
		margin-bottom: 20px;
	}
	.stories {
		margin-top: 60px;
		display: block;
	}
	.story {
		width: auto;
		border-top: 2px solid #687780;
		padding-top: 20px;
		padding-bottom: 60px;
	}
	.stories img {
		width: 100%;
		height: 300px;
    }
	.meta {
		padding-top: 15px;
		font-size: 161%;
    }
	.layer-newa .story-inner .meta{
		height: 100px;
	}
	.layer-news {
		padding-bottom: 0;
	}
	.layer-news .nav-in-layer {
		display: block;
	}
	.layer-news .nav-in-layer .label {
		display: none;
	}
	.layer-find-a-lawyer {
		padding-bottom: 80px;
	}
	.layer-find-a-lawyer h3 {
		margin-top: 55px;
	}
	.layer-find-a-lawyer p {
		margin-top: 15px;
	}
	.layer-find-a-lawyer .button {
		margin-top: 60px;
	}
	.two-col .image {
		margin-top: 20px;
	}
	.two-col .image img {
		width: 100%;
	}
	#footer .inner {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-template-areas: "a a" "b b" "b b" "e p" "f q" "h h" "i i" "j j" "k k";
		gap: 50px 30px;
	}
	#footerNavSocial {
		display: block;
		grid-area: p;
	}
	#footer input {
		margin: 20px 0;
		font-size: 161%;
		height: 36px;
        line-height: 36px;
        widtH: calc(100% - 40px);
    }
    #footer input#mc-embedded-subscribe {
        position: absolute;
        top: 44px;
        right: 0;
    
        margin-top: 0;
        padding: 0;
    
        width: 36px;
        height: 36px;    
        line-height: 34px;
        text-align: center;
    
        background-color: white;
        color: black;
    }
	#footerMenu ul li a {
		height: 36px;
		display: inline-block;
	}
	#siteLogo {
		grid-area: a;
	}
	#footerMenu {
		grid-area: b;
		position: relative;
	}
	#footer .button.circle {
		position: absolute;
		top: 0;
		right: 0;
		width: 50%;
	}
	#footerMenu ul {
		display: block;
	}
	#winnipegAddress {
		grid-area: e;
	}
	#interlakeAddress {
		grid-area: f;
	}
	#newsletterSignup {
		grid-area: h;
		margin-bottom: 30px;
	}
	#legalMenu {
		grid-area: i;
	}
	#copyright {
		grid-area: j;
		margin-bottom: 30px;
	}
	#meritas {
		grid-area: k;
	}

	.stories img {
		position: relative;
		bottom: auto;
	}
}
.twoCol {
	displaY: flex;
	justify-content: space-between;
}
.twoCol .col {
	width: 48.95104895104895%;
}
.twoCol .col p:first-child {
    margin-top: 0;
    padding-top: 0;
}
.standard-type .twoCol {
	margin-bottom: 50px;
}
.standard-type h2 {
	margin: 30px 0;
	font-size: 300%;
	font-weight: 400;
	margin: 30px 0;
	margin-top: 60px;
}
.standard-type h3 {
	margin: 30px 0;
	font-size: 260%;
	font-weight: 500;
	margin-top: 40px;
}
.standard-type small {
	font-size: 180%;
	font-weight: 400;
	color: #687780;
}
.standard-type p small,
.post-content p small {
	font-size: 78.26086956521739%;
}
.post-content p small {
	display: block;
	padding-top: 30px;

	font-weight: 400;
	font-style: italic;
}
.standard-type p,
.standard-type li {
	font-size: 230%;
	font-weight: 300;
	margin: 25px 0;
	color: #687780;
}
.standard-type li {
	margin: 15px 0;

}
.standard-type p a,
.standard-type li a {
	color: #041C2C;
	font-weight: 400;
	text-decoration: underline;
}
.standard-type p a:hover,
.standard-type li a:hover {
	opacity: 0.6;
}
.standard-type strong {
    color: #041C2C;
    font-weight: 500;
}
/* lists */

.standard-type ul,
.standard-type ol {
	margin-left: 24px;
	margin-top: 20px;
	margin-bottom: 30px;
	margin-bottom: 50px;
}
.standard-type ul {
	list-style-type: disc;
}
.standard-type ol {
	list-style-type: decimal;
}
.standard-type ul ul {
	margin-top: 10px;
	margin-bottom: 20px;
	list-style-type: circle;
}
.standard-type ul ul ul {
	list-style-type: square;
}

.standard-type ol ol {
	margin-top: 10px;
	margin-bottom: 20px;
	list-style-type: lower-alpha;
}
.standard-type ol ol ol {
	list-style-type: lower-roman;
	margin-left: 20px;
}
.standard-type ol ol,
.standard-type ul ol {
	list-style-type: lower-roman;
}
.standard-type ul li,
.standard-type ol li {
	list-style-position: outside;
	margin-left: 0;
	text-indent: 0;
}
.standard-type li li {
    font-size: 100%;
} 

.standard-type ul ul,
.standard-type ol ul,
.standard-type ol ul,
.standard-type ol ol {
	margin: 30px 0;
}

.layer.page-secondary {
    padding: 0;
    margin: 115px 0;
}
.page-secondary .margin-title {
	float: left;
	margin-top: 0;
}

.page-secondary.margin-two .content {
    margin-left: 16.71520093185789%;
}
.page-secondary.margin-two .margin-title {
	width: 15.43389633080955%;
}

.page-secondary.margin-three .content {
	margin-left: 25.23255813953488%;
}
.page-secondary.margin-three .margin-title {
	width: 23.93709959231217%;
}

.page-secondary.margin-four .content {
	margin-left: 34.3622597553873%;
}
.page-secondary.margin-four .margin-title {
	width: 32.6150262085032%;
}

.page-secondary.margin-two .content {
    margin-left: 16.71520093185789%;
}
.page-secondary.margin-two .margin-title {
	width: 15.43389633080955%;
}


.page-secondary .basic-medium-width {
    widtH: 48.88579387187%;
}



.page-secondary img,
.page-secondary .twoCol {
    margin: 80px 0;
}
.page-secondary .twoCol li,
.layer .two-col li {
    /* font-weight: 500; */
    color: #041C2C;
}
.page-secondary .margin-title strong,
.page-secondary .margin-title b {
	font-weight: 500;
	color: #041C2C;
}
.page-secondary.form-layer #winnipegAddress a,
.page-secondary.form-layer #interlakeAddress a,
#contact-social_links a{
	color: #607079;
}
.contact-blocks {
	display: flex;
}
.contact-h2{
	margin-left: 9%;
	margin-bottom: -70px;
	color: #607079
}
.contact-block {
	width: 200px;
	padding-right: 50px;
}
.contact-block p {
	font-size: 160%;
	font-weight: 400;
	line-height: 1.6;
}
.contact-block p a {
	color: #041C2C;
	font-weight: 500;
}



/* mlayer-contact ----------------------------------------------------*/
.layer-contact  {

}
.layer-contact .left {
    width: 57.64090644973852%;
    float: left;
}
.layer-contact .right {
    width: 32.19058686809994%;
    float: right;
}

.layer-contact .findus-left {
    width: 48.99387576552931%;
    float: left;
    padding-right: 5%;
    box-sizing: border-box;
}
.layer-contact .findus-right {
    width: 48.99387576552931%;
    float: right;
}
@media screen and (max-width: 1200px) {
    .layer-contact .left,
    .layer-contact .right {
        width: auto;
        float:none;
        margin-bottom: 50px;
    }
}

.layer-contact .inner {
    width: 85%;
    max-width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: left;
    position: relative;
}
@media screen and (max-width: 930px) {
    .layer-contact .inner {
        width: 90%;
    }
    .please-park .findus-left,
    .please-park .findus-right {
        width: auto;
        float:none;
        margin-bottom: 50px;    
    }
}
@media screen and (max-width: 640px) {

    .findus .findus-left,
    .findus .findus-right {
        width: auto;
        float:none;
        margin-bottom: 50px;    
    }
}
.contact-text_box p{
	padding-bottom: 20px;
	font-size: 180%;
}
.contact-text_box a{
	color: #607079;
	padding-bottom: 20px;
}


.findus-inner {
    margin-top: 50px;
}
.layer-contact h2 {
	font-size: 400%;
    margin-bottom: 18px;
    color: #607079;
}

.layer-contact h3,
.layer-contact h4 {
	font-size: 300%;
    margin-top: 0;
    margin-bottom: 18px;
	color: #607079;
}
.layer-contact .left p {
	font-size: 210%;
	font-weight: 300;
}


#contact-social_links a{
	display: block;
	font-size: 180%;
	padding-bottom: 20px;
}

/* mediaquery ------------------  */
@media screen and (max-width: 1500px) and (min-width: 1201px){
	#header nav li a{
		padding: 0 1.6vw;
	}

	#header nav li.menu-item-has-children a:after{
		right: 0;
	}
}

/********************************************
    Timelines Milestones
********************************************/

.milestone {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    min-height: 300px;
    height: 100%;
}

.milestone:nth-child(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.milestone:nth-child(even) .content {
	/* we don't want these ones with year to the side of the paragraph,
	so no flex */
    /* display: -webkit-box;
    display: -ms-flexbox;
    display: flex; */
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.milestone .content {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.milestone h2 {
    font-size: 650%;
    line-height: 1;
    letter-spacing: -2.75px;
    font-weight: 400;
    display: inline-block;
    width: 140px;
    vertical-align: top;
}

.milestone p {
    display: inline-block;
	padding-top: 40px;
	vertical-align: top;
	color: #687780;
}

.milestone:nth-child(even) p {
    padding-left: 0 !important;
    padding-right: 40px;
}

.milestone .content,
.milestone .image {
    width: calc(50% - 4px);
    padding: 100px 77px 200px 77px;
}

.milestone .image {
	margin-top: -100px;
	max-width: 1024px;
    height: auto;
    box-sizing: border-box !important;
}
.milestone .image img {
	width: 100%;
}

.milestone .line {
    /* border-left: 2px solid rgba(86, 88, 79, .37); */
    position: relative;
    background-color: rgba(86, 88, 79, .37);
    width: 2px;
}

/* square decoration */
.milestone .line:before {
    display: block;
    content: '';
    width: 18px;
    height: 18px;
    border: 4px solid #000000;
    background-color: #000000;
    box-sizing: border-box;
    
	/* uncomment if you want diamonds instead of squares!*/
    /* -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); */

    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;

    position: absolute;

    left: 50%;
    /* right: -11px; */
    transform: translatex(-50%);

    top: 120px;
}

.milestone:first-child .content {
    padding-top: 0px;
}
.milestone:first-child .line:before {
    top: 0;
}
.milestone:first-child {
    margin-top: 300px;
}
.milestone:first-child img{
    margin-top: -100px;
}


@media screen and (max-width: 900px) {
    .milestones {
        margin-top: 50px;
    }

    .milestone .content,
    .milestone .image {
        padding: 60px 40px 100px 40px;
    }

    .milestone .image,
    .milestone:first-child .image {
        margin-top: 0;
    }
}

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

    .milestone {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        height: auto;
        position: relative;
	}
	.milestone:first-child {
		margin-top: 100px;
	}
	.milestone:first-child img {
		margin-top: -150px;
	}

    .milestone .line {
        position: absolute;
        left: 20px;
        height: 100%;
    }
    .milestone .line::before {
        top: 140px;
    }

	
    .milestone .image {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        width: 90% !important;
        padding: 60px 60px 0 60px !important;
    }

    .milestone .content {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        width: 80%;
        padding: 50px 40px 50px 60px !important;
    }

    .milestone h2 {
        font-size: 550%;
    }
}

.event-details{
    /*
    width:70%;
    */
    margin-top: 100px;
}
.event-details_row{
    /*
    display: grid;
	grid-template-columns: 50% 50%;
    
    */

    padding-bottom: 30px;
}
.event-details_row .left,
.event-details_row .right{
    width: 50%;
    padding-right: 5%;
    box-sizing: border-box;
}
.event-details_row .left {
    float: left;
}
.event-details_row .right {
    float: right;
}
@media screen and (max-width: 1024) {
    .event-details_row .left,
    .event-details_row .right{
        width: 100%;
        float: none;
        padding-right: 0;
    }
}
.eventbutton {
    display: block;
    float: left;
    clear: left;
    height: 50px;
    line-height: 52px !important;
    width: auto;
    padding: 0 20px;
    margin: 0;
    margin-top: 30px;
    box-sizing: border-box;
    background-color: #041C2C;
    color: white !important;
    border-radius: 25px;
    text-align: center;
    text-decoration: none;
    text-indent: 0;
    font-size: 165% !important;
    font-weight: 400;
}
.eventbutton:after {
    displaY: none;

}

.event-details_row p {
    font-weight: 500 !important;
}
.event-details_row .maplink {
    font-size: 210% !important;

    font-weight: 400 !important;
}
.event-details_row small {
    
}

.event-details p {
	text-align: left;
}
.button.button-event{
	display: inline-block;
	height: 50px;
	width: 70%;
	padding: 0 28px;
	margin: 0;
	box-sizing: border-box;
	background-color: #041C2C  !important;
	border-radius: 25px;
	text-align: center;
	text-indent: 0;
	outline: none;
	border: none;
}
.button.button-event a{
	color: white;
	text-decoration: none;
	font-weight: 400;
}



.layer-logofarm {
    margin-top: -30px;
}
.layer-logofarm .inner {
    text-align: center;


}
.layer-logofarm img {
    display: inline-block;
    
    width: 180px;
    max-width: 300px;
    height: 200px;
    object-fit: contain;
    object-positioN: center center;
    padding: auto;
    margin: 15px;
}
.layer-logofarm h2 {
    display: block;
    width: 100%;
    text-align: center;
    font-weight: 500;
    margin-bottom: 20px;
    font-family: suisse, arial, helvetica, sans-serif;
    font-size: 230%;
}

/* flex content logo farm */
.logofarm {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
.logofarm img {
    width: 100%;
    /* caused images to not appear on chrome 
    height: 100%; */
    height: auto;
    object-fit: fill;
    box-sizing: border-box;
    object-position: center center;
    padding: 60px 10px;
    margin: 0 !important;
}
@media screen and (max-width: 1200px) {
    .logofarm { grid-template-columns: 1fr 1fr 1fr; } 
    .logofarm img { padding: 45px 10px; }
}
@media screen and (max-width: 900px) {
    .logofarm { grid-template-columns: 1fr 1fr; } 
    .logofarm img { padding: 30px 10px; }
}
@media screen and (max-width: 600px) {
    .logofarm { grid-template-columns: 1fr; } 
    .logofarm img { padding: 20px 10px; }

}

.layer-search-results-header {
    margin: 60px 0;
}
.layer-search-results-header p {
    font-size: 180%;
    color: #687780;
}
.layer-search-results-header h1 {
    line-height: 1.5;
    font-weight: 500;
    border-bottom: 1px solid #687780;
    padding: 30px 0 10px;
}
.layer-search-results-header h1.nothing-found {
    line-height: 1.5;
    font-weight: 300;
    font-size: 360%;
    border-bottom: none;
    padding: 30px 0 10px;
}
.layer-search-results-header h1.nothing-found a {
    font-size: 70%;
}
.search-tile-wrap {
    width: 100% !important;
}
.search-tile-wrap .button.circle:before {
    /* fix circle not clickable */
    z-index: -1 !important;
}

.search-tile {
    width: 100% !important;
    display: grid;
}
.search-tile .category {
    text-transform: capitalize;
}
#search-types {
    padding: 15px 0;
}
#search-types button {
    border: none;
    outlinE: none;
    padding: 0 !important;
    margin: 0;
    background-color: transparent;

    font-weight: 500;
    margin-right: 20px;
    margin-bottom: 20px;
    font-family: suisse, arial, helvetica, sans-serif;
    font-size: 180%;
    color: #687780 !important;
    cursor: pointer;
}
#search-types button.active {
    color: #041C2C !important;
    text-decoration: underline;
}
.search-isotope,
.lawyers-isotope {
    position: relative;
   overflow: hidden !important; 
   transition: height .4s ease-in-out;

}



.woocommerce-page .woocommerce {
    text-align: center;
    padding: 168px 0;
    padding-top: 0;
}
@media screen and (max-width: 800px) {
    .woocommerce-page .woocommerce {
        padding: 50px 0;
    }
}
.woocommerce-page .woocommerce .woocommerce-order  {
    width: 1024px;
    max-width: 90%;
    margin: 0 auto;
    box-sizing: border-box;
    text-align: left;
    position: relative;

}

.woocommerce-page .woocommerce .woocommerce-notice,
.woocommerce-column__title  {
    font-size: 30px;
    font-weight: 400;
    color: #041C2C;
    margin-bottom: 60px;
}
.woocommerce-page .woocommerce h2
{
    margin-top: 60px;
    font-size: 30px;
}
.woocommerce-page .woocommerce p,
.woocommerce-page .woocommerce li,
.woocommerce-customer-details address {
    font-size: 23px;
    font-weight: 300;
    color: #041C2C;
    padding: 0;
    margin: 10px 0;
    line-height: 1.35;
}
.woocommerce-page .woocommerce thead tr {
width: 100%;
display: block;
}
.woocommerce-page .woocommerce tr {
    width: 100%;

}
.woocommerce-page .woocommerce th,
.woocommerce-page .woocommerce td {
    padding: 12px 0;

    text-align: left;
    box-sizing: border-box;
    font-size: 23px;
    font-weight: 600;

    color: #041C2C;
    margin: 10px 0;
    line-height: 1.35;

    display: block;
    width: 70%;
    float: left;
}
.woocommerce-page .woocommerce th:nth-child(2),
.woocommerce-page .woocommerce td:nth-child(2) {
    text-align: right;
    width: 30%;
}

.woocommerce-page .woocommerce p li,
.woocommerce-page .woocommerce li p,
.woocommerce-page .woocommerce li td,
.woocommerce-page .woocommerce li th,
.woocommerce-page .woocommerce td li,
.woocommerce-page .woocommerce td p {
    font-size: 100%;
}
.woocommerce-page .woocommerce .shop_table {
    width: 100%;
    display: table;
    height: auto;
line-height: 52px !important;
padding: 10px 0;
margin-top: 30px;
box-sizing: border-box;
color: #041C2C !important;
border-radius: 0;
border-top: 3px solid #041C2C;
text-align: center;
text-decoration: none;
text-indent: 0;
font-size: 175% !important;
}
.woocommerce-page .woocommerce .shop_table tr {
    border-top: 1px solid gray;

}
.woocommerce-page .woocommerce .shop_table tfoot tr:last-child {
    border-top: 3px solid #041C2C;
}
.woocommerce-page .woocommerce .shop_table thead {
    display: block;
}
.woocommerce-page .woocommerce .wc-item-meta {
    margin: 30px 0;
}
.lity {
    z-index: 99940 !important;
    background: rgba(0, 0, 0, 0.5) !important;
}

.lity-close {
    z-index: 109940 !important;
    width: 35px;
    height: 35px;
    right: 100px !important;
    top: 100px !important;
    font-size: 50px !important;
}
@media screen and (max-width: 640px) {
    .lity-close {
        right: 20px !important;
        top: 70px !important;
        font-size: 35px !important;
    }
}






/*
#header nav li.menu-item-has-children a:after {
	content: "ˇ";
	font-size: 120%;
	position: absolute;
	top: 9px;
    right: calc(2.2vw - 15px);
}
#header nav li.menu-item-has-children .sub-menu a:after {
	content: none;
}

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

    #header nav li.menu-item-has-children a {
        position: relative;
    }
    #header nav li.menu-item-has-children .showChildren {
        display: block;
        position: absolute;
        top: 50%;
        transform: translatey(-50%);
        right: 0;

        
        width: 44px;
        height: 44px;
        border-radius: 3px;
        color: black;

        background-image: url('img/main-menu-right-arrow.svg');
        background-size: 44px 44px;
        background-repeat: no-repeat;
        background-position: center center;

        z-index: 10000;

    }
    #header nav li.menu-item-has-children .showChildren:hover,
    #menu-main-menu li a:hover  {
        opacity: 0.5 !important;
        cursor: pointer;
    }
    #header nav li.menu-item-has-children .sub-menu {
        display: block;
        box-sizing: border-box;
        box-shadow: none;

        margin: 0;
        padding: 5%;
        Position: fixed;
        top: 0; 
        left: 100vw;
        width: 100vw;
        height: 100vh;
        
        padding-top: 100px;
        transition: left 1s ease-in-out;
        background-color: white !important;
    }
}
*/

@media screen and (max-width: 1500px) and (min-width: 1201px) {
    #header nav li.menu-item-has-children .showChildren {
        right: calc(2.2vw - 20px);
    }
}
@media screen and (min-width: 1200px) {
    #header .sub-menu {
        display: none;
        background: white;
    }
    #header li.menu-item-has-children.accessible-focus .sub-menu {
        display: block;
        color: white;
    }
    #header li.menu-item-has-children.accessible-focus .sub-menu a {
        display: block;
        color: #041C2C;
    }
    #header nav li.menu-item-has-children .showChildren {
        position: absolute;
        top: 50%;
        transform: translatey(-50%);
        right: calc(1.6vw - 20px);
        display: block;
        width: 20px;
        height: 20px;
        background: transparent;

        padding: 0;
        margin: 0;
        
        outline: none;
        border: none;
        border-radius: 3px;
        color: black;

        background-image: url('img/main-menu-carat.svg');
        background-size: 12px 12px;
        background-repeat: no-repeat;
        background-position: center center;

        z-index: 10000;
    }
    #header.opaque nav li.menu-item-has-children .showChildren,
    #header.forceopaque nav li.menu-item-has-children .showChildren,
    #header:hover nav li.menu-item-has-children .showChildren {
        background-image: url('img/main-menu-carat-blue.svg');
    }
}


@media screen and (max-width: 1200px) {
    #header nav li.menu-item-has-children a {
        position: relative;
    }
    #header nav li.menu-item-has-children .showChildren {
        display: block;
        position: absolute;
        top: 50%;
        transform: translatey(-50%);
        right: 0;

        
        width: 44px;
        height: 44px;
        border-radius: 3px;
        color: black;

        background-image: url('img/main-menu-right-arrow.svg');
        background-size: 44px 44px;
        background-repeat: no-repeat;
        background-position: center center;

        z-index: 10000;

    }
    #header nav li.menu-item-has-children .showChildren:hover,
    #menu-main-menu li a:hover  {
        opacity: 0.5 !important;
        cursor: pointer;
    }
    #header nav li.menu-item-has-children .sub-menu {
        display: block;
        box-sizing: border-box;
        box-shadow: none;

        margin: 0;
        padding: 5%;
        Position: fixed;
        top: 0; 
        left: 100vw;
        width: 100vw;
        height: 100vh;
        
        padding-top: 100px;
        transition: left 1s ease-in-out;
        background-color: white !important;
    }

    #payBillButton {
        transform: translate(-50%, -50px) !important;
        color: white !important;
        background: #041C2C !important;
        top: calc(100vh - 50px);
        right: 0;
    }

    .exitSubMenu {
        display: block;
        position: absolute;
        top: 40px;
        left: 5%;

		cursor: pointer;

        
        width: 44px;
        height: 44px;
        border-radius: 3px;
        color: black;

        background-image: url('img/main-menu-left-arrow.svg');
        background-size: 44px 44px;
        background-repeat: no-repeat;
        background-position: center center;

        z-index: 10000;
    }
}


/* hide recaptcha */
body .grecaptcha-badge { visibility: hidden !important; }

.single-product .simple-cart-contents {
clear: both;
outline: 1px solid black;
padding: 20px;
}
.single-product .type-product {
	float: left;
	clear: left;
}
.wc_payment_methods {
	margin: 30px 0 !important;
}
.custom-cart-summary {
	border:3px solid #041C2C;;
  padding: 30px 20px;
  margin: 60px 0;
}
.custom-cart-summary h3 {
	margin-top: 0;
	padding-top: 0;
}
.custom-cart-summary  .custom-cart-items,
.custom-cart-summary  .custom-cart-items li {
	padding-left: 0;
	margin-lefT: 0;
}
.custom-cart-summary  .custom-cart-items li {
	border-top: 1px solid #687780;
	padding: 15px 0;
	margin: 0;
}
.custom-cart-summary  .custom-cart-items {
	padding:	0;
	  /* background:	#f4f7f9; */
	  margin-bottom: 0;
	  list-style-type: none;
}
.shop_table.woocommerce-checkout-review-order-table {
	margin-top: 0;
	padding-top: 0;
}

.wc-pao-addon-description p {
color: #687780;
font-style: normal;

}



@media screen and (max-width: 1200px) and (max-height: 500px) {

	#header nav li.menu-item-has-children .sub-menu,
	#header nav li.menu-item-has-children .sub-menu.show,
	#header nav.opendrawer li.menu-item-has-children .sub-menu.show {
		top: 10px !important;
	}
}

@media screen and (max-width: 1200px) and (max-height: 500px) {
	#header li.menu-item a {
		font-size: 260%;
  		padding: 10px;
	}
	#header nav li.menu-item-has-children .showChildren {
		widtH: 33px;
		height: 33px;
		background-size: 33px 33px;
	}
	#header nav {
		padding: 10px 5%;

	  }
	  #payBillButton {
		display: none !important;
	}
}

@media screen and (max-width: 1200px) and (max-height: 400px) {
	#header li.menu-item a {
		font-size: 220%;
  		padding: 4px;
	}
	#header nav li.menu-item-has-children .showChildren {
		widtH: 25px;
		height: 25px;
		background-size: 25px 25px;
	}
}
@media screen and (max-width: 1200px) and (max-height: 300px) {
	#header li.menu-item a {
		font-size: 162%;
  		padding: 4px;
	}
}


/* -------------------------------------------------------
   Pay My Bill — single column, two steps
   -------------------------------------------------------
   Step 1 is the "add to order" form (.entry-summary), step 2 is the
   checkout (form.checkout). They are already siblings inside
   .type-product, so nothing is restructured — only one is shown at a
   time and .pitblado-steps switches between them.

   .is-stepped is added by the footer script. Without it both panes
   render stacked, so a script failure degrades to the previous layout
   instead of hiding the checkout with no way to reach it. */

.wcopc-product-single #product-1683 {
	/* .type-product is width: 50% globally, which would squeeze the whole
	   flow into the left half of the page. */
	width: 100%;
	display: block;
}

/* Empty in single-product OPC mode — keep it out of the flow */
.wcopc-product-single #product-1683 > #opc-product-selection {
	display: none;
}

/* Only one pane on screen at a time. */
.wcopc-product-single .type-product.is-stepped[data-step="1"] > form.checkout,
.wcopc-product-single .type-product.is-stepped[data-step="2"] > .entry-summary {
	display: none;
}

/* ---- Step nav ---- */

.wcopc-product-single .pitblado-steps {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0 0 50px;
	padding: 0;
	border-bottom: 1px solid #687780;
}

.wcopc-product-single .pitblado-steps .pitblado-steps__item {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 100%;
}

.wcopc-product-single .pitblado-steps__btn {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 44px -1px 0;
	padding: 0 0 18px;
	border: none;
	border-bottom: 3px solid transparent;
	background: none;
	font-family: suisse, arial, helvetica, sans-serif;
	font-size: 17px !important;
	font-weight: 400;
	line-height: 1.2 !important;
	color: #687780;
	text-align: left;
	cursor: pointer;
}

.wcopc-product-single .pitblado-steps__n {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 30px;
	height: 30px;
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: 15px;
}

.wcopc-product-single .pitblado-steps__item.is-current .pitblado-steps__btn {
	color: #041C2C;
	border-bottom-color: #041C2C;
	font-weight: 500;
}

.wcopc-product-single .pitblado-steps__item.is-current .pitblado-steps__n {
	background: #041C2C;
	border-color: #041C2C;
	color: #fff;
}

.wcopc-product-single .pitblado-steps__btn:disabled {
	opacity: 0.4;
	cursor: not-allowed;
}

/* ---- "Your Invoice details" — inverted ---- */

.wcopc-product-single .type-product .custom-cart-summary {
	background: #041C2C;
	border-color: #041C2C;
	padding: 30px;
	margin: 0 0 50px;
}

/* (0,3,0) to beat .woocommerce-page .woocommerce p / li, which pin the
   text to #041C2C — invisible on the navy panel. */
.wcopc-product-single .type-product .custom-cart-summary h3,
.wcopc-product-single .type-product .custom-cart-summary p,
.wcopc-product-single .type-product .custom-cart-summary li,
.wcopc-product-single .type-product .custom-cart-summary strong,
.wcopc-product-single .type-product .custom-cart-summary span {
	color: #fff;
}

.wcopc-product-single .type-product .custom-cart-summary .custom-cart-items li {
	border-top-color: rgba(255, 255, 255, 0.3);
}

/* Vertical rhythm that was tuned for the old side-by-side columns */
.wcopc-product-single #customer_details {
	margin-top: 0;
	margin-bottom: 40px;
}

.wcopc-product-single .shop_table.woocommerce-checkout-review-order-table {
	margin: 40px 0;
}

.wcopc-product-single .wc-pao-addon-heading,
.wcopc-product-single .woocommerce-billing-fields h3 {
	margin-bottom: 40px;
}

@media screen and (max-width: 600px) {
	.wcopc-product-single .pitblado-steps__btn {
		margin-right: 24px;
		font-size: 15px !important;
	}
	.wcopc-product-single .pitblado-steps__n {
		width: 26px;
		height: 26px;
		font-size: 13px;
	}
}

/* -------------------------------------------------------
   Order Pay ("pay for order") — summary + payment
   ------------------------------------------------------- */

/* The stock <ul class="order_details"> is replaced by .order-pay-summary
   (see pitblado_order_pay_summary in functions.php). It is hidden rather than
   unhooked because it is printed inline by WooCommerce's form-pay.php. */
.woocommerce-order-pay ul.order_details {
	display: none;
}

/* .layer-one-column styles every li as a 230% disc bullet, which is why the
   order details rendered as a centred bulleted list. Reset inside our block. */
.woocommerce-order-pay .order-pay-summary,
.woocommerce-order-pay .order-pay-summary * {
	text-align: left;
}

.woocommerce-order-pay .order-pay-summary {
	display: grid;
	grid-template-columns: 1fr;
	gap: 30px;
	margin: 0 0 60px;
}

@media screen and (min-width: 700px) {
	/* Panel spans, the two secondary blocks sit side by side beneath it. */
	.woocommerce-order-pay .order-pay-summary {
		grid-template-columns: 1fr 1fr;
	}
	.woocommerce-order-pay .order-pay-summary__panel {
		grid-column: 1 / -1;
	}
}

.woocommerce-order-pay .order-pay-summary__panel {
	border: 3px solid #041C2C;
	padding: 30px;
}

.woocommerce-order-pay .order-pay-summary h2 {
	margin: 0 0 20px;
	padding-top: 0;
}

.woocommerce-order-pay .order-pay-summary h3 {
	margin: 0 0 12px;
	padding-top: 0;
	font-size: 160%;
}

.woocommerce-order-pay .order-pay-summary__row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 10px 30px;
	padding: 15px 0;
	border-top: 1px solid #687780;
}

.woocommerce-order-pay .order-pay-summary__row:first-of-type {
	border-top: none;
}

.woocommerce-order-pay .order-pay-summary__label {
	color: #687780;
	font-size: 160%;
	font-weight: 300;
}

.woocommerce-order-pay .order-pay-summary__value {
	font-size: 160%;
	font-weight: 500;
	color: #041C2C;
}

/* Add-on values arrive wrapped in <p> from get_formatted_meta_data(). */
.woocommerce-order-pay .order-pay-summary__value p {
	font-size: 100%;
	margin: 0;
}

.woocommerce-order-pay .order-pay-summary__row--total {
	border-top: 3px solid #041C2C;
	margin-top: 8px;
}

.woocommerce-order-pay .order-pay-summary__row--total .order-pay-summary__label,
.woocommerce-order-pay .order-pay-summary__row--total .order-pay-summary__value {
	font-size: 230%;
	font-weight: 600;
	color: #041C2C;
}

.woocommerce-order-pay .order-pay-summary__payer p,
.woocommerce-order-pay .order-pay-summary__status p {
	font-size: 160%;
	font-weight: 300;
	margin: 0 0 12px;
	line-height: 1.5;
}

/* Must outrank `.woocommerce-page .woocommerce p` (0,2,1), which zeroes
   padding on every paragraph inside a WooCommerce wrapper. Matching the
   element as well as the class gets there without !important. */
.woocommerce-order-pay .order-pay-summary p.order-pay-summary__badge {
	display: inline-block;
	border: 1px solid #041C2C;
	padding: 10px 16px;
	font-size: 140%;
	font-weight: 500;
	line-height: 1;
	margin: 0 0 16px;
}

.woocommerce-order-pay .order-pay-summary.is-paid p.order-pay-summary__badge {
	background: #041C2C;
	color: #fff;
}

.woocommerce-order-pay .order-pay-summary p.order-pay-summary__note {
	font-size: 130%;
	color: #687780;
}

.woocommerce-order-pay .order-pay-summary__note a {
	color: #041C2C;
}

/* Payment area. #payment collapses to a few pixels whenever the Moneris
   iframe is not mounted, which reads as a broken page; give it a labelled
   frame so the section still has shape while the gateway loads. */
.woocommerce-order-pay #payment {
	border-top: 1px solid #687780;
	padding-top: 40px;
	min-height: 60px;
}

.woocommerce-order-pay .wc-moneris-error-message {
	display: block;
	font-size: 160%!important;
	font-weight: 300;
	line-height: 1.5;
	color: #041C2C!important;
	max-width: 700px;
}

.woocommerce-order-pay #place_order {
	margin-top: 30px;
}

/* The one-column layer centres this block's contents; the payment area and its
   gateway messaging must read as left-aligned body copy like the rest. */
.woocommerce-order-pay #payment,
.woocommerce-order-pay #payment * {
	text-align: left;
}

/* .layer-one-column .text is a fixed 900px block inside a 1152px .inner, so it
   sat hard against the left gutter with ~316px of dead space on the right.
   Centre the block on the page; the copy inside stays left-aligned.
   Scoped to the order-pay page rather than changing .layer-one-column
   globally, which would shift every one-column layer on the site. */
.woocommerce-order-pay .layer-one-column .text {
	margin-left: auto;
	margin-right: auto;
}

/* -------------------------------------------------------
   Order Pay — 50/50 two-column layout
   -------------------------------------------------------
   Stacked, the Moneris iframe sat below the full invoice summary and
   landed off-screen, so the card form read as missing. Put the summary
   and the payment form side by side, matching the Pay My Bill page.

   .order-pay-summary and form#order_review are already siblings inside
   .woocommerce, so the split is pure CSS — no template change.

   1000px rather than the 900px used on Pay My Bill: this layout has to
   hold the hosted Moneris card form, which gets cramped below ~400px of
   column width. */

@media screen and (min-width: 1000px) {

	/* .text is a fixed 900px block; the split needs the full inner width
	   (1224px at 1440 → two 582px columns, same as Pay My Bill). */
	.woocommerce-order-pay .layer-one-column .text {
		width: 100%;
	}

	.woocommerce-order-pay .layer-one-column .woocommerce {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 60px;
		align-items: start;
	}

	/* Notices carry checkout errors — they must span, not sit in a column. */
	.woocommerce-order-pay .layer-one-column .woocommerce > .woocommerce-notices-wrapper {
		grid-column: 1 / -1;
	}

	.woocommerce-order-pay .layer-one-column .woocommerce > .order-pay-summary {
		grid-column: 1;
		margin-bottom: 0;
	}

	.woocommerce-order-pay .layer-one-column .woocommerce > form#order_review {
		grid-column: 2;
	}

	/* Float clearfix from the shortcode; as a grid item it would claim a cell. */
	.woocommerce-order-pay .layer-one-column .woocommerce > .clear {
		display: none;
	}

	/* The summary is now in a half-width column, so its own payer/status
	   split collapses back to a single stack. */
	.woocommerce-order-pay .order-pay-summary {
		grid-template-columns: 1fr;
	}

	/* The rule above #payment separated it from the summary when stacked.
	   Side by side it would underline an empty column top. */
	.woocommerce-order-pay #payment {
		border-top: none;
		padding-top: 0;
	}
}


/* -------------------------------------------------------
   Pay My Bill — "Confirm" busy state
   -------------------------------------------------------
   Driven by busyStart()/busyEnd() in the footer script. The state is held
   across BOTH add-to-cart round trips (~2.6s measured), not just the first. */

@keyframes pitblado-spin {
	from { transform: translate(-50%, -50%) rotate(0deg); }
	to   { transform: translate(-50%, -50%) rotate(360deg); }
}

/* The button is a fixed 135x50 pill, so there is no room for a spinner
   beside the label — hide the label and centre the spinner in its place.
   Needs !important to beat `color: white !important` on the base rule. */
.single_add_to_cart_button.is-busy {
	position: relative;
	color: transparent !important;
	cursor: progress;
}

.single_add_to_cart_button.is-busy::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 18px;
	box-sizing: border-box;
	border: 2px solid rgba(255, 255, 255, 0.35);
	border-top-color: #fff;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	animation: pitblado-spin 0.7s linear infinite;
}

/* Dim the column being rebuilt, so it reads as stale rather than broken,
   and block interaction with markup that is about to be replaced. */
body.pitblado-cart-busy form.checkout {
	opacity: 0.45;
	pointer-events: none;
	transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
	.single_add_to_cart_button.is-busy::after {
		animation: none;
		border-color: rgba(255, 255, 255, 0.85);
		border-top-color: rgba(255, 255, 255, 0.85);
	}
	body.pitblado-cart-busy form.checkout {
		transition: none;
	}
}

/* Moneris Checkout renders its own pay button inside the hosted iframe and
   submits the order itself, from its payment_complete callback in
   wc-moneris.min.js:

       setCallback( 'payment_complete', function ( e ) { …
           t.getTicketField().val( e.ticket );
           t.form.submit();
       } )

   So the plugin's togglePlaceOrderButton() DISABLES #place_order whenever that
   iframe is the active payment path, leaving a prominent but dead "Pay Now" on
   the page. On this page the button also carries no name/value, so it
   contributes nothing to the POST — it is purely an affordance.

   Hide it only while it is disabled, rather than removing it outright: the same
   button is still the genuine submit control when a returning customer pays
   with a SAVED card, or when another gateway is selected, and the plugin
   re-enables it in exactly those cases. Deferring to the plugin's own
   determination keeps both paths correct. */
.woocommerce-order-pay #place_order[disabled] {
	display: none;
}


/* -------------------------------------------------------
   Order Received ("thank you")
   -------------------------------------------------------
   Presented as a single-column receipt rather than the 50/50 used on
   order-pay: there is nothing to act on here, so a second column would be
   an empty one. Design language matches the order-pay summary panel. */

.woocommerce-order-received .layer-one-column .text {
	margin-left: auto;
	margin-right: auto;
}

/* (0,3,0) to beat .woocommerce-page .woocommerce .woocommerce-order, which
   pins this to 1024px / max-width:90% and re-centres it inside .text. */
.woocommerce-order-received .woocommerce .woocommerce-order {
	width: 100%;
	max-width: none;
	margin: 0;
}

.woocommerce-order-received .woocommerce .woocommerce-notice--success {
	font-size: 300%;
	font-weight: 400;
	line-height: 1.15;
	color: #041C2C;
	margin: 0 0 50px;
}

/* Overview — mirrors .order-pay-summary__panel.
   .layer-one-column styles every li as a 230% disc with a left margin, which
   is what turned this into a bulleted list. */
.woocommerce-order-received ul.order_details {
	border: 3px solid #041C2C;
	padding: 30px;
	margin: 0 0 60px;
	list-style: none;
}

.woocommerce-order-received ul.order_details li {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 10px 30px;
	list-style: none;
	margin: 0;
	padding: 15px 0;
	border-top: 1px solid #687780;
	font-size: 160%;
	font-weight: 300;
	color: #687780;
}

.woocommerce-order-received ul.order_details li:first-child {
	border-top: none;
}

.woocommerce-order-received ul.order_details li strong {
	font-weight: 500;
	color: #041C2C;
}

.woocommerce-order-received ul.order_details li.total {
	border-top: 3px solid #041C2C;
	margin-top: 8px;
	font-size: 230%;
	font-weight: 600;
	color: #041C2C;
}

.woocommerce-order-received .woocommerce h2 {
	font-size: 230%;
	font-weight: 400;
	margin: 0 0 28px;
	padding-top: 0;
}

.woocommerce-order-received .woocommerce-customer-details {
	display: block;
	margin-top: 60px;
}

/* The theme renders shop_table cells as floated blocks (display:block;
   float:left; width:70%), which is what pushed the item meta out of its
   cell. Restore real table layout for this page. */
.woocommerce-order-received table.shop_table {
	display: table;
	width: 100%;
	border-collapse: collapse;
	border-top: 3px solid #041C2C;
	margin: 0 0 60px;
	padding: 0;
	line-height: 1.35 !important;
	text-align: left;
	/* The theme sets font-size:175%!important here and the cell rule adds a
	   further 160% on top, which compounded to 28px cells against the 16px
	   used by the overview panel and billing block. Fixed sizes below keep
	   the whole receipt on one scale. */
	font-size: 16px !important;
}

.woocommerce-order-received .woocommerce table.shop_table thead { display: table-header-group; }
.woocommerce-order-received .woocommerce table.shop_table tr { display: table-row; width: auto; }

.woocommerce-order-received table.shop_table th,
.woocommerce-order-received table.shop_table td {
	display: table-cell;
	float: none;
	width: auto;
	margin: 0;
	padding: 18px 0;
	font-size: 16px;
	font-weight: 400;
	vertical-align: top;
	border-top: 1px solid #687780;
}

.woocommerce-order-received table.shop_table th:last-child,
.woocommerce-order-received table.shop_table td:last-child {
	width: 30%;
	text-align: right;
	white-space: nowrap;
}

.woocommerce-order-received table.shop_table thead th {
	border-top: none;
	font-size: 13px;
	font-weight: 500;
	color: #687780;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.woocommerce-order-received table.shop_table tfoot tr:last-child th,
.woocommerce-order-received table.shop_table tfoot tr:last-child td {
	border-top: 3px solid #041C2C;
	font-size: 23px;
	font-weight: 600;
}

.woocommerce-order-received td.product-name a {
	font-weight: 500;
	text-decoration: none;
}

.woocommerce-order-received .product-quantity {
	color: #687780;
	font-weight: 400;
}

/* Invoice number / amount. Needs (0,3,0) to beat
   `.woocommerce-page .woocommerce .wc-item-meta`. */
.woocommerce-order-received .woocommerce .wc-item-meta {
	list-style: none;
	margin: 14px 0 0;
	padding: 0;
}

.woocommerce-order-received .woocommerce .wc-item-meta li {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	list-style: none;
	margin: 0 0 6px;
	padding: 0;
	border: none;
	font-size: 14px;
	color: #687780;
}

/* !important here only because the theme's own `.shop_table p` carries
   font-size: 23px !important, which no amount of specificity can outrank. It
   was rendering the invoice number larger than its own label. */
.woocommerce-order-received .woocommerce .wc-item-meta li p {
	margin: 0;
	font-size: 14px !important;
	color: #041C2C;
	font-weight: 500;
}

.woocommerce-order-received .wc-item-meta-label {
	font-weight: 400;
	color: #687780;
}

.woocommerce-order-received .woocommerce-customer-details address {
	font-style: normal;
	font-size: 160%;
	line-height: 1.5;
	margin: 0;
}

/* (0,3,0) so the email inherits the address size instead of the generic
   `.woocommerce-page .woocommerce p` 23px, which made it larger than the name
   directly above it. */
.woocommerce-order-received .woocommerce .woocommerce-customer-details--email {
	font-size: 100%;
	margin: 4px 0 0;
}

/* -------------------------------------------------------
   Order Received — verification / login gates
   -------------------------------------------------------
   Two states besides the receipt itself, both of them real:
     * a guest revisiting the link after WooCommerce's 10-minute grace
       period gets form.woocommerce-verify-email
     * an order belonging to a registered customer always gets the login
       form (woocommerce_order_received_verify_known_shoppers is true)
   Both rendered unstyled: centred text, a bare inline input, and a submit
   button inheriting a 41px heading size with no background. */

.woocommerce-order-received .woocommerce {
	text-align: left;
}

.woocommerce-order-received .woocommerce-verify-email,
.woocommerce-order-received .woocommerce-form-login {
	max-width: 520px;
	margin: 0;
}

.woocommerce-order-received .woocommerce-verify-email p,
.woocommerce-order-received .woocommerce-form-login p {
	font-size: 16px;
	line-height: 1.5;
	margin: 0 0 24px;
	text-align: left;
}

.woocommerce-order-received .woocommerce-form label {
	display: block;
	margin-bottom: 8px;
	font-size: 16px;
	font-weight: 500;
	color: #041C2C;
}

.woocommerce-order-received .woocommerce-form .input-text {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 8px;
	padding: 7px 0;
	border: none;
	border-bottom: 1px solid #687780;
	background: transparent;
	outline: none;
	font-family: suisse, arial, helvetica, sans-serif;
	font-size: 20px;
	color: #041C2C;
}

/* Matches the .single_add_to_cart_button / #place_order pill. !important on
   the type metrics because the theme's generic button styling otherwise
   wins — this button was rendering at 41px. */
.woocommerce-order-received .woocommerce-form button.button {
	display: inline-block;
	box-sizing: border-box;
	height: 50px;
	min-width: 135px;
	padding: 0 26px;
	margin: 0;
	border: none;
	border-radius: 25px;
	background-color: #041C2C;
	color: #fff !important;
	text-align: center;
	text-decoration: none;
	text-indent: 0;
	cursor: pointer;
	font-family: suisse, arial, helvetica, sans-serif;
	font-size: 17px !important;
	font-weight: 400;
	line-height: 50px !important;
}

/* -------------------------------------------------------
   Pay My Bill — billing address fields (AVS)
   -------------------------------------------------------
   Country renders as a native <select> on this page: selectWoo never
   initialises here, so it came out at browser defaults (273px wide, 21px
   tall, 13px text) beside 30px text inputs. Match it to the input styling
   in the "woocommerce form" section above. */

.type-product select {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0 0 7px;
	padding: 7px 28px 7px 0 !important;
	border: none !important;
	border-bottom: 1px solid #687780 !important;
	border-radius: 0;
	background-color: transparent;
	outline: none !important;
	font-family: suisse, arial, helvetica, sans-serif;
	font-size: 30px !important;
	line-height: 1.2;
	color: #041C2C;
	cursor: pointer;

	/* Native arrow is suppressed so the control matches the underlined
	   inputs; this chevron replaces it. */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'%3E%3Cpath d='M1 1l7 7 7-7' fill='none' stroke='%23041C2C' stroke-width='2'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 16px 10px;
}

/* .type-product input sets text-transform: capitalize, which is right for a
   name but renders a postal code as "R3c 4h6". Display only, so it does not
   change what gets submitted to the gateway. */
.type-product #billing_postcode {
	text-transform: uppercase;
}

/* -------------------------------------------------------
   WooCommerce pages — native scrolling
   -------------------------------------------------------
   theme_scripts.js skips smooth-scrollbar on .woocommerce-page, because a
   cross-origin payment iframe swallows the wheel events it depends on and
   left the page unscrollable with the pointer over the card form. Without
   smooth-scrollbar initialising, #wrapper's height: 100vh would clip the
   page with nothing able to scroll it, so release it here. */
body.woocommerce-page #wrapper {
	height: auto;
	overflow: visible;
}

/* The [disabled] rule above only covers the saved-card path. In the ordinary
   guest case the plugin never disables #place_order at all: placeOrderButtonHandling()
   wires its logic to a change on [name="wc-moneris-payment-token"], and with no
   saved cards that selector matches nothing, so .change() fires on an empty set.
   The result was "Pay Now" sitting under Moneris's own Checkout button.

   Key off the hosted form actually being mounted instead. If the iframe is
   missing (gateway down, no ticket) the button stays visible as a fallback. */
.woocommerce-order-pay form#order_review:has(iframe[id^="wc-moneris"]) > #place_order {
	display: none;
}


/* The shared pill rule above sizes .single_add_to_cart_button and #place_order
   together at 135px, which left only 8px either side of the 119px "Add an
   Invoice" label. Widen just the add-to-cart button so "Pay Now" is untouched. */
.single_add_to_cart_button {
	width: 200px;
}


/* The Payment Amount add-on field is driven by a visible proxy that carries the
   thousands separators (see functions.php). The real field still holds the bare
   number that is validated and submitted, so it stays in the form and in the
   layout - just out of sight and out of the tab order. */
.wc-pao-addon input.pitblado-price-source {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	border: 0;
	opacity: 0;
	pointer-events: none;
}
